SlideShare una empresa de Scribd logo
1 de 36
Escritura de Algoritmos




       Elaborado por: Alberto Pérez   1
Escritura de algoritmos
• Recordemos que un algoritmo es un
  método o conjuntos de reglas para
  solucionar problemas.

 – Debe de ser una secuencia definida.
 – Solo se puede ejecutar una acción a la
   vez.



               Elaborado por: Alberto Pérez   2
Escritura de algoritmos
• Ejemplo:

• ¿Qué hacer para
  ver     la nueva
  película de Harry
  Potter?



             Elaborado por: Alberto Pérez   3
Escritura de algoritmos
1.   Ir al cine.
2.   Comprar un boleto.
3.   Ver la película.
4.   Regresar a casa.

El algoritmo consta de 4 acciones
básicas, cada una de ellas debe ser
ejecutada antes de realizar la siguiente.
                Elaborado por: Alberto Pérez   4
Escritura de algoritmos
             • Como podemos ver
               el algoritmo es muy
               sencillo, pero es de
               forma general.

             • Ahora tenemos que
               descomponerlo en
               pasos mas simples
               ( divide y vencerás ).

       Elaborado por: Alberto Pérez     5
Escritura de algoritmos
1. Inicio
2. Ver la cartelera de cines en internet
3. Si no esta la de Harry Potter entonces
  1. Decidir otra actividad
  2. Ir al paso 7
   fin SI no
  SI esta entonces
  1. Ir al cine
  fin si
                Elaborado por: Alberto Pérez   6
Escritura de algoritmos

4. Si hay fila entonces
  1. Formarse en ella
  2. Mientras haya personas adelante hacer
    1. Avanzar en la fila
    Fin mientras
   fin si



                  Elaborado por: Alberto Pérez   7
Escritura de algoritmos
5. Si hay boletos entonces
  1.   Comprar un boleto
  2.   Pasar a la sala que la expone
  3.   Localizar lo(s) asiento(s)
  4.   Mientras proyectan la película hacer
       1. Ver la película
       Fin mientras
  5. Salir de el cine
  si no
   6. refunfuñar
 fin si
                      Elaborado por: Alberto Pérez   8
Escritura de algoritmos
6. Volver a casa
7. Fin

Las palabras en negritas representan key
words de control de flujo y de toma de
decisiones.

Otro aspecto es la IDENTACIÓN o sangría
en la escritura de los algoritmos.

               Elaborado por: Alberto Pérez   9
REPRESENTACIÓN GRÁFICA




       Elaborado por: Alberto Pérez   10
REPRESENTACIÓN GRÁFICA


• Para representar un
  algoritmo      se debe
  utilizar algún método
  que               permita
  independizar       dicho
  algoritmo del lenguaje
  de         programación
           elegido.


                  Elaborado por: Alberto Pérez   11
REPRESENTACIÓN GRÁFICA
                  • Los métodos usuales para
                    representar un algoritmo
                    son:

                       1- Diagrama de flujo.

                     2-Lenguaje             de
                  especificación de algoritmos:
                  pseudocódigo

                      3-Fórmulas
                  El punto 3 no suele ser fácil de
                  plasmar en un algoritmo



       Elaborado por: Alberto Pérez              12
DIAGRAMAS DE FLUJO
• Un diagrama de flujo (flowchart) es
  una    de      las   técnicas   de
  representación mas antigua y a la
  vez más utilizada aunque su empleo
  ha disminuido considerablemente.
  Es un diagrama que utiliza los
  símbolos estándar mostrados a
  continuación

              Elaborado por: Alberto Pérez   13
DIAGRAMAS DE FLUJO
• Un diagrama de flujo (flowchart) es
  una    de      las   técnicas   de
  representación mas antigua y a la
  vez más utilizada aunque su empleo
  ha disminuido considerablemente.
  Es un diagrama que utiliza los
  símbolos estándar mostrados a
  continuación

              Elaborado por: Alberto Pérez   14
DIAGRAMAS DE FLUJO




     Elaborado por: Alberto Pérez   15
DIAGRAMAS DE FLUJO
• Ejemplo




            Elaborado por: Alberto Pérez   16
