SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Estructura general de
  un programa (II)



            Departamento de ingeniería
Enunciados o Instrucciones




               Departamento de ingeniería
Instrucciones y tipos de instrucciones
 Es importante en un programa definir las instrucciones que
   resolverán el problema.


                                         Lineal
                Instrucciones se ejecutan linealmente.

Programa
                                        No lineal
                La secuencia se interrumpe con           “instrucciones   de
                bifurcación ó de decisión”.
 El tipo de instrucciones dependen del tipo de lenguaje, sin
    embargo se tienen instrucciones básicas (Independientes del
    lenguaje).


                                         Departamento de ingeniería
Instrucciones y tipos de instrucciones


                     Inicio / fin
                      Inicio, fin


                       Lectura

Instrucciones        Asignación

                      Escritura

                Bifurcación o decisión




                         Departamento de ingeniería
Enunciado de Lectura.

 El enunciado de lectura se utiliza para
  introducir datos que se van a utilizar en la
  solución de un algoritmo.
 Se almacena en la variable el valor
  ingresado por el usuario.
 Ejemplo:
    ◦ Leer(edad)
    ◦ Si el usuario digita 5, la variable edad
      almacena este valor.
                                  Departamento de ingeniería
Enunciado de Escritura.
   El enunciado de escritura se utiliza para
    presentar los resultados que se esperaban
    obtener al ejecutarse el algoritmo.

   Ejemplo:

    ◦ Escribir(edad)

    ◦ Presenta el valor correspondiente con edad.

                               Departamento de ingeniería
Enunciado de Asignación (I).
•   Es una acción o proceso por el cual se le asigna un
    valor (constante o variable) o el resultado de una
    operación (expresión) a una variable. Los enunciados
    de asignación se utilizan generalmente para cambiar
    el valor a una variable o definirla.

•   Definir una variable consiste en asignarle o darle por
    primera vez un valor; y puede hacerse de dos
    maneras:
    – Por medio de una lectura de datos, o
    – Utilizando un enunciado de asignación.
•   Ejemplo:
    leer(edad)
    edad  25

                                       Departamento de ingeniería
Enunciado de Asignación (II).
Asignación aritmética. Las expresiones en las operaciones
  son aritméticas

Ejm.
         Instrucciones                     Traza

  1) N    3                 1) La variable N toma el valor de 3

  2) N    N+1               2) La variable N toma el valor de 4

  3) S    2                 3) La variable S toma el valor de 2

  4) S    N+5               4) La variable S toma el valor de 9




                                    Departamento de ingeniería
Enunciado de Asignación (III).
Asignación lógica. La expresión que se evalúa en la operación
  de asignación es lógica

Ejm.
         Instrucciones                       Traza

  1) M     31 < 2            1) La variable M toma el valor de falso

  2) P    P o (2 <= 12)      2) La variable P toma el valor de verdadero

  3) Q    MyP                3) La variable S toma el valor de falso




                                     Departamento de ingeniería
Enunciado de Asignación (III).
Asignación de cadena de caracteres. La expresión que se
  evalua es de tipo cadena.

Ejm.
  x      ‘Pedro Perez’

La acción de asignación asigna a la variable tipo cadena x, la
  cadena de caracteres ‘Linterna verde’.

Asignación múltiple. La sintaxis que se utiliza es
<variable>   <variable> <operador> <expresión>



                                    Departamento de ingeniería
Reglas para la construcción de
enunciados de asignación (I).
Toda variable que aparezca al lado derecho de un enunciado
  de asignación debe estar definida.

•   Ejemplo 1:
    edad  25
    contador  0
    contador  contador + edad
      • Las variables edad y contador se definieron correctamente

•   Ejemplo 2:
    contador  0
    contador  contador + edad
      • La variable edad nunca fue definida.




                                               Departamento de ingeniería
Reglas para la construcción de
enunciados de asignación (II).
 En un enunciado de asignación, la variable
 de la izquierda es la única que cambia de
 valor cuando con anterioridad tiene un
 valor asignado.

 Ejemplo :
  edad  25
  contador  0
  contador  contador + edad

                          Departamento de ingeniería
Reglas para la construcción de
enunciados de asignación (III).
Las variables que aparecen en la parte
derecha de un enunciado de asignación
conservan su valor después de ejecutarse
la asignación.

Ejemplo:
 salario  1000
 bono  120
 salario_neto  salario + bono

                            Departamento de ingeniería
