SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
INFORMÁTICA II
Guía de examen
BLOQUE I:
DISEÑAS Y ELABORAS ALGORITMOS
PARA LA SOLUCIÓN DE PROBLEMAS.
Algoritmo
Definición:
 En matemáticas, ciencias de la computación y
  disciplinas relacionadas, un algoritmo es un
  conjunto prescrito de instrucciones o reglas bien
  definidas, ordenadas y finitas que permite realizar
  una actividad mediante pasos sucesivos que no
  generen dudas a quien deba realizar dicha
  actividad.
Aplicaciones

 En la vida cotidiana, se emplean algoritmos
 frecuentemente para resolver problemas. Algunos
 ejemplos son los manuales de usuario, que
 muestran algoritmos para usar un aparato, o las
 instrucciones que recibe un trabajador por parte de
 su patrón. Algunos ejemplos en matemática son el
 algoritmo de la división para calcular el cociente de
 dos números.
Medios de expresión de un algoritmo
 Los algoritmos pueden ser expresados de muchas
 maneras, incluyendo al lenguaje
 natural, pseudocódigo, diagramas de
 flujo y lenguajes de programación entre otros.
características fundamentales que debe
cumplir todo algoritmo.
 Debe ser preciso. e indicar el orden de realización
  de cada paso.
 Debe ser definido. Si se sigue un algoritmo dos
  veces, se debe obtener el mismo resultado cada
  vez.
 Debe ser finito. Si se sigue un algoritmo, se debe
  terminar en algún momento ; o sea debe tener un
  número finito de pasos.
 La definición de un algoritmo debe describir tres
  partes : Entrada, Proceso y Salida.
Variables y Operaciones
Lenguaje Natural
 Es aquél que describe en español, para nuestro
    caso, los pasos a seguir utilizando un vocabulario
    cotidiano. Se le conoce como lenguaje jerga
    cuando se utilizan términos especializados de una
    determinada ciencia, profesión o grupo.
   Evita la ambigüedad (algo confuso que se puede
    interpretar de varias maneras).
   Son precisos y bien definidos.
   Utilizan términos familiares al sentido común.
   Elimina instrucciones innecesarias.
Ejemplo:
 cambiar una llanta a un coche.
 Inicio.
 Traer gato.
 Levantar el coche con el gato.
 Aflojar tornillos de las llantas.
 Sacar los tornillos de las llantas.
 Quitar la llanta.
 Poner la llanta de repuesto.
 Poner los tornillos.
 Apretar los tornillos.
 Bajar el gato.
 Fin.
Pseudocodigo
 El pseudocódigo (falso lenguaje, el
 prefijo pseudo significa falso) es una descripción de
 alto nivel de un algoritmo que emplea una mezcla de
 lenguaje natural con algunas convenciones sintácticas
 propias de lenguajes de programación, como
 asignaciones, ciclos y condicionales, aunque no está
 regido por ningún estándar.

 El pseudocódigo está pensado para facilitar a las
 personas el entendimiento de un algoritmo, y por lo
 tanto puede omitir detalles irrelevantes que son
 necesarios en una implementación.
 Programadores diferentes suelen utilizar convenciones
  distintas, que pueden estar basadas en la sintaxis de
  lenguajes de programación concretos. Sin embargo, el
  pseudocódigo, en general, es comprensible sin
  necesidad de conocer o utilizar un entorno de
  programación específico, y es a la vez suficientemente
  estructurado para que su implementación se pueda
  hacer directamente a partir de él.
 Ejemplo:
Ejemplo:
Realizar el pseudocódigo de un programa que permita
 calcular el área de un rectángulo. Se debe introducir la
 base y la altura para poder realizar el cálculo..

Programa; área
Entorno: BASE, ALTURA, AREA son número enteros
Algoritmo
   escribir “ Introduzca la base y la altura”
       leer BASE, ALTURA
       calcular AREA = BASE * ALTURA
       escribir “ El área del rectángulo es “ AREA