DIAGRAMAS DE FLUJO
         • Practica
Se desea contar e imprimir el
número de ceros de las
siguiente         secuencia.
5 3 0 2 4 4 0 0 2 3 6 0 2
Elaborar  pseudocódigo     y
diagrama de flujo
         Elaborado por: Alberto Pérez   17
DIAGRAMAS DE FLUJO
                Practica

Dados 3 números, determinar si la
suma de cualquier pareja de ellos
es      igual   al   3    numero.
Si se cumple esta condición escribir
iguales en caso contrario escribir
distintos
             Elaborado por: Alberto Pérez   18
PSEUDOCÓDIGO



  Elaborado por: Alberto Pérez   19
PSEUDOCÓDIGO
• El pseudocódigo es
  un    lenguaje  de
  especificación    o
  descripción     de
  algoritmos.
• Es el paso de
  codificación final,
  esto      es,    la
  traducción a un
  lenguaje        de
  programación.

                Elaborado por: Alberto Pérez   20
PSEUDOCÓDIGO

• Se considera        un
  primer borrador

• No    puede    ser
  ejecutado por una
  computadora




                Elaborado por: Alberto Pérez   21
PSEUDOCÓDIGO

                   • El programador se
                     puede concentrar
                     en la lógica y en las
                     estructuras       de
                     control     y     no
                     preocuparse por las
                     reglas     de     un
                     lenguaje específico


   Elaborado por: Alberto Pérez         22
PSEUDOCÓDIGO
• Un algoritmo debe
  llevar        palabras
  similares a los key
  words como son:
  inicio, fin, parada, le
  er, escribir, si_enton
  ces, si_no, mientras,

  fin_mientras, repetir,
   hasta_ que

                   Elaborado por: Alberto Pérez   23
ESTRUCTURA GENERAL DE
    UN PROGRAMA
  CONCEPTO DE PROGRAMA




        Elaborado por: Alberto Pérez   24
CONCEPTO DE PROGRAMA
• Un programa de computadora es un
  conjunto de instrucciones, ordenes
  dadas a la máquina, que producirán
  la ejecución de una determinada
  tarea
• En esencia, un programa es un medio
  para conseguir un fin


             Elaborado por: Alberto Pérez   25
PARTES CONSTRUCTIVAS DE UN
         PROGRAMA
• El    programador
  debe establecer el
  conjunto         de
  especificaciones
  que debe contener
  el       programa:

*Entrada
*Salida
*Algoritmos de
resolución

                 Elaborado por: Alberto Pérez   26
INSTRUCCIONES Y SUS TIPOS

      DEFINIR ACCIONES




         Elaborado por: Alberto Pérez   27
INSTRUCCIONES Y SUS TIPOS

• Un programa puede
  ser lineal o no lineal.
  Un programa es lineal
  si las instrucciones se
  ejecutan
  secuencialmente, sin
  bifurcaciones
  decisiones            ni
      comparaciones.



                   Elaborado por: Alberto Pérez   28
INSTRUCCIONES Y SUS TIPOS


• En le caso de
  algoritmos       las
  instrucciones     se
  suelen      conocer
  como       acciones.




                Elaborado por: Alberto Pérez   29
TIPOS DE INSTRUCCIONES
• Como hemos dicho antes las
  instrucciones de un algoritmo son
  independientes del lenguaje. La
  clasificación   mas   usual    es:

 1-Instrucciones       de       inicio/fin
 2-Instrucciones de asignación.  , =
 3-Instrucciones        de        lectura
 4-Instrucciones       de       escritura
 5-Instrucciones de bifurcación
              Elaborado por: Alberto Pérez   30
INSTRUCCIONES DE
             ASIGNACION
• Como ya son conocidas por el
  estudiante, reforzaremos su funcionamiento
  con ejemplos:
  a) A  80 la variable A toma el valor de 80
  b) ¿Cuál será el valor que tomará la variable
  C tras la ejecución de las siguientes
  instrucciones?
  A  12
  BA
  CB
• A contiene 12, B contiene 12 y C contiene 12

                 Elaborado por: Alberto Pérez     31
