Curso de Fundamentación

Aprende Fundamentacion de una buena vez

gratis
texto

Técnicas fundamentales de programación. Estructuras, secuencias, ciclos y condicionales

La programación estructurada sigue tres reglas: la secuencia, la iteración y la decisión. Veamos cada una brevemente:

Secuencia

La secuencia en programación estructurada indica que las instrucciones del código se leerán de principio a fin desde la primera línea de código hasta la última, sin excepción.

Iteración

Indica que, según cierta condición, un número de instrucciones podrían repetirse un numero determinado o incluso indeterminado de veces. Las iteraciones son básicamente estructuras ciclicas que nos permitirán repetir una cantidad de veces dterminada o indeterminada unas instrucciones.

Decisión

La decisión o condición en programación estructurada indica que según unas ciertas condiciones dadas se ejecutarán o no un conjunto de instrucciones. Las condiciones permiten dividir nuestro código en "ramas", pudiendo así cambiar el flujo de ejecución, ejecutando algunas instrucciones o no según ciertas condiciones dadas.

En el siguiente algoritmo para limpiar platos se aprecian estas tres características. La indentación o tabulación de las instrucciones indican cuáles son englobadas y cuáles no por sus predecesoras.

mientras haya platos coger plato mientras haya suciedad echar jabón pasar el estropajo por el plato fin mientras si plato es azul ponerlo con los azules fin si fin mientras

En código no estructurado, quedaría algo más extraño, pero igualmente valido.

1 coger plato 2 echar jabón 3 pasar el estropajo por el plato 4 si hay suciedad ir a la instrucción 2 5 si el plato no es azul ir a la instrucción 7 6 ponerlo con los azule 7 si hay más platos ir a la instrucción 1

En programas más grandes, esto es muchísimo más complicado, pero bueno, de todo se puede aprender.

Ahora conocemos la ejecución de los algoritmos. Sin embargo, un programa se compone tanto de algoritmos como de una estructura de datos sobre la cual operar. Así que veamos primero algunas cosas importantes:

Antes de empezar un programar

Diagrama de flujo

Estructura de un programa

En la programación estructurada hay un inicio y un fin perfectamente bien definido de acuerdo al diagrama de flujo que se planteó al concebir la idea del programa, tal como se aprecia en la figura:

Un programa bien estructurado debería tener algún subprograma que capture cualquier error dentro del programa principal o de cualquier subprograma dentro de la aplicación de tal modo que el subprograma que captura los errores genere un registro de datos que describa el error generado y/o en qué subprograma se generó el error para posteriormente corregirlo. Para facilitar la corrección de estos errores se hace uso de los comentarios agregados en el código fuente.

Comentarios

El útil concepto del comentario: son líneas de texto que el compilador o el intérprete no consideran como parte del código, con lo cual no están sujetas a restricciones de sintaxis y sirven para aclarar partes de código en posteriores lecturas y, en general, para anotar cualquier cosa que el programador considere oportuno.

Uno como programador debe tener como prioridad documentar nuestro código fuente ya que al momento de depurar nos ahorrará mucho tiempo de análisis para su corrección o estudio.

Los programadores profesionales tienen la buena costumbre de documentar sus programas con encabezados de texto(encabezados de comentarios) en donde describen la función que va a realizar dicho programa, la fecha de creación, el nombre del autor y en algunos casos las fechas de revisión y el nombre del revisor.

Por lo general algunos programas requieren hacer uso de llamadas a subprogramas (funciones o métodos) dentro de una misma aplicación por lo que cada subprograma debería estar documentado, describiendo la función que realizan cada uno de estos subprogramas dentro de la aplicación.

Estructura de una aplicación

Cualquier programa que se realices debe de llevar una estructura para disminuir la tarea de depuración ya que esta labor lleva más tiempo del estimado.

Si recién comienzas en el mundo de la programación debes tener claro el programa a realizar, documentar cada uno de los pasos que realizas en tu programa, debes de considerar algún metodo de captura de errores, etc.

Ahora veremos cómo estructurar una aplicación para disminuir el tiempo en depuración (ser más eficientes), así como localizar más rápidamente los errores.

Puedes buscar en Internet el concepto "pseudocódigo", que no es más que la escritura de un algoritmo en un lenguaje más cercano al natural, como hablamos a diario. Una forma de represetnar el algoritmo en lenguaje Javascript para repetir el proceso de quitar suciedad añadiendo agua y jabón mientras se frota sería la siguiente:

function frotar(cuanto) { var veces = 0; for (veces = 0, suciedad = 100, veces <= cuanto; veces++) { suciedad = suciedad - (agua + jabón); } }

Como podrás ver es un poco mas riguroso, extraño y algunas cosas no tienen mucho sentido ni son fáciles de entender, veamos ahora cómo sería en pseudocódigo:

función frotar(cuantasveceslohago) variable vecesquellevo = 0 repetir (desde que vecesquellevo = 0 hasta que la suciedad = 0 ó vecesquellevo = cuantasveceslohago; aumentar vecesquellevo de una en una) suciedad = suciedad - (agua + jabón) fin repetir fin función