Reglas para la construcción de
enunciados de asignación (IV).
Si la variable de la parte izquierda del
enunciado se encuentra también en el lado
derecho, esta variable cambia de valor por
aparecer en la izquierda.

Ejemplo:
  acumulador  0
  edad  25
  acumulador  acumulador + edad

                         Departamento de ingeniería
Enunciado de Decisión.

Los enunciados de decisión se utilizan para
tomar una acción o conocer el estado de
alguna situación especial, que
generalmente toman un valor Verdadero o
Falso.




                          Departamento de ingeniería
Enunciado de Decisión – Si.. Sino
Diagrama de Flujo   SI                         NO
                         <comparación>




  SI <comparación> ENTONCES                             Pseudo Código
        VERDADERO
        Enunciado(s)
  SINO
        FALSO
        Enunciado(s)
  FIN SI
                                         Departamento de ingeniería
Enunciado de Decisión – SI .. Sino
Diagrama de Flujo
                      SI                                  NO
                                    contador > 0



   promedio  acumulador/contador                         promedio  0




 SI contador >0 ENTONCES                                          Pseudo Código
          promedio  acumulador/contador
 SINO
          promedio  0
 FIN SI




                                                   Departamento de ingeniería
Enunciado de Repetición.

 Son los enunciados que permiten repetir
  varias veces un conjunto de enunciados
  según se necesite de acuerdo a una
  condición.
 Se les conoce también como ciclos.




                         Departamento de ingeniería
Enunciado de Repetición - Mientras
Diagrama de Flujo
                    SI                         NO
                         <comparación>




  MIENTRAS <comparación> HACER                          Pseudo Código
         VERDADERO
         Enunciado(s) a repetir
  FIN MIENTRAS
  FALSO
  Enunciado(s)
                                         Departamento de ingeniería
Enunciado de Repetición - Mientras
Diagrama de Flujo
               SI                contador < numero
                                                                   NO


    contador  contador + 1

                                                        promedio  acumulador/contador

          Leer(edad)

                                                              Escribir (promedio)

acumulador  acumulador + edad
                                                                      Fin


  MIENTRAS contador < numero HACER                                    Pseudo Código
            contador  contador +1
            leer(edad)
            acumulador  acumulador + edad
  FIN MIENTRAS
  promedio  acumulador/contador                     Departamento de ingeniería
  escribir(promedio)
Enunciado de Repetición – Haga .. Mientras
Diagrama de Flujo


                         SI
                                                      NO
                              <comparación>




  HAGA                                                       Pseudo Código
         VERDADERO
         Enunciado(s) a repetir
  MIENTRAS <comparación>
  FALSO
  Enunciado(s)
                                              Departamento de ingeniería
Enunciado de Repetición – Haga .. Mientras
Diagrama de Flujo


                Leer               SI
               (Edad)                              NO
                                                            Promedio 
                                        Edad > 0
                                                        acumulador/contador

         contador  contador + 1
       Acumulador  acumulador +
                  edad
                                                        Escriba(promedio)



  HAGA                                              Pseudo Código
       leer (edad)
       contador  contador + 1
       Acumulador  acumulador + edad
  MIENTRAS edad > 0
  promedio  acumulador/contador
  Escriba (promedio)                  Departamento de ingeniería
Ejemplo algoritmo para “sumar dos
              números”


Entrada:
Dos números (num1, num2)
Salida:
Resultado de la suma de los dos números.
Proceso:
Se reciben los dos números, luego en una variable
num_suma se el asigna el resultado de la suma de
los números. Se imprime el resultado.
Ejemplos de diagramas de flujo
                   Inicio


            Num_suma        0



              Leer num1



             Leer num2



        Num_suma       num1+ num2



                Escribir
              num_suma


                    Fin

                                    Departamento de ingeniería
Actividad



En un diagrama de flujo, representar un
algoritmo para dividir dos números. Si el
segundo número que se recibe es “0”, se
debe presentar un mensaje.
Pseudocódigo
Pseudocódigo (I)
Es muy importante la indentación (sangría en el margen
izquierdo) de las diferentes líneas del algoritmo.

Elementos básicos

◦Inicio. Se coloca al empezar el pseudocódigo
◦Fin. Se coloca al finalizar el pseudocócigo
◦//. Se utiliza para colocar comentarios.
      Se utiliza para realizar una asignación. Ejemplo:
      num_suma           num1 + num2
 Leer (y): Se utiliza para solicitar información y
Pseudocódigo (II)
Escribir (y): Se utiliza para solicitar escribir un dato y.