Fin programa
Lenguajes de programación
 Es un conjunto de palabras, símbolos y reglas
    sintácticas mediante los cuales puede indicarse a la
    computadora los pasos a seguir para resolver un
    problema.
   Los lenguajes de programación pueden clasificarse por
    diversos criterios, siendo el más común su nivel de
    semejanza con el lenguaje natural, y su capacidad de
    manejo de niveles internos de la máquina.
   Los principales tipos de lenguajes utilizados son tres :
   Lenguaje Máquina.
   Lenguaje de bajo Nivel (ensamblador).
   Lenguajes de Alto Nivel.
Diagramas de Flujo
Diagrama de flujo

Definición:
Un diagrama de flujo es una representación
 gráfica de un algoritmo o proceso. Estos diagramas
 utilizan símbolos con significados bien definidos
 que representan los pasos del algoritmo, y
 representan el flujo de ejecución mediante flechas
 que conectan los puntos de inicio y de fin de
 proceso.
 La ventaja de utilizar un algoritmo es que se lo
  puede construir independiente mente de un
  lenguaje de programación, pues al momento de
  llevarlo a código se lo puede hacer en cualquier
  lenguaje.
 Dichos diagramas se construyen utilizando ciertos
  símbolos de uso especial como son rectángulos,
  diamantes, óvalos, y pequeños círculos, estos
  símbolos están conectados entre sí por flechas,
  conocidas como líneas de flujo. A continuación se
  detallarán estos símbolos.
Bloque 1 guia informatica II
Bloque 1 guia informatica II
Reglas de los diagramas de flujo

 Debe de indicar claramente dónde inicia y
    dónde termina el diagrama.
   Cualquier camino del diagrama debe de llevarte
    siempre a la terminal de fin.
   Organizar los símbolos de tal forma que siga
    visualmente el flujo de arriba hacia abajo y de
    izquierda a derecha.
   No usar lenguaje de programación dentro de los
    símbolos.
   Centrar el diagrama en la página.
 Las líneas deben ser verticales u horizontales,
 nunca diagonales.



 No cruzar las líneas de flujo empleando los
 conectores adecuados sin hacer uso excesivo de
 ellos.

 Las líneas de flujo deben de entrar a un símbolo
 pro la parte superior y/o izquierda y salir de él por
 la parte inferior y/o derecha.
Inicio



             Entrada de
Ejemplo        datos

genérico
              Proceso




           Salida de Datos




                Fin
Se utilizan los siguientes operadores:

 OPERADORES RELACIONALES:
 > = Mayor que
 < = Menor que
 " = Mayor o igual
 " = Menor o igual
 < > = Diferente ó desigual
 = Igual
 OPERADORES ARITMETICOS:
 + = Suma
 - = Resta
 * = Multiplicación
 / = División
 ^ = Exponente o potencia
Ejemplo: Reparación de una computadora.
Bloque 1 guia informatica II
Ciclos, bucles
 Un ciclo nos ayuda a repetir determinadas
 instrucciones en un código, existen diferentes tipos
 de ellos y los veremos a continuación.
Ciclo For
 Un ciclo for o para, puede ser utilizado para repetir
 una serie de acciones en cada número entre 1 y 10 o
 seguir con la recopilación de información del
 usuario hasta que éste indique que ha concluido la
 introducción de todos sus datos.
Ejemplo:
diagrama de flujo
en DFD que pide
10 números al
usuario y los
manda a pantalla.
Ciclo While o mientras.
 El ciclo While continúa hasta que una condición se
  cumple o fracasa de ser cumplida.
 Por ejemplo hasta que le des un numero 7 al
  programa se termina .
 Ejemplo de un diagrama de
 flujo en DFD, que utiliza el
 ciclo While para pedirle un
 numero al usuario y no se
 termina hasta que el usuario
 escriba el numero 10.
Arrays, arreglos.
 Un arreglo unidimensional es un tipo de datos
 estructurado que está formado de una colección
 finita y ordenada de datos del mismo tipo. Es la
 estructura natural para modelar listas de
 elementos iguales.
