演算法環境中標題下方缺少一行

演算法環境中標題下方缺少一行

在工作和家裡使用兩台不同的計算機,我有時用一台計算機編譯論文,有時用另一台計算機。大多數情況下,這兩個版本是一致的,但對於演算法,我注意到相同的程式碼在兩台機器上給出不同的輸出。特別是,如果我編譯以下程式碼:

\begin{algorithm}[!t]
\caption{The GaussSieve algorithm}
\begin{algorithmic}[1]
\State Initialize an empty list $L$ and an empty stack $S$
\Repeat
    \State Get a vector $\vec{v}$ from the stack (or sample a new one) 
    \For{\textbf{each} $\vec{w} \in L$}
        \State Reduce $\vec{v}$ with $\vec{w}$
        \State Reduce $\vec{w}$ with $\vec{v}$
        ...

然後在一台計算機上我得到:

如果我在另一個上編譯我得到:

換句話說:在一台機器上,輸出有一條水平線(我認為應該有),而在另一台機器上則沒有。在兩台機器上,我都使用algorithmicxalgpseudocode軟體包,以及十幾個其他軟體包。

所以我的問題是:如何讓輸出一致?特別是,如何讓兩台電腦增加水平線?是否有一個簡單的命令可以強制兩台機器在那裡輸出一條水平線?或者我可以強制兩台電腦使用相同版本的軟體包,例如將相同的 .sty 檔案放入某個資料夾中?

另外:第二個範例中標題和第一行之間的間距比第一個範例中的大,這導致兩台機器上的頁碼不同(如第一種情況下,一個部分正好適合頁面,而在其次它沒有)。

先致謝!

答案1

更新軟體包algorithmicxalgorithms沒有幫助,但問題確實是在一台機器上,其中一個軟體包已過時。

在兩台機器上的 MiKTeX 套件管理器中徹底搜尋/比較套件日期後,我發現一個系統上的套件caption日期與另一台系統上的不同。卸載舊版本、同步儲存庫並安裝最新版本或此軟體包(日期為 2013-05-21)解決了這個問題。

相關內容