Escribir(‘mensaje’): Se utiliza para escribir la palabra
        mensaje.


                                  Si sentencia entonces
  Si sentencia
                                     instrucciones 1
               entonces
                                  Si_no
      instrucciones
                                     instrucciones 2
  fin si
                                  fin si
Pseudocódigo (III)
Si sentencia1 entonces
   instrucciones1
sino si sentencia2 entonces
         instrucciones 2
      sino si sentencia3 entonces
               instrucciones3
            sino
               instrucciones4
             fin si
     fin si
fin si
mientras sentencia haga
    instrucciones
fin mientras
Ejemplo de pseudocódigo
Escribir en pseudocódigo un algoritmo que pida el nombre de
una persona e imprima en pantalla el nombre ingresado.

Var
      cadena: nombre;

inicio
     Escribir (‘Ingrese su nombre’)
     Leer (nombre) //En nombre se guardará la información   que se ingrese
     Escribir (‘El nombre ingresado es:’, nombre)
fin
Actividad en Clase (I)
1. Escribir en pseudocódigo un algoritmo para
   multiplicar dos números.

2. Escribir en pseudocódigo un algoritmo para dividir
   dos números.

3. Escribir un algoritmo que determine si un número
   es o no par. En caso de ser par debe presentar un
   mensaje “El número X es par” ó “El número X es
   impar”.
Actividad en Clase
Escribir un algoritmo que: «Dados tres números determina si la
suma de dos de ellos es igual al otro número. En caso de que
sean iguales escribir «iguales», en caso de ser desiguales
escribir «desiguales».

Entradas: tres números num1,num2,num3
Salidas: mensaje “iguales” ó “desiguales”.
Proceso:    Se solicitan los números al usuario
            Se comparan las tres posibles comparaciones de
            números
            Se muestra el resultado respectivo.
Algoritmo comparar_iguales
                                    Solución I
Var
       entero: num1,num2,num3
Inicio
       Escribir(‘Ingrese primer número’)
       leer(num1)
       Escribir(‘Ingrese segundo número’)
       leer(num2)
       Escribir(‘Ingrese tercer número’)
       leer(num3)
       si(num1+num2=num3)entonces
                   escribir(‘iguales’)
       sino
                   si(num1+num3=num2)entonces
                               escribir(‘iguales’)
                   sino
                               si(num2+num3=num2)entonces
                                           escribir(‘iguales’)
                               sino
                                           escribir(‘desiguales’)
                               fin_si
                   fin_si
       fin_si
Fin
Solución II
Algoritmo comparar_iguales
Var
     entero: num1,num2,num3
Inicio
     Escribir(‘Ingrese primer número’)
     leer(num1)
     Escribir(‘Ingrese segundo número’)
     leer(num2)
     Escribir(‘Ingrese tercer número’)
     leer(num3)
     si((num1+num2=num3) ó (num1+num3=num2) ó (num2+num3=num1 ó ) )entonces
              escribir(‘iguales’)
     sino
              escribir(‘desiguales’)
     fin_si
Fin
Actividad en Clase
Escriba un algoritmo que pida a un profesor una nota.
Dependiendo de la nota se debe realizar lo siguiente:
  Si la nota está entre 0y 2.9 presente un mensaje: “perdió la
   materia”.
  Si la nota está entre 3 y 5 presente un mensaje: “ganó la materia”.
   Si la nota está entre 4.5 y 5 presentar también un mensaje:
   “excelente nota”.

Entradas: nota del estudiante
Salida: mensaje respectivo
Proceso: Se solicita la nota del estudiante.
          Se valida el rango en la cual se
          encuentra la nota.
          Se presenta el mensaje respectivo.
Solución
Algoritmo validar_nota
Var
       real: nota
Inicio
       Escribir(‘Ingrese la nota del estudiante’)
       leer(nota)

      si ((nota>=0) y (nota<2.9)) entonces
               escribir(‘perdió la materia’)
      sino
               si((nota>=3) y (nota<=5)) entonces
                        escribir(‘ganó la materia’)
                         si ((nota>=4.5) y (nota<=5)) entonces
                                  escribir(‘excelente nota’)
                        fin_si
               sino
                        escribir(‘La nota no está en el rango de 0 a 5’)
               fin_si
      fin_si
Fin
Gracias!!!




       Departamento de ingeniería

Weitere ähnliche Inhalte

Was ist angesagt?

Características%20 de%20los%20programas[1]
Características%20 de%20los%20programas[1]Características%20 de%20los%20programas[1]
Características%20 de%20los%20programas[1]yariluz_gonzalez
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programaciónlaurapolindara1
 