Ejemplo:
 En el dibujo de la derecha
 vemos un arreglo llamado
 “n”, este arreglo n tiene 4
 espacios y para irlo
 recorriendo utilizamos el
 paréntesis entonces
 sabemos que en su
 posición 1 ósea n(1) vale 1,
 en su posición 2 es decir
 n(2) vale 5 y así
 sucesivamente.
DFD
 Permite editar, ejecutar y depurar algoritmos
 representados como diagramas de flujo.
Pantalla del programa.
Símbolos utilizados
Bloque 1 guia informatica II
Nota:
 Recuerden repasar los ejercicios de diagramas de
 flujo porque en el examen vienen ejercicios como
 los que realizamos en clase.

Contenu connexe

Tendances

estructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasestructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasJohan Velandia
 
Diferencia entre pseudocodigo y algoritmo
Diferencia entre pseudocodigo y algoritmoDiferencia entre pseudocodigo y algoritmo
Diferencia entre pseudocodigo y algoritmojohan stoker
 
Razonamiento algoritmico
Razonamiento algoritmicoRazonamiento algoritmico
Razonamiento algoritmicopaty_cursocompu
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuencialesLeany González
 
EJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE CEJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE CGato Rivitas
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)keisy vargas
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
Unidad 04 estructuras básicas y técnicas para representar algoritmos
Unidad 04   estructuras básicas y técnicas para representar algoritmosUnidad 04   estructuras básicas y técnicas para representar algoritmos
Unidad 04 estructuras básicas y técnicas para representar algoritmosLorenzo Alejo
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónIng Cabrera
 
Identificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoIdentificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoAbrirllave
 
Unidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmosUnidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmosGrisell d?z
 
Conceptos básicos de programación y Fundamentos básicos de PSEINT
Conceptos básicos de programación y Fundamentos básicos  de PSEINTConceptos básicos de programación y Fundamentos básicos  de PSEINT
Conceptos básicos de programación y Fundamentos básicos de PSEINTJudith Martos Florez
 
Guia de aprendizaje VS2005-2010
Guia de aprendizaje VS2005-2010Guia de aprendizaje VS2005-2010
Guia de aprendizaje VS2005-2010Duvan Aguilera
 

Tendances (19)

estructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasestructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientras
 
Diferencia entre pseudocodigo y algoritmo
Diferencia entre pseudocodigo y algoritmoDiferencia entre pseudocodigo y algoritmo
Diferencia entre pseudocodigo y algoritmo
 
Razonamiento algoritmico
Razonamiento algoritmicoRazonamiento algoritmico
Razonamiento algoritmico
 
Guía didáctica estructura secuenciales
Guía didáctica estructura secuencialesGuía didáctica estructura secuenciales
Guía didáctica estructura secuenciales
 
Lógica y Algoritmos
Lógica y AlgoritmosLógica y Algoritmos
Lógica y Algoritmos
 
EJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE CEJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE C
 
01 presentación - módulo n°1 • algoritmos
01 presentación - módulo n°1 • algoritmos01 presentación - módulo n°1 • algoritmos
01 presentación - módulo n°1 • algoritmos
 
Conceptos básicos de programación y el entorno gráfico de pseint (1)
Conceptos básicos de programación  y  el entorno gráfico de pseint (1)Conceptos básicos de programación  y  el entorno gráfico de pseint (1)
Conceptos básicos de programación y el entorno gráfico de pseint (1)
 
Clase 2
Clase 2Clase 2
Clase 2
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Anexo1
Anexo1Anexo1
Anexo1
 
Unidad 04 estructuras básicas y técnicas para representar algoritmos
Unidad 04   estructuras básicas y técnicas para representar algoritmosUnidad 04   estructuras básicas y técnicas para representar algoritmos
Unidad 04 estructuras básicas y técnicas para representar algoritmos
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
Identificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigoIdentificadores variables y constates en pseudocódigo
Identificadores variables y constates en pseudocódigo
 
Unidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmosUnidad 1, 2 y_3_algoritmos
Unidad 1, 2 y_3_algoritmos
 
Unidad 1.1 PROGRAMACION I
Unidad 1.1  PROGRAMACION IUnidad 1.1  PROGRAMACION I
Unidad 1.1 PROGRAMACION I
 
Conceptos básicos de programación y Fundamentos básicos de PSEINT
Conceptos básicos de programación y Fundamentos básicos  de PSEINTConceptos básicos de programación y Fundamentos básicos  de PSEINT
Conceptos básicos de programación y Fundamentos básicos de PSEINT
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
Guia de aprendizaje VS2005-2010
Guia de aprendizaje VS2005-2010Guia de aprendizaje VS2005-2010
Guia de aprendizaje VS2005-2010
 

En vedette

Los niños compartirán un calendario de vacunas común
Los niños compartirán un calendario de vacunas comúnLos niños compartirán un calendario de vacunas común
Los niños compartirán un calendario de vacunas comúnEugenio Maria de Hostos
 
Ejercicio 1.b4 desarollo del tema 1
Ejercicio 1.b4 desarollo del tema 1Ejercicio 1.b4 desarollo del tema 1
Ejercicio 1.b4 desarollo del tema 1Daniela Rottweilas
 
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...Ministerio TIC Colombia
 
Fransue san luis lpc upaep
Fransue san luis lpc upaepFransue san luis lpc upaep
Fransue san luis lpc upaepfransue1
 
Epu informática
Epu informáticaEpu informática
Epu informática980601
 
Proyecto Colgados en la Red
Proyecto Colgados en la RedProyecto Colgados en la Red
Proyecto Colgados en la RedMarianihg
 
Impweb sobre blogs_y_wikis (1)
Impweb sobre blogs_y_wikis (1)Impweb sobre blogs_y_wikis (1)
Impweb sobre blogs_y_wikis (1)Tamara Jimenez
 
Mohandas gandhi
Mohandas gandhiMohandas gandhi
Mohandas gandhiGabyKdna1
 
Gobierno le entrega a cuba equipos contra derrames.
Gobierno le entrega a cuba equipos contra derrames.Gobierno le entrega a cuba equipos contra derrames.
Gobierno le entrega a cuba equipos contra derrames.Eugenio Maria de Hostos
 
trabajo robots y rebotica mariana ramirez rojo
trabajo robots y rebotica mariana ramirez rojotrabajo robots y rebotica mariana ramirez rojo
trabajo robots y rebotica mariana ramirez rojomarianaramirezrojo
 
Licuados para bajar de peso rápido
Licuados para bajar de peso rápidoLicuados para bajar de peso rápido
Licuados para bajar de peso rápidoHector Castellares
 

En vedette (20)

Los niños compartirán un calendario de vacunas común
Los niños compartirán un calendario de vacunas comúnLos niños compartirán un calendario de vacunas común
Los niños compartirán un calendario de vacunas común
 
Ejercicio 1.b4 desarollo del tema 1
Ejercicio 1.b4 desarollo del tema 1Ejercicio 1.b4 desarollo del tema 1
Ejercicio 1.b4 desarollo del tema 1
 
La historia de stefani
La historia de stefaniLa historia de stefani
La historia de stefani
 
Menú de datos en excel
Menú de datos en excelMenú de datos en excel
Menú de datos en excel
 
Educación del siglo xxi
Educación del siglo xxiEducación del siglo xxi
Educación del siglo xxi
 
Presentación metanalisis
Presentación metanalisisPresentación metanalisis
Presentación metanalisis
 
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...
Cuál es el modelo más adecuado para la vigilancia y control en el sector de t...
 
Humor Ramoniano
Humor RamonianoHumor Ramoniano
Humor Ramoniano
 
