miércoles, 25 de marzo de 2020

LENGUAJES DE PROGRAMACIÓN Y ALGORITMOS 901- 901

¿Qué es un lenguaje de programación?


Un lenguaje de programación es un lenguaje formal (o artificial, es decir, un lenguaje con reglas gramaticales bien definidas) que le proporciona a una persona, en este caso el programador, la capacidad de escribir (o programar) una serie de instrucciones o secuencias de órdenes en forma de algoritmos con el fin de controlar el comportamiento físico y/o lógico de una computadora, de manera que se puedan obtener diversas clases de datos o ejecutar determinadas tareas. A todo este conjunto de órdenes escritas mediante un lenguaje de programación se le denomina programa.

Por tanto, programar viene a ser el proceso de crear un software fiable mediante la escritura, prueba, depuración, compilación o interpretación, y mantenimiento del código fuente de dicho programa informático. Básicamente, este proceso se define aplicando lógicamente los siguientes pasos:

¿Qué tipos de lenguaje de programación existen?

El lenguaje de programación es la base para construir todas las aplicaciones digitales que se utilizan en el día a día y se clasifican en dos tipos principales: lenguaje de bajo nivel y de alto nivel.

Lenguaje de programación de bajo nivel: Son lenguajes totalmente orientados a la máquina.  Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y el software. Además, ejerce un control directo sobre el equipo y su estructura física. Para aplicarlo adecuadamente es necesario que el programador conozca sólidamente el hardware. Éste se subdivide en dos tipos:

  • Lenguaje Máquina: Es el más primitivo de los lenguajes y es una colección de dígitos binarios o bits (0 y 1) que la computadora lee e interpreta y son los únicos idiomas que las computadoras entienden.  Ejemplo: 10110000 01100001 No entendemos muy bien lo que dice ¿verdad? Por eso, el lenguaje ensamblador nos permite entender mejor a qué se refiere éste código.
  • Lenguaje Ensamblador: El lenguaje ensamblador es el primer intento de sustitución del lenguaje de máquina por uno más cercano al utilizado por los humanos. Un programa escrito en éste lenguaje es almacenado como texto (tal como programas de alto nivel) y consiste en una serie de instrucciones que corresponden al flujo de órdenes ejecutables por un microprocesador. Sin embargo, dichas máquinas no comprenden el lenguaje emsamblador, por lo que se debe convertir a lenguaje máquina mediante un programa llamado Ensamblador. Este genera códigos compactos, rápidos y eficientes creados por el programador que tiene el control total de la máquina.

Lenguaje de programación de alto nivel: Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas instrucciones más fáciles de entender. Además, el lenguaje de alto nivel permite escribir códigos mediante idiomas que conocemos (español, inglés, etc.) y luego, para ser ejecutados, se traduce al lenguaje de máquina mediante traductores o compiladores.

  • Java.
  • C
  • Python.
  • C++
  • C#
  • Visual Basic.Net
  • Javascript.
  • PHP
  • Swift
  • SQL.

TALLER 


1. En grupo de 3 personas escoger uno de los lenguajes de programación y exponerlos en media cartelera y en 1/8 de cartulina.




ALGORITMOS



Es un método para resolver un problema. Es una secuencia de pasos, instrucciones o acciones que se deben seguir y ejecutar de manera ordenada para alcanzar un fin deseado. Siempre se ejecutan en un tiempo finito. En un algoritmo siempre debe haber un punto d e inicio y un punto de terminación, estos deben ser únicos y deben ser fácilmente identificables.

¿ Pero que es un problema en algoritmos?

Un problema existe cuando hay :
  • Una situación inicial.
  • Una situación final u objetivo a alcanzar.
  • Restricciones o pautas de métodos.



Como pueden observar es parecido también a el proceso de la información; que tiene una entrada, proceso y salida.

Entrada: Es toda la información que tenemos del problema. Primero nos pide los datos o información que necesitas para resolverlo.

Proceso: las alternativas o acciones que se deben hacer en forma ordenada para llegar a resolver el problema.

Salida: El resultado correcto y sin errores de acuerdo al objetivo.