Algoritmica
AlgoritmicaAlgoritmica
Algoritmicasariz6
 
Declaraciones, variables y constantes(2 2)
Declaraciones, variables y constantes(2 2)Declaraciones, variables y constantes(2 2)
Declaraciones, variables y constantes(2 2)IrvinOrta
 
Prog unidad ii algunos ej.
Prog unidad ii algunos ej.Prog unidad ii algunos ej.
Prog unidad ii algunos ej.Benjamin Ch
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programaciónNataliaVicua1
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica iiNoe Altamirano
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivasstarduslex
 
Guía no. 1 grado 7
Guía no. 1 grado 7Guía no. 1 grado 7
Guía no. 1 grado 7gregoriopena
 

Was ist angesagt? (15)

Características%20 de%20los%20programas[1]
Características%20 de%20los%20programas[1]Características%20 de%20los%20programas[1]
Características%20 de%20los%20programas[1]
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programación
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
Tutorial eviews (normalidad)
Tutorial eviews (normalidad)Tutorial eviews (normalidad)
Tutorial eviews (normalidad)
 
Algoritmica
AlgoritmicaAlgoritmica
Algoritmica
 
Declaraciones, variables y constantes(2 2)
Declaraciones, variables y constantes(2 2)Declaraciones, variables y constantes(2 2)
Declaraciones, variables y constantes(2 2)
 
Prog unidad ii algunos ej.
Prog unidad ii algunos ej.Prog unidad ii algunos ej.
Prog unidad ii algunos ej.
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programación
 
Introducción a los algoritmos
Introducción a los algoritmosIntroducción a los algoritmos
Introducción a los algoritmos
 
Bloque i guia informatica ii
Bloque i guia informatica iiBloque i guia informatica ii
Bloque i guia informatica ii
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivas
 
Algoritmo en informática
Algoritmo en informáticaAlgoritmo en informática
Algoritmo en informática
 
Modelacion ARIMA
Modelacion ARIMAModelacion ARIMA
Modelacion ARIMA
 
Diagrama de flujo lineal
Diagrama de flujo linealDiagrama de flujo lineal
Diagrama de flujo lineal
 
Guía no. 1 grado 7
Guía no. 1 grado 7Guía no. 1 grado 7
Guía no. 1 grado 7
 

Ähnlich wie Presentacion ip pseudocodigo_2012_segunda_parte

Introducción a los Algortimos
Introducción a los AlgortimosIntroducción a los Algortimos
Introducción a los AlgortimosMilagros Arce
 
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 AlgoritmiaIntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 AlgoritmiaAndres Garcia
 
Presentacion ip pseudocodigo_2012_primera_parte
Presentacion ip pseudocodigo_2012_primera_partePresentacion ip pseudocodigo_2012_primera_parte
Presentacion ip pseudocodigo_2012_primera_parteymendal
 
Aprenda a crear diagramas de flujo
Aprenda a crear diagramas de flujoAprenda a crear diagramas de flujo
Aprenda a crear diagramas de flujoLeonel Robles
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacionneyvajms
 
Reglas Para Diagramas
Reglas Para DiagramasReglas Para Diagramas
Reglas Para Diagramasfrancisco3011
 
Explicación algoritmo
Explicación algoritmoExplicación algoritmo
Explicación algoritmoarmbadajoz
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdfSantiagoMeneses18
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdfssuserec44061
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdfXian11
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdfMaicolDorado
 
Fundamentos de programación I.pptx
Fundamentos de programación I.pptxFundamentos de programación I.pptx
Fundamentos de programación I.pptxbenjamincordero6
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programacióncarlinauribe
 

Ähnlich wie Presentacion ip pseudocodigo_2012_segunda_parte (20)

Introducción a los Algortimos
Introducción a los AlgortimosIntroducción a los Algortimos
Introducción a los Algortimos
 
IntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 AlgoritmiaIntroduccióN A La Programacion Tema 3 Algoritmia
IntroduccióN A La Programacion Tema 3 Algoritmia
 
Presentacion ip pseudocodigo_2012_primera_parte
Presentacion ip pseudocodigo_2012_primera_partePresentacion ip pseudocodigo_2012_primera_parte
Presentacion ip pseudocodigo_2012_primera_parte
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Programacion
ProgramacionProgramacion
Programacion
 
Metodologia1
Metodologia1Metodologia1
Metodologia1
 