INSTRUCCIONES DE
           ASIGNACION
• c) ¿Cuál es el valor de la variable AUX
  al ejecutarse la instrucción 5?

 1- A  10
 2- B  20
 3- AUX  A
 4- A  B
 5- B  AUX

               Elaborado por: Alberto Pérez   32
INSTRUCCIONES DE
           ASIGNACION
• d) ¿Cuál es el significado N  N+5 si N
  tiene el valor actual de 2
     N  N+5

Se debe pensar en la variable como
una posición de memoria, cuyo
contenido puede variar mediante
instrucciones   de       asignación.


               Elaborado por: Alberto Pérez   33
INSTRUCCIONES DE
         ASIGNACION
       • Ejemplo:
Un buzón de correos,
donde el número de
cartas depositadas en él
variará      según      el
movimiento     diario  del
cartero de introducción
de cartas, o del dueño del
buzón de extracción de
dichas cartas.

             Elaborado por: Alberto Pérez   34
INTRUCCIONES DE LECTURA DE
      DATOS (ENTRADA)
• Esta instrucción lee datos de un dispositivo de
  entrada. ¿Cuál será el significado de las
  instrucciones siguientes?
  leer (NÚMERO, HORAS, TASA)
  La lectura se archivara en la memoria, si los 3
  números se teclean en respuesta a la
  instrucción son 12,34,56 significaría que se han
  asignado a las variables esos valores
  NÚMERO  12
  HORAS  34
  TASA  56

                  Elaborado por: Alberto Pérez   35
INTRUCCIONES DE ESCRITURA
           (SALIDA)
• Estas instrucciones se escriben en un
  dispositivo de salida.
  A  100
  B  200
  C  300

 escribir (A, B, C)

 Se visualizara en pantalla los valores
 dados
               Elaborado por: Alberto Pérez   36

Más contenido relacionado

La actualidad más candente

Traza de un algoritmo
Traza de un algoritmoTraza de un algoritmo
Traza de un algoritmolisbeca
 
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
 
Generaciones de los lenguajes de programación
Generaciones de los lenguajes de programaciónGeneraciones de los lenguajes de programación
Generaciones de los lenguajes de programaciónromeprofe
 
Mapa conceptual de colas..
Mapa conceptual de colas..Mapa conceptual de colas..
Mapa conceptual de colas..Luis Gonzalez
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++compumet sac
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?grachika
 
Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)Andres Rivero
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoJosé Antonio Sandoval Acosta
 
Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencialeidy2220
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigomatteo_ibarguen
 
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...naniily
 
Arreglos o dimensiones en pseint
Arreglos o dimensiones en pseintArreglos o dimensiones en pseint
Arreglos o dimensiones en pseintDon Augusto
 
Cuadro Comparativo de Algoritmos
Cuadro Comparativo de AlgoritmosCuadro Comparativo de Algoritmos
Cuadro Comparativo de AlgoritmosJonathan Higuera
 
Clasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionClasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionShirlid .n
 

La actualidad más candente (20)

Metodo burbuja C++
Metodo burbuja C++Metodo burbuja C++
Metodo burbuja C++
 
Traza de un algoritmo
Traza de un algoritmoTraza de un algoritmo
Traza de un algoritmo
 
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)
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Generaciones de los lenguajes de programación
Generaciones de los lenguajes de programaciónGeneraciones de los lenguajes de programación
Generaciones de los lenguajes de programación
 
Merge sort
Merge sortMerge sort
Merge sort
 
Mapa conceptual de colas..
Mapa conceptual de colas..Mapa conceptual de colas..
Mapa conceptual de colas..
 
Ordenamiento en C++
Ordenamiento en C++Ordenamiento en C++
Ordenamiento en C++
 
Algoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap SortAlgoritmo de ordenamiento: Heap Sort
Algoritmo de ordenamiento: Heap Sort
 
¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?¿Como hacer un pseudocodigo y diagrama de flujo?
¿Como hacer un pseudocodigo y diagrama de flujo?
 
Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)Algoritmos 50 ejemplos (1)
Algoritmos 50 ejemplos (1)
 
Estructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamientoEstructura de Datos - Unidad 5 metodos de ordenamiento
Estructura de Datos - Unidad 5 metodos de ordenamiento
 
Listas de adyacencia
Listas de adyacenciaListas de adyacencia
Listas de adyacencia
 
Algoritmos y pseudocodigo
Algoritmos y pseudocodigoAlgoritmos y pseudocodigo
Algoritmos y pseudocodigo
 
Arquitectura harvard
Arquitectura harvardArquitectura harvard
Arquitectura harvard
 
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...
Diseño de un algoritmo en diagrama de flujo que imprime los números impares h...
 
Arreglos o dimensiones en pseint
Arreglos o dimensiones en pseintArreglos o dimensiones en pseint
Arreglos o dimensiones en pseint
 
Cuadro Comparativo de Algoritmos
Cuadro Comparativo de AlgoritmosCuadro Comparativo de Algoritmos
Cuadro Comparativo de Algoritmos
 
Tipos de algoritmo
Tipos de algoritmoTipos de algoritmo
Tipos de algoritmo
 
Clasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su GeneracionClasificacion Lenguajes de Programacion por Su Generacion
Clasificacion Lenguajes de Programacion por Su Generacion
 

Destacado

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
 
Operaciones basicas
Operaciones basicasOperaciones basicas
Operaciones basicaskenia14
 
Algoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaAlgoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaIsrael Alfonso
 
Estrategia de cálculo
Estrategia de cálculoEstrategia de cálculo
Estrategia de cálculojosealqueria
 
Reglas de la construccion de algoritmo y diagramas
Reglas de la construccion de algoritmo y diagramasReglas de la construccion de algoritmo y diagramas
Reglas de la construccion de algoritmo y diagramasRicardo Rivera Lara
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicoscbertolotti
 
Algoritmo mantenimiento preventivo de hardware
Algoritmo mantenimiento preventivo de hardwareAlgoritmo mantenimiento preventivo de hardware
Algoritmo mantenimiento preventivo de hardwarepctechnical
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosFernando Morales
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltosRoldan El Gato
 
1. resolucion de problemas
1. resolucion de problemas1. resolucion de problemas
1. resolucion de problemasmartell024
 
Guia Programacion 1
Guia Programacion 1Guia Programacion 1
Guia Programacion 1martell024
 
Guia 2nd o & 3er
Guia 2nd o & 3erGuia 2nd o & 3er
Guia 2nd o & 3ermartell024
 
Pseudocódigo
PseudocódigoPseudocódigo
PseudocódigoAlixg19
 
Estructura Condicional
Estructura CondicionalEstructura Condicional
Estructura CondicionalRegina Flores
 
El proceso de programacion
El proceso de programacion El proceso de programacion
El proceso de programacion vanessa_ri
 

Destacado (20)

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
 
Operaciones basicas
Operaciones basicasOperaciones basicas
Operaciones basicas
 
Algoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaAlgoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salida
 
Estrategia de cálculo
Estrategia de cálculoEstrategia de cálculo
Estrategia de cálculo
 
Unidad 1.1 PROGRAMACION I
Unidad 1.1  PROGRAMACION IUnidad 1.1  PROGRAMACION I
Unidad 1.1 PROGRAMACION I
 
Reglas de la construccion de algoritmo y diagramas
Reglas de la construccion de algoritmo y diagramasReglas de la construccion de algoritmo y diagramas
Reglas de la construccion de algoritmo y diagramas
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Algoritmo mantenimiento preventivo de hardware
Algoritmo mantenimiento preventivo de hardwareAlgoritmo mantenimiento preventivo de hardware
Algoritmo mantenimiento preventivo de hardware
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativos
 
Ciclos
CiclosCiclos
Ciclos
 
Contadores y Acumuladores
Contadores y AcumuladoresContadores y Acumuladores
Contadores y Acumuladores
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 
ALGORITMOS
ALGORITMOSALGORITMOS
ALGORITMOS
 
1. resolucion de problemas
1. resolucion de problemas1. resolucion de problemas
1. resolucion de problemas
 
Guia Programacion 1
Guia Programacion 1Guia Programacion 1
Guia Programacion 1
 
