WPS插入LaTeX伪代码

本来一直都是用word写论文,最近需要插入伪代码,网上搜了下可以安装一个插件,叫做 Aurora,具体方法参考百度经验“如何在WPS或word中插入伪代码”

但是上文没有给参考程序,于是博主直接找的 LaTeX 写伪代码的程序,但是并不能运行,出现有错误,后来看了几篇 Aurora 写伪代码的博客,对照着 LaTeX 的程序作了对比明白的之间的差异。

这是一篇可以实现的博客:“如何在word中插入latex公式和伪代码”


先说一下在 LaTeX 上写伪代码,有很多例子,参考博客:“Latex写算法的伪代码排版”,我是在TeXworks编辑的,但是有一点要注意,就是要用 XeLaTeX 命令,用默认的 pdfLaTeX 会出错。


下边举一个例子说明 LaTeX 和 Aurora 的区别,很重要的就是 Aurora 上没有以下这些语句,而 usepackage 要在 properties 里面的 packages 里面添加,而且 begin{algorithm}[h] 中的 h 应该为大写的 H 。

\documentclass[11pt]{ctexart}  
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}  
\usepackage{algorithm}  
\usepackage{algorithmicx}  
\usepackage{algpseudocode}  
\usepackage{amsmath}  

\begin{document}  
 
\end{document}  

我的 packages 里面的内容如下:

\usepackage{amsmath}
\usepackage{amssymb}
% \usepackage{euler}
\providecommand{\abs}[1]{\left\lvert#1\right\rvert}
\providecommand{\norm}[1]{\left\lVert#1\right\rVert}
\usepackage{bbm}
\usepackage{CJK}
\usepackage{listings}
\usepackage{xcolor}
\usepackage{listings}
\usepackage{amsmath,bm,graphicx,multirow,bm,bbm,amssymb,psfrag,algorithm,subfigure,color,mdframed,wasysym,subeqnarray,multicol}

\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath}
\renewcommand{\algorithmicrequire}{\textbf{Input:}}
\renewcommand{\algorithmicensure}{\textbf{Output:}}

仅供参考,反正可以用,没有深入研究过这个东西。

下面是一个例子,先上效果图


LaTeX 中的代码为:

\documentclass[11pt]{ctexart}  
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}  
\usepackage{algorithm}  
\usepackage{algorithmicx}  
\usepackage{algpseudocode}  
\usepackage{amsmath}  

\begin{document}  
\begin{algorithm}[h]  
  \caption{An example for format For \& While Loop in Algorithm}  
  \begin{algorithmic}[1]  
    \For{each $i\in [1,9]$}  
      \State initialize a tree $T_{i}$ with only a leaf (the root);  
      \State $T=T\cup T_{i};$  
    \EndFor  
    \ForAll {$c$ such that $c\in RecentMBatch(E_{n-1})$}  
      \label{code:TrainBase:getc}  
      \State $T=T\cup PosSample(c)$;  
      \label{code:TrainBase:pos}  
    \EndFor;  
    \For{$i=1$; $i<n$; $i++$ }  
      \State $//$ Your source here;  
    \EndFor  
    \For{$i=1$ to $n$}  
      \State $//$ Your source here;  
    \EndFor  
    \State $//$ Reusing recent base classifiers.  
    \label{code:recentStart}  
    \While {$(|E_n| \leq L_1 )and( D \neq \phi)$}  
      \State Selecting the most recent classifier $c_i$ from $D$;  
      \State $D=D-c_i$;  
      \State $E_n=E_n+c_i$;  
    \EndWhile  
    \label{code:recentEnd}  
  \end{algorithmic}  
\end{algorithm}  
\end{document}  

而在 Aurora 中的代码为

\begin{algorithm}[H]  
  \caption{An example for format For \& While Loop in Algorithm}  
  \begin{algorithmic}[1]  
    \For{each $i\in [1,9]$}  
      \State initialize a tree $T_{i}$ with only a leaf (the root);  
      \State $T=T\cup T_{i};$  
    \EndFor  
    \ForAll {$c$ such that $c\in RecentMBatch(E_{n-1})$}  
      \label{code:TrainBase:getc}  
      \State $T=T\cup PosSample(c)$;  
      \label{code:TrainBase:pos}  
    \EndFor;  
    \For{$i=1$; $i<n$; $i++$ }  
      \State $//$ Your source here;  
    \EndFor  
    \For{$i=1$ to $n$}  
      \State $//$ Your source here;  
    \EndFor  
    \State $//$ Reusing recent base classifiers.  
    \label{code:recentStart}  
    \While {$(|E_n| \leq L_1 )and( D \neq \phi)$}  
      \State Selecting the most recent classifier $c_i$ from $D$;  
      \State $D=D-c_i$;  
      \State $E_n=E_n+c_i$;  
    \EndWhile  
    \label{code:recentEnd}  
  \end{algorithmic}  
\end{algorithm}

由于关于 Aurora 的资料太少了,所以不太好使用。知道了它与 LaTeX 的区别后就可以搜索 LaTeX 的语法来在wps实现想要的效果了!

发布了44 篇原创文章 · 获赞 32 · 访问量 12万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览