--- layout: post title: a post with pseudo code date: 2024-04-15 00:01:00 description: this is what included pseudo code could look like tags: formatting code categories: sample-posts pseudocode: true --- This is an example post with some pseudo code rendered by [pseudocode](https://github.com/SaswatPadhi/pseudocode.js). The example presented here is the same as the one in the [pseudocode.js](https://saswat.padhi.me/pseudocode.js/) documentation, with only one simple but important change: everytime you would use `$`, you should use `$$` instead. Also, note that the `pseudocode` key in the front matter is set to `true` to enable the rendering of pseudo code. As an example, using this code: ````markdown ```pseudocode % This quicksort algorithm is extracted from Chapter 7, Introduction to Algorithms (3rd edition) \begin{algorithm} \caption{Quicksort} \begin{algorithmic} \PROCEDURE{Quicksort}{$$A, p, r$$} \IF{$$p < r$$} \STATE $$q = $$ \CALL{Partition}{$$A, p, r$$} \STATE \CALL{Quicksort}{$$A, p, q - 1$$} \STATE \CALL{Quicksort}{$$A, q + 1, r$$} \ENDIF \ENDPROCEDURE \PROCEDURE{Partition}{$$A, p, r$$} \STATE $$x = A[r]$$ \STATE $$i = p - 1$$ \FOR{$$j = p$$ \TO $$r - 1$$} \IF{$$A[j] < x$$} \STATE $$i = i + 1$$ \STATE exchange $$A[i]$$ with $$A[j]$$ \ENDIF \STATE exchange $$A[i]$$ with $$A[r]$$ \ENDFOR \ENDPROCEDURE \end{algorithmic} \end{algorithm} ``` ```` Generates: ```pseudocode % This quicksort algorithm is extracted from Chapter 7, Introduction to Algorithms (3rd edition) \begin{algorithm} \caption{Quicksort} \begin{algorithmic} \PROCEDURE{Quicksort}{$$A, p, r$$} \IF{$$p < r$$} \STATE $$q = $$ \CALL{Partition}{$$A, p, r$$} \STATE \CALL{Quicksort}{$$A, p, q - 1$$} \STATE \CALL{Quicksort}{$$A, q + 1, r$$} \ENDIF \ENDPROCEDURE \PROCEDURE{Partition}{$$A, p, r$$} \STATE $$x = A[r]$$ \STATE $$i = p - 1$$ \FOR{$$j = p$$ \TO $$r - 1$$} \IF{$$A[j] < x$$} \STATE $$i = i + 1$$ \STATE exchange $$A[i]$$ with $$A[j]$$ \ENDIF \STATE exchange $$A[i]$$ with $$A[r]$$ \ENDFOR \ENDPROCEDURE \end{algorithmic} \end{algorithm} ```