Aprenda a crear diagramas de flujo
Aprenda a crear diagramas de flujoAprenda a crear diagramas de flujo
Aprenda a crear diagramas de flujo
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
 
Diagrama
DiagramaDiagrama
Diagrama
 
Practica 08
Practica 08Practica 08
Practica 08
 
Reglas Para Diagramas
Reglas Para DiagramasReglas Para Diagramas
Reglas Para Diagramas
 
Explicación algoritmo
Explicación algoritmoExplicación algoritmo
Explicación algoritmo
 
Unidad i
Unidad iUnidad i
Unidad i
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdf
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdf
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdf
 
Conceptos básicos de programación.pdf
Conceptos básicos de programación.pdfConceptos básicos de programación.pdf
Conceptos básicos de programación.pdf
 
Fundamentos de programación I.pptx
Fundamentos de programación I.pptxFundamentos de programación I.pptx
Fundamentos de programación I.pptx
 
Ppt uca
Ppt ucaPpt uca
Ppt uca
 
Estructuras básicas conceptos básicos de programación
Estructuras básicas  conceptos básicos de programaciónEstructuras básicas  conceptos básicos de programación
Estructuras básicas conceptos básicos de programación
 

Mehr von ymendal

Nociones algoritmos
Nociones algoritmosNociones algoritmos
Nociones algoritmosymendal
 
Nociones algoritmos
Nociones algoritmosNociones algoritmos
Nociones algoritmosymendal
 
Ppt ii 2012_i
Ppt ii 2012_iPpt ii 2012_i
Ppt ii 2012_iymendal
 
Ppt ii 2012_i
Ppt ii 2012_iPpt ii 2012_i
Ppt ii 2012_iymendal
 
Ppt nociones basicas
Ppt nociones basicasPpt nociones basicas
Ppt nociones basicasymendal
 
Ppt usabilidad
Ppt usabilidadPpt usabilidad
Ppt usabilidadymendal
 
Presentacion ip algoritmia_2012_ii
Presentacion ip algoritmia_2012_iiPresentacion ip algoritmia_2012_ii
Presentacion ip algoritmia_2012_iiymendal
 
Presentacion ip algoritmia_2012_i_v2_primera_parte
Presentacion ip algoritmia_2012_i_v2_primera_partePresentacion ip algoritmia_2012_i_v2_primera_parte
Presentacion ip algoritmia_2012_i_v2_primera_parteymendal
 
Presentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_iPresentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_iymendal
 
Presentacion_Lenguajes_Programacion
Presentacion_Lenguajes_ProgramacionPresentacion_Lenguajes_Programacion
Presentacion_Lenguajes_Programacionymendal
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1ymendal
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1ymendal
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1ymendal
 
Ppt ip hw-sw_2011-ii
Ppt ip hw-sw_2011-iiPpt ip hw-sw_2011-ii
Ppt ip hw-sw_2011-iiymendal
 
Ppt ip 2012_i
Ppt ip 2012_iPpt ip 2012_i
Ppt ip 2012_iymendal
 
Ppt ip 2012_i
Ppt ip 2012_iPpt ip 2012_i
Ppt ip 2012_iymendal
 
Ppt ip 2011_ii
Ppt ip 2011_iiPpt ip 2011_ii
Ppt ip 2011_iiymendal
 
Presentacion ii algoritmos_df
Presentacion ii algoritmos_dfPresentacion ii algoritmos_df
Presentacion ii algoritmos_dfymendal
 
Presentacion ii algoritmos_
Presentacion ii algoritmos_Presentacion ii algoritmos_
Presentacion ii algoritmos_ymendal
 

Mehr von ymendal (20)

Nociones algoritmos
Nociones algoritmosNociones algoritmos
Nociones algoritmos
 
Nociones algoritmos
Nociones algoritmosNociones algoritmos
Nociones algoritmos
 
Ppt ii 2012_i
Ppt ii 2012_iPpt ii 2012_i
Ppt ii 2012_i
 
Ppt ii 2012_i
Ppt ii 2012_iPpt ii 2012_i
Ppt ii 2012_i
 
Ppt nociones basicas
Ppt nociones basicasPpt nociones basicas
Ppt nociones basicas
 
Ppt dcu
Ppt dcuPpt dcu
Ppt dcu
 
Ppt usabilidad
Ppt usabilidadPpt usabilidad
Ppt usabilidad
 
Presentacion ip algoritmia_2012_ii
Presentacion ip algoritmia_2012_iiPresentacion ip algoritmia_2012_ii
Presentacion ip algoritmia_2012_ii
 
