[5] Normalmente, el pseudocódigo omite detalles que no son esenciales para la comprensión humana del algoritmo, tales como declaraciones de variables, código específico del sistema y algunas subrutinas.
El lenguaje de programación se complementa, donde sea conveniente, con descripciones detalladas en lenguaje natural, o con notación matemática compacta.
Se utiliza comúnmente en los libros de texto y publicaciones científicas que se documentan varios algoritmos, y también en la planificación del desarrollo de programas informáticos, para esbozar la estructura del programa antes de realizar la efectiva codificación.
El principal objetivo del pseudocódigo es el de representar la solución a un algoritmo de la forma más detallada posible, y a su vez lo más parecida posible al lenguaje que posteriormente se utilizará para la codificación del mismo.
No existe una sintaxis estándar para el pseudocódigo, aunque los cinco IDE's que manejan pseudocódigo en español tengan su sintaxis propia.
Aunque sea parecido, el pseudocódigo no debe confundirse con los programas esqueleto que incluyen código ficticio, que pueden ser compilados sin errores.
Los diagramas de flujo y UML pueden ser considerados como una alternativa gráfica al pseudocódigo, aunque sean más amplios Generalmente se utiliza pseudocódigo en los libros de texto y publicaciones científicas relacionadas con la informática y la computación numérica, para la descripción de algoritmos, de manera que todos los programadores puedan entenderlo, aunque no todos conozcan el mismo lenguaje de programación.
Generalmente, en los libros de texto se adjunta una explicación que acompaña a la introducción y que explica las convenciones particulares en uso.
Un programador que tiene que aplicar un algoritmo específico, sobre todo uno desfamiliarizado, generalmente comienza con una descripción en pseudocódigo, y luego "traduce" esa descripción en el lenguaje de programación meta y lo modifica para que interactúe correctamente con el resto del programa.
Pero en caso de que se quiera ejecutar, se debe llevar a forma tipo, para que no genere mensajes de error.
Las fuentes populares incluyen la sintaxis de Pascal, BASIC, C, C++, Java, Lisp, y ALGOL.
Este es un ejemplo de pseudocódigo (para el juego matemático bizz buzz): Pseudocódigo estilo Fortran: Pseudocódigo estilo Pascal: Pseudocódigo estilo C: La definición de datos se da por supuesta, sobre todo en las variables sencillas, si se emplea formaciones: pilas, colas, vectores o registros, se pueden definir en la cabecera del algoritmo, y naturalmente cuando empleemos el pseudocódigo para definir estructuras de datos, esta parte la desarrollaremos adecuadamente.
Por ejemplo, la instrucción "reemplace el valor de la variable
Las instrucciones se siguen en una secuencia fija que normalmente viene dada por el número de renglón.
Es decir que las instrucciones se ejecutan de arriba hacia abajo.
En general, si Condicióni es verdadera, entonces solo se ejecuta Instruccionesi Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra a continuación.
Existen otras variantes que se derivan a partir de la anterior.
Una estructura de control muy común es el ciclo FOR, la cual se usa cuando se desea iterar un número conocido de veces, empleando como índice una variable que se incrementa (o decrementa): la cual se define como: Por último, también es común usar la estructura de control para cada.
, entonces esta sentencia equivaldría a: Que es lo mismo que: Sin embargo, en la práctica existen mejores formas de implementar esta instrucción dependiendo del problema.
Es importante recalcar que el pseudocódigo no es un lenguaje estandarizado.
Eso significa que diferentes autores podrían dar otras estructuras de control o bien usar estas mismas estructuras, pero con una notación diferente.
Sin embargo, las funciones matemáticas y lógicas toman el significado usual que tienen en matemática y lógica, con las mismas expresiones.
Cualquier instrucción puede ser sustituida por una estructura de control.
El siguiente ejemplo muestra el pseudocódigo del ordenamiento de burbuja, que tiene varias estructuras anidadas.
En general, las estructuras anidadas se muestran indentadas, para hacer más sencilla su identificación a simple vista.
Muchas personas prefieren distinguir entre funciones y procedimientos.
Una función, al igual que una función matemática, recibe uno o varios valores de entrada y regresa una salida mientras que un procedimiento recibe una entrada y no genera alguna salida aunque en algún caso podría devolver resultados a través de sus parámetros de entrada si estos se han declarado por referencia (ver formas de pasar argumentos a una función o procedimiento).
En ambos casos es necesario dejar en claro cuáles son las entradas para el algoritmo, esto se hace comúnmente colocando estos valores entre paréntesis al principio o bien declarándolo explícitamente con un enunciado.
En el caso de las funciones, es necesario colocar una palabra como regresar o devolver para indicar cuál es la salida generada por el algoritmo.
Por ejemplo, el pseudocódigo de una función que permite calcular