Guia 2nd o & 3er
Guia 2nd o & 3erGuia 2nd o & 3er
Guia 2nd o & 3er
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
Diagrama De Flujo
Diagrama De FlujoDiagrama De Flujo
Diagrama De Flujo
 
Estructura Condicional
Estructura CondicionalEstructura Condicional
Estructura Condicional
 
El proceso de programacion
El proceso de programacion El proceso de programacion
El proceso de programacion
 

Similar a Algoritmos para aprender a escribir código

ALGORITMOS bachillerato investigación y información
ALGORITMOS bachillerato investigación y informaciónALGORITMOS bachillerato investigación y información
ALGORITMOS bachillerato investigación y informaciónQuirogaSharon
 
Algoritmos y diagramas de flujos
Algoritmos y diagramas de flujosAlgoritmos y diagramas de flujos
Algoritmos y diagramas de flujosWalter Manero
 
Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaOmar B.
 
Fundamentos de p
Fundamentos de pFundamentos de p
Fundamentos de pcalubens
 
Giseproi curso de programación - sesión 7 - reglas de codificación
Giseproi   curso de programación - sesión 7 - reglas de codificaciónGiseproi   curso de programación - sesión 7 - reglas de codificación
Giseproi curso de programación - sesión 7 - reglas de codificacióngiseproi
 
Trabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodoTrabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodogabrielaalban8
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxanytrix
 
Diagrama flujo
Diagrama flujoDiagrama flujo
Diagrama flujoaromero487
 
Trabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodoTrabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodogabrielaalban8
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoLincoln School
 