Fransue san luis lpc upaep
Fransue san luis lpc upaepFransue san luis lpc upaep
Fransue san luis lpc upaep
 
Epu informática
Epu informáticaEpu informática
Epu informática
 
Educacion y sociedad
Educacion y sociedadEducacion y sociedad
Educacion y sociedad
 
Proyecto Colgados en la Red
Proyecto Colgados en la RedProyecto Colgados en la Red
Proyecto Colgados en la Red
 
Impweb sobre blogs_y_wikis (1)
Impweb sobre blogs_y_wikis (1)Impweb sobre blogs_y_wikis (1)
Impweb sobre blogs_y_wikis (1)
 
Prueba de hipotesis
Prueba de hipotesisPrueba de hipotesis
Prueba de hipotesis
 
Continuidad
ContinuidadContinuidad
Continuidad
 
Producto final
Producto finalProducto final
Producto final
 
Mohandas gandhi
Mohandas gandhiMohandas gandhi
Mohandas gandhi
 
Gobierno le entrega a cuba equipos contra derrames.
Gobierno le entrega a cuba equipos contra derrames.Gobierno le entrega a cuba equipos contra derrames.
Gobierno le entrega a cuba equipos contra derrames.
 
trabajo robots y rebotica mariana ramirez rojo
trabajo robots y rebotica mariana ramirez rojotrabajo robots y rebotica mariana ramirez rojo
trabajo robots y rebotica mariana ramirez rojo
 
Licuados para bajar de peso rápido
Licuados para bajar de peso rápidoLicuados para bajar de peso rápido
Licuados para bajar de peso rápido
 

Similaire à Bloque 1 guia informatica II

Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmoNombre Apellidos
 
Fundamentos de p
Fundamentos de pFundamentos de p
Fundamentos de pcalubens
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de ProgramaciónKudos S.A.S
 
Modulo de programación 10
Modulo de programación 10Modulo de programación 10
Modulo de programación 10Jose Torres
 
Presentación1
Presentación1Presentación1
Presentación1rervcdhs
 
Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoClariza
 
Diagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfDiagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfjkzrex15
 
Diagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfDiagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfssuser337a5e
 
Trabajo de informatica alejandra blanco
Trabajo de informatica alejandra blancoTrabajo de informatica alejandra blanco
Trabajo de informatica alejandra blancoAleBlanco
 
Presentación1
Presentación1Presentación1
Presentación1rervcdhs
 
Unidad I Algoritmos
Unidad I   AlgoritmosUnidad I   Algoritmos
Unidad I AlgoritmosEnder Melean
 
Unidad I Algoritmos
Unidad  I    AlgoritmosUnidad  I    Algoritmos
Unidad I AlgoritmosEnder Melean
 

Similaire à Bloque 1 guia informatica II (20)

Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmo
 
Fundamentos de p
Fundamentos de pFundamentos de p
Fundamentos de p
 
Actividad 3.4
Actividad 3.4Actividad 3.4
Actividad 3.4
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de Programación
 
INTRODUCCION
INTRODUCCIONINTRODUCCION
INTRODUCCION
 
Modulo de programación 10
Modulo de programación 10Modulo de programación 10
Modulo de programación 10
 
Presentación1
Presentación1Presentación1
Presentación1
 
Flujogramas
FlujogramasFlujogramas
Flujogramas
 
Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujo
 
Diagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfDiagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdf
 
Diagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdfDiagrama de flujo 10-6.pdf
Diagrama de flujo 10-6.pdf
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Trabajo de informatica alejandra blanco
Trabajo de informatica alejandra blancoTrabajo de informatica alejandra blanco
Trabajo de informatica alejandra blanco
 
Programación u1
Programación   u1Programación   u1
Programación u1
 
ALGORITMOS
ALGORITMOSALGORITMOS
ALGORITMOS
 
Presentación1
Presentación1Presentación1
Presentación1
 
Unidad I Algoritmos
Unidad I   AlgoritmosUnidad I   Algoritmos
Unidad I Algoritmos
 
