Historia de México II Parcial 1

lunes, 30 de agosto de 2021

Lógica de Programación

Algoritmo 
 
Un algoritmo, es un conjunto de instrucciones o reglas definidas y no-ambiguas, ordenadas y finitas que permite, típicamente, solucionar un problema, realizar un cómputo, procesar datos y llevar a cabo otras tareas o actividades. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución.


Características de un algoritmo


Todo algoritmo debe cumplir con estas características básicas:

Tienen inicio y fin:
todo algoritmo comienza en un estado inicial con una serie de datos específicos, y culmina con una solución o salida.

Funcionan en secuencia: un algoritmo está compuesto por una serie de pasos ordenados.

Las secuencias son concretas
: cada paso es claro y no deja lugar a la ambigüedad.

Los algoritmos son abstractos:
son modelos o guías para ordenar procesos.

La cantidad de pasos de un algoritmo es finita.


Diagrama de flujo:

Como diagrama de flujo se denomina la representación gráfica de todos los pasos de que consta un proceso. Como tal, es la representación esquemática de la sucesión de operaciones que componen un sistema. En un diagrama de flujo, en este sentido, todas las acciones se encuentran interrelacionadas para conducir a un resultado específico.

                      

 

Pseudocódigo

El pseudocódigo es una forma de expresar los distintos pasos que va a realizar un programa, de la forma más parecida a un lenguaje de programación. Su principal función es la de representar por pasos la solución a un problema o algoritmo, de la forma más detallada posible, utilizando un lenguaje cercano al de programación.

 

Proceso Circulo

    Definir radio,superficie,perimetro como Real;

    Escribir "Introduce el radio de la circunferencia:";

    Leer radio;

    superficie <- PI * radio ^ 2;

    perimetro <- 2 * PI * radio;

    Escribir "La superficie es ",superficie;

    Escribir "El perímetro es ",perimetro;

FinProceso

 

Lenguajes de programación estructurados.

Aunque los requerimientos actuales de software son bastante más complejos de lo que la técnica de programación estructurada es capaz, es necesario por lo menos conocer las bases de los Lenguajes de Programación estructurados, ya que a partir de ellos se evolucionó hasta otros lenguajes y técnicas más completas (orientada a eventos u objetos) que son las que se usan actualmente.

La programación estructurada se define como una técnica para escribir lenguajes de programación que permite sólo el uso de tres tipos de sentencias o estructuras de control:

  • Sentencias secuenciales.
  • Sentencias selectivas (condicionales).
  • Sentencias repetitivas (iteraciones o bucles).

Los lenguajes de programación que se basan en la programación estructurada reciben el nombre de lenguajes de programación estructurados.

La programación estructurada fue de gran éxito por su sencillez a la hora de construir y leer programas. Fue sustituida por la programación modular, que permitía dividir los programas grandes en trozos más pequeños (siguiendo la conocida técnica "divide y vencerás"). A su vez, luego triunfaron los lenguajes orientados a objetos y de ahí a la programación visual (siempre es más sencillo programar gráficamente que en código, ¿no crees? ).

VENTAJAS DE LA PROGRAMACIÓN ESTRUCTURADA

  • Los programas son fáciles de leer, sencillos y rápidos.
  • El mantenimiento de los programas es sencillo.
  • La estructura del programa es sencilla y clara.

INCONVENIENTES

  • Todo el programa se concentra en un único bloque (si se hace demasiado grande es difícil manejarlo).
  • No permite reutilización eficaz de código, ya que todo va "en uno". Es por esto que a la programación estructurada le sustituyó la programación modular, donde los programas se codifican por módulos y bloques, permitiendo mayor funcionalidad.

Ejemplos de lenguajes estructurados: Pascal, C, Fortran.

Lenguajes de programación orientados a objetos.

Después de comprender que la programación estructurada no es útil cuando los programas se hacen muy largos, es necesaria otra técnica de programación que solucione este inconveniente. Nace así la Programación Orientada a Objetos (en adelante, P.O.O.).

Los lenguajes de programación orientados a objetos tratan a los programas no como un conjunto ordenado de instrucciones (tal como sucedía en la programación estructurada) sino como un conjunto de objetos que colaboran entre ellos para realizar acciones.

En la P.O.O. los programas se componen de objetos independientes entre sí que colaboran para realizar acciones.

Los objetos son reutilizables para proyectos futuros.

Su primera desventaja es clara: no es una programación tan intuitiva como la estructurada.

A pesar de eso, alrededor del 55% del software que producen las empresas se hace usando esta técnica.

Razones:

  • El código es reutilizable.
  • Si hay algún error, es más fácil de localizar y depurar en un objeto que en un programa entero.

Características:

  • Los objetos del programa tendrán una serie de atributos que los diferencian unos de otros.
  • Se define clase como una colección de objetos con características similares.
  • Mediante los llamados métodos, los objetos se comunican con otros produciéndose un cambio de estado de los mismos.
  • Los objetos son, pues, como unidades individuales e indivisibles que forman la base de este tipo de programación.

Principales lenguajes orientados a objetos: Ada, C++, VB.NET, Delphi, Java, PowerBuilder, etc.

 

 

 

 Material para Sistemas de Información https://www.mediafire.com/file/h6u2i4jqlig171y/TIC_Modulo3+promo+QUINTO.pdf/file