Programación
          Ing. Eléctrica y Electrónica

      Unidad 2- 1
“Resumen de estructuras de
        control”




                     Profesor


Ing. Orlando Barcia Ayala


   Website: www.orlandobarcia.com
   E-mail: obarcia@orlandobarcia.com


   Cursos online: www.orlandobarcia.com/cursos
   Foro online: www.ingenieroweb.com




                                                 1
Agenda 1
• Estructuras de control
• Ejercicios




    Estructuras de control, en
         pseudocodigo
  – Decisión simple
  – Decisión doble
  – Decisión múltiple
  – Repetitivas




                                 2
Decisión simple (si)

        If (condicion)
        {
            Si se cumple esto.
             ENTONCES
             realizar lo que está
             aquí
        }
Nota:
Se realiza lo que esta entre llaves despues del if.
Al finalizar o cuando es falso, se realiza la
                                                 inicio
Siguiente línea después del }




 IF ….                                    IF (si)

 { inicio del bloque

 } fin del bloque




                                                          3
Decisión simple. Ejemplo
     If (condicion) then
           • Si se cumple esto. realizar lo que está aquí
     endif

     Ejemplo
     a← 4
     b←3
       If (a > b)
     {
               write(“salir a jugar”)
         }




        Decisión doble (si ,en caso contrario)
    If (condición)
    {
          si se cumple esto,
          ENTONCES
          realizar lo que está aquí
    }
       else
    {
          En caso contrario
          Realizar esto otro
    }
Nota:
Se realiza UNA de las 2 cosas no las 2 a la vez.
Si es verdadero se realiza lo que esta entre llaves del if y
else y después sale (siguiente línea después del endif })
Si es falso (en caso contrario) se realiza entre el else y
fin de la llave }, después sale (siguiente línea después       inicio
del endif)




                                                                        4
Decisión Doble. Ejemplo
a←5
 if (a = 5)
{
       write (“Hola amigos”);
}
Else
{
           write (“Hola los que no son mis amigos”);
}




 Estructuras Repetitivas 1. (mientras)
while (condicion)
{
     Mientras ocurra esto,                                                       NO
     realizar lo que está aquí                                      CONDICION?

}
                                                                          SI




    While , es mientras en español
                                                                     ACCION

Nota:
Si es verdadero se realiza lo que esta entre llaves del
while { y } , y vuelve a preguntar hacia el while, hasta
que la condición sea falsa
Si es falso se realiza la siguiente línea después del })

                                                           inicio




                                                                                      5
Diagrama de flujo.
      ¿Que hace ?                       Pseudocodigo
                 begin                  begin
                                         a←0
                a←0
                                        While( a < 10)
                            F           { a a+1
                  a< 10          end
Write a                                   write a
                     V
                a ←a+ 1
                                        }
                                        end
    Es un contador que
    muestra de 1 a 10
                                        Hacer Mientras a sea menor
    A <=10 muestra 11
                                        a a+1 y mostrar




 Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19,
        aumentando 3 y la suma de ellos, es decir 10+13+16+19


                                                CONTADOR
  Análisis del problema
  Entre 10, 13, 16 hay
                                                num         0
  diferencia de 3.                              …….
  Se utiliza un contador de 3
  en 3                                          num        num +1
  Para almacenar los
  números, utilizo un
  acumulador.                                 ACUMULADOR
  Cuento y acumulo hasta
  que la condición no se
                                              suma         0
  cumpla                                      …….
                                              suma          suma +num




                                                                          6
Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19,
       aumentando 3 y la suma de ellos, es decir 10+13+16+19


          begin

       suma ←0                             Realizar la tabla de
                                          seguimiento o control
       num ← 10




                                     Write suma
       num <=19
                         F
                V
       Write num



    suma ←suma + num
    num ← num + 3




Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19,
       aumentando 3 y la suma de ellos, es decir 10+13+16+19
Diagrama de flujo

        begin
                                                      pseudocodigo
                                                  Begin
     suma ←0
     num ← 10                                     Suma←0
                                                  num ←10
                                                  While ( num <=19)
      num <=19               Write

                     F
                             suma                       { Write num
            V                                           Suma ← suma + num
      Write num
                                                        num ← num +3
                                                  }
  suma ←suma + num
  num ← num + 3
                                                  Write suma
                                                  end




                                                                            7