Unidad I Algoritmos
Unidad  I    AlgoritmosUnidad  I    Algoritmos
Unidad I Algoritmos
 
Unidad II
Unidad IIUnidad II
Unidad II
 

Plus de Noe Altamirano

Plus de Noe Altamirano (6)

Webhosting
WebhostingWebhosting
Webhosting
 
Registrarse en un webhosting
Registrarse en un webhosting Registrarse en un webhosting
Registrarse en un webhosting
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica ii
 
Tecnologia
TecnologiaTecnologia
Tecnologia
 
Temas y fondos de diapositivas
Temas y fondos de diapositivasTemas y fondos de diapositivas
Temas y fondos de diapositivas
 
Actividad 2 unidad 4
Actividad 2 unidad 4Actividad 2 unidad 4
Actividad 2 unidad 4
 

Bloque 1 guia informatica II

  • 2. BLOQUE I: DISEÑAS Y ELABORAS ALGORITMOS PARA LA SOLUCIÓN DE PROBLEMAS.
  • 3. Algoritmo Definición:  En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad.
  • 4. Aplicaciones  En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemática son el algoritmo de la división para calcular el cociente de dos números.
  • 5. Medios de expresión de un algoritmo  Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros.
  • 6. características fundamentales que debe cumplir todo algoritmo.  Debe ser preciso. e indicar el orden de realización de cada paso.  Debe ser definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez.  Debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento ; o sea debe tener un número finito de pasos.  La definición de un algoritmo debe describir tres partes : Entrada, Proceso y Salida.
  • 8. Lenguaje Natural  Es aquél que describe en español, para nuestro caso, los pasos a seguir utilizando un vocabulario cotidiano. Se le conoce como lenguaje jerga cuando se utilizan términos especializados de una determinada ciencia, profesión o grupo.  Evita la ambigüedad (algo confuso que se puede interpretar de varias maneras).  Son precisos y bien definidos.  Utilizan términos familiares al sentido común.  Elimina instrucciones innecesarias.
  • 9. Ejemplo:  cambiar una llanta a un coche.  Inicio.  Traer gato.  Levantar el coche con el gato.  Aflojar tornillos de las llantas.  Sacar los tornillos de las llantas.  Quitar la llanta.  Poner la llanta de repuesto.  Poner los tornillos.  Apretar los tornillos.  Bajar el gato.  Fin.
  • 10. Pseudocodigo  El pseudocódigo (falso lenguaje, el prefijo pseudo significa falso) es una descripción de alto nivel de un algoritmo que emplea una mezcla de lenguaje natural con algunas convenciones sintácticas propias de lenguajes de programación, como asignaciones, ciclos y condicionales, aunque no está regido por ningún estándar.  El pseudocódigo está pensado para facilitar a las personas el entendimiento de un algoritmo, y por lo tanto puede omitir detalles irrelevantes que son necesarios en una implementación.
  • 11.  Programadores diferentes suelen utilizar convenciones distintas, que pueden estar basadas en la sintaxis de lenguajes de programación concretos. Sin embargo, el pseudocódigo, en general, es comprensible sin necesidad de conocer o utilizar un entorno de programación específico, y es a la vez suficientemente estructurado para que su implementación se pueda hacer directamente a partir de él.  Ejemplo:
  • 12. Ejemplo: Realizar el pseudocódigo de un programa que permita calcular el área de un rectángulo. Se debe introducir la base y la altura para poder realizar el cálculo.. Programa; área Entorno: BASE, ALTURA, AREA son número enteros Algoritmo escribir “ Introduzca la base y la altura” leer BASE, ALTURA calcular AREA = BASE * ALTURA escribir “ El área del rectángulo es “ AREA Fin programa
  • 13. Lenguajes de programación  Es un conjunto de palabras, símbolos y reglas sintácticas mediante los cuales puede indicarse a la computadora los pasos a seguir para resolver un problema.  Los lenguajes de programación pueden clasificarse por diversos criterios, siendo el más común su nivel de semejanza con el lenguaje natural, y su capacidad de manejo de niveles internos de la máquina.  Los principales tipos de lenguajes utilizados son tres :  Lenguaje Máquina.  Lenguaje de bajo Nivel (ensamblador).  Lenguajes de Alto Nivel.
  • 15. Diagrama de flujo Definición: Un diagrama de flujo es una representación gráfica de un algoritmo o proceso. Estos diagramas utilizan símbolos con significados bien definidos que representan los pasos del algoritmo, y representan el flujo de ejecución mediante flechas que conectan los puntos de inicio y de fin de proceso.
  • 16.  La ventaja de utilizar un algoritmo es que se lo puede construir independiente mente de un lenguaje de programación, pues al momento de llevarlo a código se lo puede hacer en cualquier lenguaje.  Dichos diagramas se construyen utilizando ciertos símbolos de uso especial como son rectángulos, diamantes, óvalos, y pequeños círculos, estos símbolos están conectados entre sí por flechas, conocidas como líneas de flujo. A continuación se detallarán estos símbolos.
  • 19. Reglas de los diagramas de flujo  Debe de indicar claramente dónde inicia y dónde termina el diagrama.  Cualquier camino del diagrama debe de llevarte siempre a la terminal de fin.  Organizar los símbolos de tal forma que siga visualmente el flujo de arriba hacia abajo y de izquierda a derecha.  No usar lenguaje de programación dentro de los símbolos.  Centrar el diagrama en la página.
  • 20.  Las líneas deben ser verticales u horizontales, nunca diagonales.  No cruzar las líneas de flujo empleando los conectores adecuados sin hacer uso excesivo de ellos.  Las líneas de flujo deben de entrar a un símbolo pro la parte superior y/o izquierda y salir de él por la parte inferior y/o derecha.
  • 21. Inicio Entrada de Ejemplo datos genérico Proceso Salida de Datos Fin
  • 22. Se utilizan los siguientes operadores:  OPERADORES RELACIONALES:  > = Mayor que  < = Menor que  " = Mayor o igual  " = Menor o igual  < > = Diferente ó desigual  = Igual
  • 23.  OPERADORES ARITMETICOS:  + = Suma  - = Resta  * = Multiplicación  / = División  ^ = Exponente o potencia
  • 24. Ejemplo: Reparación de una computadora.
  • 26. Ciclos, bucles  Un ciclo nos ayuda a repetir determinadas instrucciones en un código, existen diferentes tipos de ellos y los veremos a continuación.
  • 27. Ciclo For  Un ciclo for o para, puede ser utilizado para repetir una serie de acciones en cada número entre 1 y 10 o seguir con la recopilación de información del usuario hasta que éste indique que ha concluido la introducción de todos sus datos.
  • 28. Ejemplo: diagrama de flujo en DFD que pide 10 números al usuario y los manda a pantalla.
  • 29. Ciclo While o mientras.  El ciclo While continúa hasta que una condición se cumple o fracasa de ser cumplida.  Por ejemplo hasta que le des un numero 7 al programa se termina .
  • 30.  Ejemplo de un diagrama de flujo en DFD, que utiliza el ciclo While para pedirle un numero al usuario y no se termina hasta que el usuario escriba el numero 10.
  • 31. Arrays, arreglos.  Un arreglo unidimensional es un tipo de datos estructurado que está formado de una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales.
  • 32. Ejemplo:  En el dibujo de la derecha vemos un arreglo llamado “n”, este arreglo n tiene 4 espacios y para irlo recorriendo utilizamos el paréntesis entonces sabemos que en su posición 1 ósea n(1) vale 1, en su posición 2 es decir n(2) vale 5 y así sucesivamente.
  • 33. DFD  Permite editar, ejecutar y depurar algoritmos representados como diagramas de flujo.
  • 37. Nota:  Recuerden repasar los ejercicios de diagramas de flujo porque en el examen vienen ejercicios como los que realizamos en clase.