Similar a Algoritmos para aprender a escribir código (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
ALGORITMOS bachillerato investigación y información
ALGORITMOS bachillerato investigación y informaciónALGORITMOS bachillerato investigación y información
ALGORITMOS bachillerato investigación y información
 
Algoritmos y diagramas de flujos
Algoritmos y diagramas de flujosAlgoritmos y diagramas de flujos
Algoritmos y diagramas de flujos
 
Desarrollo de lógica algorítmica
Desarrollo de lógica algorítmicaDesarrollo de lógica algorítmica
Desarrollo de lógica algorítmica
 
Presentación1 tuy
Presentación1 tuyPresentación1 tuy
Presentación1 tuy
 
Fundamentos de p
Fundamentos de pFundamentos de p
Fundamentos de p
 
Alg diag
Alg diag Alg diag
Alg diag
 
Rpp
RppRpp
Rpp
 
Alg diag
Alg diagAlg diag
Alg diag
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Alg diag
Alg diagAlg diag
Alg diag
 
Giseproi curso de programación - sesión 7 - reglas de codificación
Giseproi   curso de programación - sesión 7 - reglas de codificaciónGiseproi   curso de programación - sesión 7 - reglas de codificación
Giseproi curso de programación - sesión 7 - reglas de codificación
 
Trabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodoTrabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodo
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
 
Diagrama flujo
Diagrama flujoDiagrama flujo
Diagrama flujo
 
Fundamento de Algoritmos
Fundamento de AlgoritmosFundamento de Algoritmos
Fundamento de Algoritmos
 
Trabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodoTrabajo de tecnologia 3 er periodo
Trabajo de tecnologia 3 er periodo
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
 

Algoritmos para aprender a escribir código

  • 1. Escritura de Algoritmos Elaborado por: Alberto Pérez 1
  • 2. Escritura de algoritmos • Recordemos que un algoritmo es un método o conjuntos de reglas para solucionar problemas. – Debe de ser una secuencia definida. – Solo se puede ejecutar una acción a la vez. Elaborado por: Alberto Pérez 2
  • 3. Escritura de algoritmos • Ejemplo: • ¿Qué hacer para ver la nueva película de Harry Potter? Elaborado por: Alberto Pérez 3
  • 4. Escritura de algoritmos 1. Ir al cine. 2. Comprar un boleto. 3. Ver la película. 4. Regresar a casa. El algoritmo consta de 4 acciones básicas, cada una de ellas debe ser ejecutada antes de realizar la siguiente. Elaborado por: Alberto Pérez 4
  • 5. Escritura de algoritmos • Como podemos ver el algoritmo es muy sencillo, pero es de forma general. • Ahora tenemos que descomponerlo en pasos mas simples ( divide y vencerás ). Elaborado por: Alberto Pérez 5
  • 6. Escritura de algoritmos 1. Inicio 2. Ver la cartelera de cines en internet 3. Si no esta la de Harry Potter entonces 1. Decidir otra actividad 2. Ir al paso 7 fin SI no SI esta entonces 1. Ir al cine fin si Elaborado por: Alberto Pérez 6
  • 7. Escritura de algoritmos 4. Si hay fila entonces 1. Formarse en ella 2. Mientras haya personas adelante hacer 1. Avanzar en la fila Fin mientras fin si Elaborado por: Alberto Pérez 7
  • 8. Escritura de algoritmos 5. Si hay boletos entonces 1. Comprar un boleto 2. Pasar a la sala que la expone 3. Localizar lo(s) asiento(s) 4. Mientras proyectan la película hacer 1. Ver la película Fin mientras 5. Salir de el cine si no 6. refunfuñar fin si Elaborado por: Alberto Pérez 8
  • 9. Escritura de algoritmos 6. Volver a casa 7. Fin Las palabras en negritas representan key words de control de flujo y de toma de decisiones. Otro aspecto es la IDENTACIÓN o sangría en la escritura de los algoritmos. Elaborado por: Alberto Pérez 9
  • 10. REPRESENTACIÓN GRÁFICA Elaborado por: Alberto Pérez 10
  • 11. REPRESENTACIÓN GRÁFICA • Para representar un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del lenguaje de programación elegido. Elaborado por: Alberto Pérez 11
  • 12. REPRESENTACIÓN GRÁFICA • Los métodos usuales para representar un algoritmo son: 1- Diagrama de flujo. 2-Lenguaje de especificación de algoritmos: pseudocódigo 3-Fórmulas El punto 3 no suele ser fácil de plasmar en un algoritmo Elaborado por: Alberto Pérez 12
  • 13. DIAGRAMAS DE FLUJO • Un diagrama de flujo (flowchart) es una de las técnicas de representación mas antigua y a la vez más utilizada aunque su empleo ha disminuido considerablemente. Es un diagrama que utiliza los símbolos estándar mostrados a continuación Elaborado por: Alberto Pérez 13
  • 14. DIAGRAMAS DE FLUJO • Un diagrama de flujo (flowchart) es una de las técnicas de representación mas antigua y a la vez más utilizada aunque su empleo ha disminuido considerablemente. Es un diagrama que utiliza los símbolos estándar mostrados a continuación Elaborado por: Alberto Pérez 14
  • 15. DIAGRAMAS DE FLUJO Elaborado por: Alberto Pérez 15
  • 16. DIAGRAMAS DE FLUJO • Ejemplo Elaborado por: Alberto Pérez 16
  • 17. DIAGRAMAS DE FLUJO • Practica Se desea contar e imprimir el número de ceros de las siguiente secuencia. 5 3 0 2 4 4 0 0 2 3 6 0 2 Elaborar pseudocódigo y diagrama de flujo Elaborado por: Alberto Pérez 17
  • 18. DIAGRAMAS DE FLUJO Practica Dados 3 números, determinar si la suma de cualquier pareja de ellos es igual al 3 numero. Si se cumple esta condición escribir iguales en caso contrario escribir distintos Elaborado por: Alberto Pérez 18
  • 19. PSEUDOCÓDIGO Elaborado por: Alberto Pérez 19
  • 20. PSEUDOCÓDIGO • El pseudocódigo es un lenguaje de especificación o descripción de algoritmos. • Es el paso de codificación final, esto es, la traducción a un lenguaje de programación. Elaborado por: Alberto Pérez 20
  • 21. PSEUDOCÓDIGO • Se considera un primer borrador • No puede ser ejecutado por una computadora Elaborado por: Alberto Pérez 21
  • 22. PSEUDOCÓDIGO • El programador se puede concentrar en la lógica y en las estructuras de control y no preocuparse por las reglas de un lenguaje específico Elaborado por: Alberto Pérez 22
  • 23. PSEUDOCÓDIGO • Un algoritmo debe llevar palabras similares a los key words como son: inicio, fin, parada, le er, escribir, si_enton ces, si_no, mientras, fin_mientras, repetir, hasta_ que Elaborado por: Alberto Pérez 23
  • 24. ESTRUCTURA GENERAL DE UN PROGRAMA CONCEPTO DE PROGRAMA Elaborado por: Alberto Pérez 24
  • 25. CONCEPTO DE PROGRAMA • Un programa de computadora es un conjunto de instrucciones, ordenes dadas a la máquina, que producirán la ejecución de una determinada tarea • En esencia, un programa es un medio para conseguir un fin Elaborado por: Alberto Pérez 25
  • 26. PARTES CONSTRUCTIVAS DE UN PROGRAMA • El programador debe establecer el conjunto de especificaciones que debe contener el programa: *Entrada *Salida *Algoritmos de resolución Elaborado por: Alberto Pérez 26
  • 27. INSTRUCCIONES Y SUS TIPOS DEFINIR ACCIONES Elaborado por: Alberto Pérez 27
  • 28. INSTRUCCIONES Y SUS TIPOS • Un programa puede ser lineal o no lineal. Un programa es lineal si las instrucciones se ejecutan secuencialmente, sin bifurcaciones decisiones ni comparaciones. Elaborado por: Alberto Pérez 28
  • 29. INSTRUCCIONES Y SUS TIPOS • En le caso de algoritmos las instrucciones se suelen conocer como acciones. Elaborado por: Alberto Pérez 29
  • 30. TIPOS DE INSTRUCCIONES • Como hemos dicho antes las instrucciones de un algoritmo son independientes del lenguaje. La clasificación mas usual es: 1-Instrucciones de inicio/fin 2-Instrucciones de asignación.  , = 3-Instrucciones de lectura 4-Instrucciones de escritura 5-Instrucciones de bifurcación Elaborado por: Alberto Pérez 30
  • 31. INSTRUCCIONES DE ASIGNACION • Como ya son conocidas por el estudiante, reforzaremos su funcionamiento con ejemplos: a) A  80 la variable A toma el valor de 80 b) ¿Cuál será el valor que tomará la variable C tras la ejecución de las siguientes instrucciones? A  12 BA CB • A contiene 12, B contiene 12 y C contiene 12 Elaborado por: Alberto Pérez 31
  • 32. INSTRUCCIONES DE ASIGNACION • c) ¿Cuál es el valor de la variable AUX al ejecutarse la instrucción 5? 1- A  10 2- B  20 3- AUX  A 4- A  B 5- B  AUX Elaborado por: Alberto Pérez 32
  • 33. INSTRUCCIONES DE ASIGNACION • d) ¿Cuál es el significado N  N+5 si N tiene el valor actual de 2 N  N+5 Se debe pensar en la variable como una posición de memoria, cuyo contenido puede variar mediante instrucciones de asignación. Elaborado por: Alberto Pérez 33
  • 34. INSTRUCCIONES DE ASIGNACION • Ejemplo: Un buzón de correos, donde el número de cartas depositadas en él variará según el movimiento diario del cartero de introducción de cartas, o del dueño del buzón de extracción de dichas cartas. Elaborado por: Alberto Pérez 34
  • 35. INTRUCCIONES DE LECTURA DE DATOS (ENTRADA) • Esta instrucción lee datos de un dispositivo de entrada. ¿Cuál será el significado de las instrucciones siguientes? leer (NÚMERO, HORAS, TASA) La lectura se archivara en la memoria, si los 3 números se teclean en respuesta a la instrucción son 12,34,56 significaría que se han asignado a las variables esos valores NÚMERO  12 HORAS  34 TASA  56 Elaborado por: Alberto Pérez 35
  • 36. INTRUCCIONES DE ESCRITURA (SALIDA) • Estas instrucciones se escriben en un dispositivo de salida. A  100 B  200 C  300 escribir (A, B, C) Se visualizara en pantalla los valores dados Elaborado por: Alberto Pérez 36