Pasos o etapas Detalladas que se deben seguir para resolver un problema (sobre todo cuando se habla de problemas complejos o con limitantes o demasiada información)


  1. Identificación del problema: Significa especificar cual es la situación inicial (No es necesario pensar en el proceso para llegar a su solución).Es lo que nos da el problema, con lo que realmente contamos para poder llegar al resultado.
  2. Análisis del problema y planteamiento: En esta etapa vamos a empezar a analizar el problema, y buscar distintas alternativas de solución que consiste en:
  •  Identificar claramente los valores de entrada.
  •  Los valores esperados de salida.
  •  Algunas alternativas de solución. Por lo general la respuesta a un problema puede alcanzarse por distintos medios, así que  es  útil  formularnos  la  mayor  cantidad  de  opciones  posibles,  pues  de  esta  forma aumentan las posibilidades de éxito.  
  •  Los factores a considerar como condiciones la delimitación de la solución.
  •  En este punto se usa los valores iniciales,  es decir los  elementos que tenemos del problema (identificados en el punto 1)
      3. Elección de alternativa: De las diferentes opciones de solución, escogemos aquella que nos               parece más viable y oportuna.
      4. Desarrollo de la Solución (Creación de Algoritmo): En esta fase, a partir de los datos                       relacionados con la alternativa seleccionada, se aplican las operaciones necesarias o el proceso           para solucionar el problema. se hace uso de Variables y constantes a través de identificadores.              muy importantes en un algoritmo.
      5. Evaluación de la solución: Luego  de  haber  sido  desarrollada  la  alternativa  seleccionada,             y haber elegido el tipo de algoritmos se  debe  hacer  una valoración para determinar que el              problema haya sido resuelto eficaz y eficientemente. Esto se hace colocando a los identificadores           los valores necesarios y ver que el resultado sea el buscado y el correcto, siguiendo todas las                   instrucciones o pasos del algoritmo.


Características de un algoritmo

  1. Tiene que se preciso. debe estar correctamente numerado con todos los pasos bien ordenados.
  2. Tiene que estar bien definido. no importa cuantas veces se ejecute siempre va a dar una solución correcta.
  3. Tiene que ser finito. Debe tener un inicio, tener un numero contado de pasos, es decir en algún momento debe terminar.

Clasificación de los algoritmos:

  • Cualitativos: Son aquellos en los que NO se intervienen cálculos numéricos, se describen los pasos utilizando palabras por 
         ejemplo 1 Buscar la definición de una palabra en el diccionario.
         ejemplo 2 Buscar información en Google.
  • Cuantitativos: Son aquellos en los que SI intervienen cálculos numéricos
         ejemplo 1 el cálculo de los parciales de una materia.
         ejemplo 2 Calcular la altura de un edificio


Tipos de lenguajes algorítmicos

  • Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo, en esta encontramos a los diagramas de Flujo, diagramas N-S
  • No Gráficos: representa en forma descriptiva las operaciones que debe realizar un algoritmo, en estas encontramos el texto narrativo, y pseudocódigo.

Representación de los Algoritmos

Puede representarse con diversas técnicas o métodos, y es una serie de reglas y/o símbolos que se utilizan para describir de manera explicita un algoritmo aquí presentamos 3 de las más usadas

Texto Narrativo

Es cuando anotamos la solución de un problema, paso a paso, dándole una secuencia de orden. Es la forma más sencilla, pues está hecha en lenguaje natural.
Algunas recomendaciones para que la redacción de los algoritmos por este método sea de fácil lectura y comprensión son:

  • Utilizar las palabras Inicio y Fin para identificar el punto de partida y el término del algoritmo.
  • Numerar cada paso.
  • Las instrucciones deben ser frases cortas y concretas.
  • Las  instrucciones  inician  con  un  verbo  que  identifica  la  acción  que  se  va  a realizar.

Pseudocódigo

Es  un  “falso  lenguaje”  (pseudo=falso)  mezcla  de  instrucciones de programación  y  de  palabras del   lenguaje   natural.   Es   una herramienta  muy  efectiva  para  el seguimiento  de  la  lógica  de  un algoritmo   y   para   transformarlo con   facilidad   a   un   programa informático.

 

Diagrama de Flujo

Es la representación gráfica de un algoritmo.  Para  su  construcción se  usan  símbolos  estandarizados en   el   que   cada   uno   tiene   un significado. Los  pasos del algoritmo  se  escriben  dentro  del símbolo  correspondiente   y   se unen  por  flechas,  denominadas “líneas  de  flujo”,  que  indican  el orden  en  que  los  pasos  deben  de llevarse a cabo.



Símbolos empleados para elaborar Diagramas de Flujo: Se usan símbolos, hay varios pero nosotros veremos los más usados y básicos para este semestre, y estos son:







Ejemplos de Algoritmos:


  • Realizar el análisis y el planteamiento (Entrada, proceso y salida):
  • Indicar el algoritmo pseudocodigo.
  • Indicar el algoritmo por diagrama de flujo.


1. Calcular la altura de un edificio, donde sabemos cuanto mide cada piso y que todos tienen la misma altura.



2. Saber el promedio de 3 parciales:


3. Calcular el área de un Triángulo:




TALLER 


1. En grupo de 2 personas realizar el análisis y planteamiento, algoritmo pseudocodigo y el algoritmo por diagrama de flujo de las siguientes propuestas por el docente:

  • Área de un circulo.
  • Perímetro de un cuadrado.
  • Cambio de dolares a pesos colombianos.
2. Realizar un diagrama de flujo para las siguientes condiciones:

  • Cocinar un huevo.
  • Suma de dos números y muestre en pantalla.
  • Leer dos números diferentes y nos diga cual es el mayor de los dos números.






No hay comentarios.:

Publicar un comentario