Elaborar y diagrama que, lea un numero y muestre un
       mensaje, solamente ese número de veces
    begin                               Análisis del problema
                                        Ir contando uno a uno
    Read n                              hasta que sea igual al
                                        numero ingresado
     j     1
                                        CONTADOR
    Write
    “Mensaje” j                         j     1
                          Write
                          “Mensaje” j
                                        …….
                                        j     j +1            constante
         J=n      F   j      j+1
                                                   variable
            V                           variable
         end




• Realizar el pseucodigo del ejercicio
  anterior




                                                                          8
Estructuras Repetitivas 2. (DESDE o Para)
For (variable inicial ; variable final ; incremento )

      { desde una variable inicial,                        inicial

      Hacer lo que esté aquí.
      Hasta que variable sea igual a variable final.
                                                                         F
  }                                                          condi
                                                             cion

                                                                     V
                                                          incremento
Nota:
Ideal cuando se conocen los limites superior e inferior
y el aumento                                              accion
Si es verdadero se realiza lo que esta entre llaves { }
for , y vuelve a preguntar otra vez al for, hasta que
llegue al limite superior
Si es falso se realiza la siguiente línea después del
endfor)




                                Importante
 • El while y el for se pueden utilizar
   para el mismo diagrama de flujo.
 • El for tiene 3 sentencias en una, por
   eso es mas fácil utilizar
 • Lo que hay que tener cuidado es con
   la condición.




                                                                             9
Escribir todos los números del 1 al 100.