En primer lugar, es muy recomendable hacer un esquema sobre el papel con toda clase de datos que se vayan a utilizar. Por ejemplo, si queremos hacer un programa para controlar una empresa dedicada al alquiler de coches, podríamos necesitar:

  • Matrícula del coche
  • Marca del coche
  • Modelo del coche
  • Color del coche
  • Estado del coche (si está alquilado, en reparación o disponible)
  • Situación del coche (en qué lugar del garaje o en qué localidad está)
  • Kilometraje del coche
  • Precio por hora del coche

por un lado, y:

  • Nombre del cliente
  • Apellidos del cliente
  • Dirección del cliente
  • DNI del cliente
  • Permiso de conducir del cliente
  • Número de cuenta del cliente

.... etc. por otro.

Muy bien!!, ahora ya sabes cómo programar, habrás entendido la lógica necesaria para crear un programa y seguramente habrás comprendido varios conceptos necesarios para tal fin. Seguramente estarás pesando que hay cosas que aún no terminas de entender, así que para eso esta el siguiente contenido (variables y constantes) para ampliar nuestros conocimientos y seguir aprendiendo a programar. Recuerda que también puedes dejar algún comentario acerca de esta sección.

La última actualización de este artículo fue hace 3 meses

Imagen descriptiva de JuanDMeGon

Juan David Meza González

JuanDMeGon

Magister, Ingeniero, Desarrollador
Web & Instructor

Lo que dicen los estudiantes

Wuau, entendí más en una hora leyendo esto que en todo el semestre con la maestra de informática.

Valeria Sybelle

Visitante del sitio ProgramarYa.com

Muy detallado y claras las explicaciones. Muchas gracias!

Sr. Erick Evencio

Estudiante del curso "API RESTful con Laravel: Guía Definitiva"

El curso es bueno, pero siempre explica demasiado rápido

E-Contact

Estudiante del curso " Aprende Laravel: Crea un Gestor de Fotos con Laravel y PHP"

Demoramos mucho para llegar al desarrollo. Aunque la maquina virtual es necesaria son muchos videos. De ahí en fuera está muy bien

Benjamin Ortiz

Estudiante del curso "API RESTful con Laravel: Guía Definitiva"

Muy buen programador, dominas la POO como en ninguno otro curso, el uso de traits en el proyecto es una delicia.

Sergio Larracoechea

Estudiante del curso "APIs RESTful con Laravel"

Estoy muy contento por haber terminado este curso. Estoy aplicando lo aprendido a mis proyectos y quedo totalmente satisfecho. Un curso 100% recomendable.

Jesus Romero

Estudiante del curso "VPS Seguro con DigitalOcean, Nginx, Letsencrypt Ubuntu 14.04"

Hice muchos ejercicios y aquí logré comprender lo que realmente estaba haciendo. Llegó un momento en que dejó de gustarme la programación, pero con estos textos, recuperé la motivación. Buen trabajo.

Demetrio Cumplido

Visitante del sitio ProgramarYa.com

Muy buena presentación pedagógica, pues nos quita el miedo a la programación. Yo entiendo que ésta tiene como objetivo facilitar el manejo de procesos que serían, demasiado complejos.

Jairo Ibarbo

Visitante del sitio ProgramarYa.com

Muchas gracias me has ayudado a quitar mis dudas de qué es For While, if y switch. Esto me ayudara también a mi tarea.

Len Garcia

Visitante del sitio ProgramarYa.com

Buenas explicaciones y temario interesante.

Leonardo Quimpos

Estudiante del curso "API RESTful con Laravel: Guía Definitiva"

¡De lo mejor! Saludos desde México, está super bien todo, claro y preciso. Lo mejor es que se usen ejemplos. ¡Mejor que algunos profesores que me han tocado!

Rodrigo Enciso

Visitante de PrograarYa.com

Habiendo visto el 100% del curso puedo decir que es muy bueno de acuerdo a lo propuesto, cumple con las expectativas.

Holmans Correa

Estudiante del curso " La Guía del Principiante en Java: Fundamentos y Objetos"

Muy bien explicado. Contenido muy actualizado.

Santiago Zuluaga

Estudiante del curso "API RESTful con Laravel: Guía Definitiva"

Buena didáctica y redacción, espero más contenidos en los siguientes capítulos.

Juan Razo Ruiz

Estudiante del curso " La Guía del Principiante en Java: Fundamentos y Objetos"

Estuve un semestre sin programar y me siento bastante perdida. Espero que este curso me ayude a ponerme de nuevo al corriente.

Fernanda Sanchez

Visitante del sitio ProgramarYa.com

Genial el ambiente que genera la pagina. Simple, rápido, fácil y al alcance de cualquiera.¡Sigan así cracks!

Fran Garassi

Visitante del sitio ProgramarYa.com

¡Listo!

En breve recibirás un mensaje de confirmación. Verifica, por si acaso, la carpeta de correo no deseado.

¡Ups! {{subscriberErrorMessage}}

Si te parece bien, te enviaré, de vez en cuando, mensajes de interés sobre los temas que se tratan en sitio.

Tu dirección de correo electrónico será almacenada con un interés según el artículo en el que te encontrabas.

Además, puedes eliminar tu suscripción en cualquier momento.