Presentacion ip algoritmia_2012_i_v2_primera_parte
Presentacion ip algoritmia_2012_i_v2_primera_partePresentacion ip algoritmia_2012_i_v2_primera_parte
Presentacion ip algoritmia_2012_i_v2_primera_parte
 
Presentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_iPresentacion ip algoritmia_2012_i_v2_parte_i
Presentacion ip algoritmia_2012_i_v2_parte_i
 
Presentacion_Lenguajes_Programacion
Presentacion_Lenguajes_ProgramacionPresentacion_Lenguajes_Programacion
Presentacion_Lenguajes_Programacion
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1
 
Ppt hci 2012_semestre1
Ppt hci 2012_semestre1Ppt hci 2012_semestre1
Ppt hci 2012_semestre1
 
Ppt ip hw-sw_2011-ii
Ppt ip hw-sw_2011-iiPpt ip hw-sw_2011-ii
Ppt ip hw-sw_2011-ii
 
Ppt ip 2012_i
Ppt ip 2012_iPpt ip 2012_i
Ppt ip 2012_i
 
Ppt ip 2012_i
Ppt ip 2012_iPpt ip 2012_i
Ppt ip 2012_i
 
Ppt ip 2011_ii
Ppt ip 2011_iiPpt ip 2011_ii
Ppt ip 2011_ii
 
Presentacion ii algoritmos_df
Presentacion ii algoritmos_dfPresentacion ii algoritmos_df
Presentacion ii algoritmos_df
 
Presentacion ii algoritmos_
Presentacion ii algoritmos_Presentacion ii algoritmos_
Presentacion ii algoritmos_
 

