# Functions with no parameters in algorithmicx

I am trying to write an algorithm using algorithmicxand I need to put a function with no parameters.

I use

\Function {foo}{}


latex produces:

function FOO

However I need:

function FOO()

(The same goes for calling a function (i.e. when using \Call{foo}{})

-

Use

\Function{foo}{\null}


and

\Call{foo}{\null}


This way you're passing these macros a non-empty, non-printing argument. Here is a mock example taken from the algorithmicx documentation:

\documentclass{article}
\usepackage{algorithm}% http://ctan.org/pkg/algorithms
\usepackage{algpseudocode}% http://ctan.org/pkg/algorithmicx
\begin{document}
\begin{algorithm}
\caption{Euclid’s algorithm}\label{euclid}
\begin{algorithmic}[1]
\Function{Euclid}{\null}\Comment{The g.c.d. of a and b}
\State $r\gets a\bmod b$
\While{$r\not=0$}\Comment{We have the answer if r is 0}
\State $a\gets b$
\State $b\gets r$
\State $r\gets a\bmod b$
\EndWhile\label{euclidendwhile}
\State \textbf{return} $b$\Comment{The gcd is b}
\State \Call{foo}{\null}
\EndFunction
\end{algorithmic}
\end{algorithm}
\end{document}

-