¿Cuál es la diferencia entre pseudocódigo y algoritmo?

En terminos muy sencillos, Pseudocódigo Es una narrativa que describe la lógica del algoritmo..

El pseudocódigo no es un código ejecutable, por lo que no es obligatorio utilizar una sintaxis exacta; Sin embargo, es útil seguir un estándar ampliamente utilizado en la industria, que puede ser comprendido fácilmente por el equipo de soluciones..

El lenguaje de modelado unificado (UML) y otras metodologías de modelado de negocios también pueden denominarse ejemplos de pseudocódigo. Aunque no se basa exclusivamente en texto, estas herramientas se utilizan para proporcionar una representación visual de una tarea o proceso ejecutable.

Es una buena práctica documentar claramente un pseudocódigo estructurado y completo para ayudar a traducirlo con precisión y es una parte esencial en la planificación de la solución y la lógica de programación..

Si el pseudocódigo no existe para un algoritmo, entonces se pasa un tiempo innecesario pensando en la solución, o extrayendo alguna idea vaga mientras se encuentra en la etapa de codificación, generalmente con una fecha límite inminente.

Al solucionar problemas de un algoritmo, el pseudocódigo proporciona el pensamiento de fondo sobre cómo se armó y el desarrollador puede o no estar siempre presente para ayudar a resolverlo..

Mira este ejemplo de pseudocódigo de Khan Academy[yo]:

Este es un pseudocódigo basado en texto escrito en una herramienta de desarrollo de software..

Los trazos anteriores // indican que el texto es un comentario (o se comenta en términos de desarrollo) y, por lo tanto, no forma parte del código ejecutable.

El texto en negrita a continuación muestra la sintaxis y las dimensiones del desarrollador a medida que lo interpretan de los requisitos en el pseudocódigo en código ejecutable.

// ¿Cómo podemos convertir nuestras ideas en código??

// Dibuja la cara, un ovalo en el centro.
elipse (ancho /2, altura/2, 200, 300);

// Dibuja los dos ojos, dos óvalos, aproximadamente 2/3 en la cara y 1/5 del tamaño de la cara
elipse (ancho /2 - 40, altura/2 - 50, 40, 40);
elipse (ancho /
2 + 40, altura/2 - 50, 40, 40);

Otro ejemplo a continuación muestra un enfoque más técnico y estructurado para escribir pseudocódigo:

Si el grado del alumno es mayor o igual a 60.

Imprimir “¡Bien hecho!”

más

Imprimir "Lo siento, has fallado"

Cuando se hace referencia a un pseudocódigo estructurado, hay términos estándar que representan la lógica del algoritmo, como SECUENCIA, MIENTRAS, IF-THEN-ELSE y construcciones adicionales que también son útiles incluyen REPETIR HASTA, CASO, y PARA.

Estos términos son entendidos por los desarrolladores y son útiles para crear requisitos sin usar jerga o términos personales que pueden no ser entendidos por otros.

  • SECUENCIA Indica la ejecución de tareas de arriba a abajo de forma secuencial..
  • MIENTRAS es un bucle repetitivo que se ejecuta hasta que se cumple una condición, definida al inicio.
  • IF-THEN-ELSE Es una decisión tomada entre dos condiciones:
Ejemplo

SI Horas trabajadas> Normal Semanas ENTONCES

Mostrar mensaje de horas extraordinarias

MÁS

Mostrar el mensaje normal de la hoja de tiempo

  • REPETIR HASTA es un bucle repetitivo que se ejecuta hasta que se cumple una condición, definida al final,.
Ejemplo

REPETIR

secuencia

Condición HASTA

  • CASO proporciona múltiples decisiones basadas en el valor de una expresión.
  • PARA es un bucle de conteo repetitivo

Tenga en cuenta que para cada tarea o proceso, utilice el FIN/TERMINARA SI (donde se usa IF) al final para indicar que es el punto de terminación o el resultado de salida.

Cuando las construcciones están anidadas una dentro de la otra, deben estar claramente sangradas de sus construcciones principales, por lo que, en otras palabras, todas las declaraciones que muestran una dependencia deben estar sangradas.

Con los verbos, las palabras 'haciendo', utilizan términos como Proceso, Computadora, Restablecer, Incremento, Sumar, Multiplicar, Imprimir, Visualizar, etc..

Ahora veamos los algoritmos y en qué se diferencian de pseudocódigo..

En primer lugar, ¿qué es un algoritmo?

“Informalmente, un algoritmo es cualquier procedimiento computacional bien definido que toma
algún valor, o conjunto de valores, como entrada y produce algún valor, o conjunto de valores, como
salida. Un algoritmo es así una secuencia de pasos computacionales que transforman el
entrada en la salida
.” [ii]

Entonces, en términos más simples, un algoritmo es una lógica de código ejecutable definida por una secuencia de pasos para resolver un problema o completar una tarea.

A diferencia del pseudocódigo, la persona que escribe el algoritmo necesita conocimientos de programación porque es interpretado por la computadora - no es un desarrollador - Ejecutar tareas, manipular, cifrar y extraer datos..

Los algoritmos básicamente ordenan a un programa de computadora que realice una tarea, como se define en la lógica del código. Los errores en cualquier sintaxis de programación evitarán la ejecución exitosa de estas tareas, que es donde se necesita el conocimiento de programación.

Al escribir pseudocódigo en la etapa de planificación, recuerde que el algoritmo debe ser efectivo, enfocado y alcanzar un resultado final; Todos los aspectos de la solución siempre deben ser considerados..

¿Qué hace el algoritmo? Fundamentalmente, se ejecuta mediante un activador, proceso u otro algoritmo y acepta datos como su entrada. Los datos pasan por los pasos de instrucciones y manipulaciones para producir la salida..

Los datos se almacenan en variables y cada variable se nombra para que el algoritmo le asigne los datos durante el proceso de ejecución.

Los algoritmos también se nombran porque pueden incluir referencias y llamadas a otros algoritmos. Puede haber muchas complejidades y aspectos técnicos al desarrollar algoritmos, independientemente del software de codificación que se esté utilizando y, por lo tanto, debe estar bien definido para producir resultados precisos y deseados..

Otro aspecto importante a considerar con el diseño e implementación de un algoritmo es la rapidez con la que se ejecuta. Esto es cada vez más evidente con los usuarios finales que se están acostumbrando a un software más rápido y dispositivos más rápidos..

Por ejemplo, aplicar filtros a los criterios de búsqueda y esperar un tiempo inusualmente largo para que se muestren los resultados puede ser una experiencia insoportable. Los desarrolladores investigarán cómo y cuándo se reciben los datos, ¿se pueden filtrar los datos en un subproceso, etc.?.

Escribir la lógica del código que ralentiza cualquier proceso tiene repercusiones negativas en los usuarios, el desarrollador y la empresa..

En resumen, el pseudocódigo es una narrativa importante para planificar la lógica del código e implementar soluciones sólidas. Estas soluciones se implementan utilizando algoritmos bien estructurados, rápidos y efectivos que producen resultados precisos y deseados..