Presentacion ip pseudocodigo_2012_segunda_parte

  • 1. Estructura general de un programa (II) Departamento de ingeniería
  • 2. Enunciados o Instrucciones Departamento de ingeniería
  • 3. Instrucciones y tipos de instrucciones Es importante en un programa definir las instrucciones que resolverán el problema. Lineal Instrucciones se ejecutan linealmente. Programa No lineal La secuencia se interrumpe con “instrucciones de bifurcación ó de decisión”. El tipo de instrucciones dependen del tipo de lenguaje, sin embargo se tienen instrucciones básicas (Independientes del lenguaje). Departamento de ingeniería
  • 4. Instrucciones y tipos de instrucciones Inicio / fin Inicio, fin Lectura Instrucciones Asignación Escritura Bifurcación o decisión Departamento de ingeniería
  • 5. Enunciado de Lectura.  El enunciado de lectura se utiliza para introducir datos que se van a utilizar en la solución de un algoritmo.  Se almacena en la variable el valor ingresado por el usuario.  Ejemplo: ◦ Leer(edad) ◦ Si el usuario digita 5, la variable edad almacena este valor. Departamento de ingeniería
  • 6. Enunciado de Escritura.  El enunciado de escritura se utiliza para presentar los resultados que se esperaban obtener al ejecutarse el algoritmo.  Ejemplo: ◦ Escribir(edad) ◦ Presenta el valor correspondiente con edad. Departamento de ingeniería
  • 7. Enunciado de Asignación (I). • Es una acción o proceso por el cual se le asigna un valor (constante o variable) o el resultado de una operación (expresión) a una variable. Los enunciados de asignación se utilizan generalmente para cambiar el valor a una variable o definirla. • Definir una variable consiste en asignarle o darle por primera vez un valor; y puede hacerse de dos maneras: – Por medio de una lectura de datos, o – Utilizando un enunciado de asignación. • Ejemplo: leer(edad) edad  25 Departamento de ingeniería
  • 8. Enunciado de Asignación (II). Asignación aritmética. Las expresiones en las operaciones son aritméticas Ejm. Instrucciones Traza 1) N 3 1) La variable N toma el valor de 3 2) N N+1 2) La variable N toma el valor de 4 3) S 2 3) La variable S toma el valor de 2 4) S N+5 4) La variable S toma el valor de 9 Departamento de ingeniería
  • 9. Enunciado de Asignación (III). Asignación lógica. La expresión que se evalúa en la operación de asignación es lógica Ejm. Instrucciones Traza 1) M 31 < 2 1) La variable M toma el valor de falso 2) P P o (2 <= 12) 2) La variable P toma el valor de verdadero 3) Q MyP 3) La variable S toma el valor de falso Departamento de ingeniería
  • 10. Enunciado de Asignación (III). Asignación de cadena de caracteres. La expresión que se evalua es de tipo cadena. Ejm. x  ‘Pedro Perez’ La acción de asignación asigna a la variable tipo cadena x, la cadena de caracteres ‘Linterna verde’. Asignación múltiple. La sintaxis que se utiliza es <variable> <variable> <operador> <expresión> Departamento de ingeniería
  • 11. Reglas para la construcción de enunciados de asignación (I). Toda variable que aparezca al lado derecho de un enunciado de asignación debe estar definida. • Ejemplo 1: edad  25 contador  0 contador  contador + edad • Las variables edad y contador se definieron correctamente • Ejemplo 2: contador  0 contador  contador + edad • La variable edad nunca fue definida. Departamento de ingeniería
  • 12. Reglas para la construcción de enunciados de asignación (II). En un enunciado de asignación, la variable de la izquierda es la única que cambia de valor cuando con anterioridad tiene un valor asignado. Ejemplo : edad  25 contador  0 contador  contador + edad Departamento de ingeniería
  • 13. Reglas para la construcción de enunciados de asignación (III). Las variables que aparecen en la parte derecha de un enunciado de asignación conservan su valor después de ejecutarse la asignación. Ejemplo: salario  1000 bono  120 salario_neto  salario + bono Departamento de ingeniería
  • 14. Reglas para la construcción de enunciados de asignación (IV). Si la variable de la parte izquierda del enunciado se encuentra también en el lado derecho, esta variable cambia de valor por aparecer en la izquierda. Ejemplo: acumulador  0 edad  25 acumulador  acumulador + edad Departamento de ingeniería
  • 15. Enunciado de Decisión. Los enunciados de decisión se utilizan para tomar una acción o conocer el estado de alguna situación especial, que generalmente toman un valor Verdadero o Falso. Departamento de ingeniería
  • 16. Enunciado de Decisión – Si.. Sino Diagrama de Flujo SI NO <comparación> SI <comparación> ENTONCES Pseudo Código VERDADERO Enunciado(s) SINO FALSO Enunciado(s) FIN SI Departamento de ingeniería
  • 17. Enunciado de Decisión – SI .. Sino Diagrama de Flujo SI NO contador > 0 promedio  acumulador/contador promedio  0 SI contador >0 ENTONCES Pseudo Código promedio  acumulador/contador SINO promedio  0 FIN SI Departamento de ingeniería
  • 18. Enunciado de Repetición.  Son los enunciados que permiten repetir varias veces un conjunto de enunciados según se necesite de acuerdo a una condición.  Se les conoce también como ciclos. Departamento de ingeniería
  • 19. Enunciado de Repetición - Mientras Diagrama de Flujo SI NO <comparación> MIENTRAS <comparación> HACER Pseudo Código VERDADERO Enunciado(s) a repetir FIN MIENTRAS FALSO Enunciado(s) Departamento de ingeniería
  • 20. Enunciado de Repetición - Mientras Diagrama de Flujo SI contador < numero NO contador  contador + 1 promedio  acumulador/contador Leer(edad) Escribir (promedio) acumulador  acumulador + edad Fin MIENTRAS contador < numero HACER Pseudo Código contador  contador +1 leer(edad) acumulador  acumulador + edad FIN MIENTRAS promedio  acumulador/contador Departamento de ingeniería escribir(promedio)
  • 21. Enunciado de Repetición – Haga .. Mientras Diagrama de Flujo SI NO <comparación> HAGA Pseudo Código VERDADERO Enunciado(s) a repetir MIENTRAS <comparación> FALSO Enunciado(s) Departamento de ingeniería
  • 22. Enunciado de Repetición – Haga .. Mientras Diagrama de Flujo Leer SI (Edad) NO Promedio  Edad > 0 acumulador/contador contador  contador + 1 Acumulador  acumulador + edad Escriba(promedio) HAGA Pseudo Código leer (edad) contador  contador + 1 Acumulador  acumulador + edad MIENTRAS edad > 0 promedio  acumulador/contador Escriba (promedio) Departamento de ingeniería
  • 23. Ejemplo algoritmo para “sumar dos números” Entrada: Dos números (num1, num2) Salida: Resultado de la suma de los dos números. Proceso: Se reciben los dos números, luego en una variable num_suma se el asigna el resultado de la suma de los números. Se imprime el resultado.
  • 24. Ejemplos de diagramas de flujo Inicio Num_suma 0 Leer num1 Leer num2 Num_suma num1+ num2 Escribir num_suma Fin Departamento de ingeniería
  • 25. Actividad En un diagrama de flujo, representar un algoritmo para dividir dos números. Si el segundo número que se recibe es “0”, se debe presentar un mensaje.
  • 27. Pseudocódigo (I) Es muy importante la indentación (sangría en el margen izquierdo) de las diferentes líneas del algoritmo. Elementos básicos ◦Inicio. Se coloca al empezar el pseudocódigo ◦Fin. Se coloca al finalizar el pseudocócigo ◦//. Se utiliza para colocar comentarios. Se utiliza para realizar una asignación. Ejemplo: num_suma num1 + num2 Leer (y): Se utiliza para solicitar información y
  • 28. Pseudocódigo (II) Escribir (y): Se utiliza para solicitar escribir un dato y. Escribir(‘mensaje’): Se utiliza para escribir la palabra mensaje. Si sentencia entonces Si sentencia instrucciones 1 entonces Si_no instrucciones instrucciones 2 fin si fin si
  • 29. Pseudocódigo (III) Si sentencia1 entonces instrucciones1 sino si sentencia2 entonces instrucciones 2 sino si sentencia3 entonces instrucciones3 sino instrucciones4 fin si fin si fin si mientras sentencia haga instrucciones fin mientras
  • 30. Ejemplo de pseudocódigo Escribir en pseudocódigo un algoritmo que pida el nombre de una persona e imprima en pantalla el nombre ingresado. Var cadena: nombre; inicio Escribir (‘Ingrese su nombre’) Leer (nombre) //En nombre se guardará la información que se ingrese Escribir (‘El nombre ingresado es:’, nombre) fin
  • 31. Actividad en Clase (I) 1. Escribir en pseudocódigo un algoritmo para multiplicar dos números. 2. Escribir en pseudocódigo un algoritmo para dividir dos números. 3. Escribir un algoritmo que determine si un número es o no par. En caso de ser par debe presentar un mensaje “El número X es par” ó “El número X es impar”.
  • 32. Actividad en Clase Escribir un algoritmo que: «Dados tres números determina si la suma de dos de ellos es igual al otro número. En caso de que sean iguales escribir «iguales», en caso de ser desiguales escribir «desiguales». Entradas: tres números num1,num2,num3 Salidas: mensaje “iguales” ó “desiguales”. Proceso: Se solicitan los números al usuario Se comparan las tres posibles comparaciones de números Se muestra el resultado respectivo.
  • 33. Algoritmo comparar_iguales Solución I Var entero: num1,num2,num3 Inicio Escribir(‘Ingrese primer número’) leer(num1) Escribir(‘Ingrese segundo número’) leer(num2) Escribir(‘Ingrese tercer número’) leer(num3) si(num1+num2=num3)entonces escribir(‘iguales’) sino si(num1+num3=num2)entonces escribir(‘iguales’) sino si(num2+num3=num2)entonces escribir(‘iguales’) sino escribir(‘desiguales’) fin_si fin_si fin_si Fin
  • 34. Solución II Algoritmo comparar_iguales Var entero: num1,num2,num3 Inicio Escribir(‘Ingrese primer número’) leer(num1) Escribir(‘Ingrese segundo número’) leer(num2) Escribir(‘Ingrese tercer número’) leer(num3) si((num1+num2=num3) ó (num1+num3=num2) ó (num2+num3=num1 ó ) )entonces escribir(‘iguales’) sino escribir(‘desiguales’) fin_si Fin
  • 35. Actividad en Clase Escriba un algoritmo que pida a un profesor una nota. Dependiendo de la nota se debe realizar lo siguiente:  Si la nota está entre 0y 2.9 presente un mensaje: “perdió la materia”.  Si la nota está entre 3 y 5 presente un mensaje: “ganó la materia”. Si la nota está entre 4.5 y 5 presentar también un mensaje: “excelente nota”. Entradas: nota del estudiante Salida: mensaje respectivo Proceso: Se solicita la nota del estudiante. Se valida el rango en la cual se encuentra la nota. Se presenta el mensaje respectivo.
  • 36. Solución Algoritmo validar_nota Var real: nota Inicio Escribir(‘Ingrese la nota del estudiante’) leer(nota) si ((nota>=0) y (nota<2.9)) entonces escribir(‘perdió la materia’) sino si((nota>=3) y (nota<=5)) entonces escribir(‘ganó la materia’) si ((nota>=4.5) y (nota<=5)) entonces escribir(‘excelente nota’) fin_si sino escribir(‘La nota no está en el rango de 0 a 5’) fin_si fin_si Fin
  • 37. Gracias!!! Departamento de ingeniería