Algorithm Cien                  Algorithm Cien
  Entero i                        Entero i
  begin                           begin
     for (i   1 ; 100 ; i+1)
                                i 1
            {     write (i)
              }
                                While ( i <= 100 )
  end                              { write (i)
                                  i i+1
                                }
                                end




            Estructuras Repetitivas 3.
                      (hacer - HASTA)
   Do
   {
      instrucciones
   } while not( condicion)
        {




         HASTA




                                                     10
Ejm. Estructuras Repetivas HASTA

 i      1
     do                                Hacer hasta que i
      {                                sea igual a 5

            a 3*i
            i i+1
      }
      while not( i=5)
        {



            HASTA




       Decisión múltiple (según sea)
Select case (variable) {
     Case = condicion1
                {
                instruccion
                }
     Case = condicion 2
                …
     Case else
                {
                    instrucción otro caso
                    }
        }

     Omite muchos if




                                                           11
Ejm. Decisión múltiple
Algorithm Dia_Semana
   Entero numero
   begin
   Read(numero)

  Select case numero
    {
         Case = 1
                   write("Domingo“);
         Case = 2
                   write(" Lunes“);
          Case = 3
                   write(" Martes“);
          Case = 4
                   write(" Miercoles“);
          Case = 5
                   write(" Jueves“);
          Case = 6
                   write(" Viernes“)
          Case = 7
                   write(" Sábado“);
          Case Else
                       write("("El número debe estar entre 1 y 7")
    }
end




• Fin de Algoritmos.
• Esta es la base para solucionar cualquier
  problema en computador.




                                                                     12

2011 1-unidad-2-1-resumen-estructuras-control-prog-ing-elect

  • 1.
    Programación Ing. Eléctrica y Electrónica Unidad 2- 1 “Resumen de estructuras de control” Profesor Ing. Orlando Barcia Ayala Website: www.orlandobarcia.com E-mail: obarcia@orlandobarcia.com Cursos online: www.orlandobarcia.com/cursos Foro online: www.ingenieroweb.com 1
  • 2.
    Agenda 1 • Estructurasde control • Ejercicios Estructuras de control, en pseudocodigo – Decisión simple – Decisión doble – Decisión múltiple – Repetitivas 2
  • 3.
    Decisión simple (si) If (condicion) { Si se cumple esto. ENTONCES realizar lo que está aquí } Nota: Se realiza lo que esta entre llaves despues del if. Al finalizar o cuando es falso, se realiza la inicio Siguiente línea después del } IF …. IF (si) { inicio del bloque } fin del bloque 3
  • 4.
    Decisión simple. Ejemplo If (condicion) then • Si se cumple esto. realizar lo que está aquí endif Ejemplo a← 4 b←3 If (a > b) { write(“salir a jugar”) } Decisión doble (si ,en caso contrario) If (condición) { si se cumple esto, ENTONCES realizar lo que está aquí } else { En caso contrario Realizar esto otro } Nota: Se realiza UNA de las 2 cosas no las 2 a la vez. Si es verdadero se realiza lo que esta entre llaves del if y else y después sale (siguiente línea después del endif }) Si es falso (en caso contrario) se realiza entre el else y fin de la llave }, después sale (siguiente línea después inicio del endif) 4
  • 5.
    Decisión Doble. Ejemplo a←5 if (a = 5) { write (“Hola amigos”); } Else { write (“Hola los que no son mis amigos”); } Estructuras Repetitivas 1. (mientras) while (condicion) { Mientras ocurra esto, NO realizar lo que está aquí CONDICION? } SI While , es mientras en español ACCION Nota: Si es verdadero se realiza lo que esta entre llaves del while { y } , y vuelve a preguntar hacia el while, hasta que la condición sea falsa Si es falso se realiza la siguiente línea después del }) inicio 5
  • 6.
    Diagrama de flujo. ¿Que hace ? Pseudocodigo begin begin a←0 a←0 While( a < 10) F { a a+1 a< 10 end Write a write a V a ←a+ 1 } end Es un contador que muestra de 1 a 10 Hacer Mientras a sea menor A <=10 muestra 11 a a+1 y mostrar Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19 CONTADOR Análisis del problema Entre 10, 13, 16 hay num 0 diferencia de 3. ……. Se utiliza un contador de 3 en 3 num num +1 Para almacenar los números, utilizo un acumulador. ACUMULADOR Cuento y acumulo hasta que la condición no se suma 0 cumpla ……. suma suma +num 6
  • 7.
    Realizar un diagrama,que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19 begin suma ←0 Realizar la tabla de seguimiento o control num ← 10 Write suma num <=19 F V Write num suma ←suma + num num ← num + 3 Realizar un diagrama, que calcule y muestre los enteros entre 10 y 19, aumentando 3 y la suma de ellos, es decir 10+13+16+19 Diagrama de flujo begin pseudocodigo Begin suma ←0 num ← 10 Suma←0 num ←10 While ( num <=19) num <=19 Write F suma { Write num V Suma ← suma + num Write num num ← num +3 } suma ←suma + num num ← num + 3 Write suma end 7
  • 8.
    Elaborar y diagramaque, lea un numero y muestre un mensaje, solamente ese número de veces begin Análisis del problema Ir contando uno a uno Read n hasta que sea igual al numero ingresado j 1 CONTADOR Write “Mensaje” j j 1 Write “Mensaje” j ……. j j +1 constante J=n F j j+1 variable V variable end • Realizar el pseucodigo del ejercicio anterior 8
  • 9.
    Estructuras Repetitivas 2.(DESDE o Para) For (variable inicial ; variable final ; incremento ) { desde una variable inicial, inicial Hacer lo que esté aquí. Hasta que variable sea igual a variable final. F } condi cion V incremento Nota: Ideal cuando se conocen los limites superior e inferior y el aumento accion Si es verdadero se realiza lo que esta entre llaves { } for , y vuelve a preguntar otra vez al for, hasta que llegue al limite superior Si es falso se realiza la siguiente línea después del endfor) Importante • El while y el for se pueden utilizar para el mismo diagrama de flujo. • El for tiene 3 sentencias en una, por eso es mas fácil utilizar • Lo que hay que tener cuidado es con la condición. 9
  • 10.
    Escribir todos losnúmeros del 1 al 100. Algorithm Cien Algorithm Cien Entero i Entero i begin begin for (i 1 ; 100 ; i+1) i 1 { write (i) } While ( i <= 100 ) end { write (i) i i+1 } end Estructuras Repetitivas 3. (hacer - HASTA) Do { instrucciones } while not( condicion) { HASTA 10
  • 11.
    Ejm. Estructuras RepetivasHASTA i 1 do Hacer hasta que i { sea igual a 5 a 3*i i i+1 } while not( i=5) { HASTA Decisión múltiple (según sea) Select case (variable) { Case = condicion1 { instruccion } Case = condicion 2 … Case else { instrucción otro caso } } Omite muchos if 11
  • 12.
    Ejm. Decisión múltiple AlgorithmDia_Semana Entero numero begin Read(numero) Select case numero { Case = 1 write("Domingo“); Case = 2 write(" Lunes“); Case = 3 write(" Martes“); Case = 4 write(" Miercoles“); Case = 5 write(" Jueves“); Case = 6 write(" Viernes“) Case = 7 write(" Sábado“); Case Else write("("El número debe estar entre 1 y 7") } end • Fin de Algoritmos. • Esta es la base para solucionar cualquier problema en computador. 12