SlideShare una empresa de Scribd logo
1 de 60
ALGORITMOS Y LENGUAJES
         DE
    PROGRAMACION

    CAPITULO II
DISEÑO DE ALGORITMOS

 ESTRUCTURAS SECUENCIALES

   SENTENCIAS SELECTIVAS
DISEÑO DE ALGORITMOS


OBJETIVO

El objetivo principal de este
Capítulo es capacitar al estudiante
en los conceptos básicos de
algoritmos,   que    le   permitan
obtener la destreza necesaria para
diseñar sus propios algoritmos.
CONCEPTOS BASICOS DE ALGORITMO


Un algoritmo es todo proceso, rutina ó método para resolver un
problema; mediante una secuencia finita de acciones , cada cual
con un significado concreto y cuya ejecución genera un tiempo
finito.

La ventaja del algoritmo es que el programador se puede concentrar
en la lógica del problema y en las estructuras de control del
mismo. Dejando de lado las reglas de sintaxis del lenguaje de
programación.

Algoritmo, es sinónimo de procedimiento computacional y es
fundamental para la ciencia de la computación.
CONCEPTOS BASICOS DE ALGORITMO

    PROPIEDADES:

•   Finito
    La ejecución de un algoritmo acaba en un tiempo finito; un procedimiento que falla en la
    propiedad de la finitud es simplemente un procedimiento de cálculo.

•   Preciso
    Cada instrucción de un algoritmo debe ser precisa; debe tener en cuenta un rigor y no la
    ambigüedad. Cada frase tiene un significado concreto.

•   Posee entradas
    La entrada se toma como un conjunto especifico de valores que inicializan el algoritmo.

•   Posee salidas
    Todo algoritmo posee una ó más salidas; la salida es la transformación de la entrada.

•   Efectivo
    Un algoritmo es efectivo cuando las operaciones se efectúan de un modo exacto y en
    un tiempo finito aun usando métodos manuales.
CONCEPTOS BASICOS DE ALGORITMO


La solución de un problema exige el diseño de un
algoritmo que resuelva el problema propuesto.


                     CONSTRUCCION        PROGRAMA
   PROBLEMA              DEL                DE
                      ALGORITMO         COMPUTADORA




              SOLUCION DE UN PROBLEMA
DESCRIPCIÓN DE ALGORITMOS



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

•   Diagramas de flujo

•   PseudoCódico
DIAGRAMAS DE FLUJO



Es una representación detallada en
forma gráfica (mediante símbolos) de
los pasos que se realizan para la
solución de un problema unidos por
flechas, denominadas líneas de flujo,
que indican la secuencia de ejecución.
SIMBOLOS DE LOS DIAGRAMAS DE FLUJO


 INICIO - FIN
 Este símbolo indica el comienzo y el final de un ALGORITMO
 ENTRADA-SALIDA
 Este símbolo indica operaciones que tienen relación con los
 dispositivos de entrada/salida.

 PROCESO
  Este símbolo se utiliza para indicar operaciones aritméticas.

 DECISION
 Este símbolo se utiliza para indicar en su interior comparaciones
 de valores tales como:    a=b
                           j<i
 Estas comparaciones admiten dos salidas: verdad ó falso
SIMBOLOS DE LOS DIAGRAMAS DE FLUJO


Líneas de flujo

Este símbolo indica la dirección del
flujo que el programa debe seguir.
La secuencia normal de lectura de un
diagrama de flujo es de arriba hacia
abajo y de izquierda a derecha.

Conector dentro de página
Este símbolo indica la continuación de la
dirección del flujo dentro de la misma página.
SIMBOLOS DE LOS DIAGRAMAS DE FLUJO


 Conector fuera de página
 Este símbolo indica la continuación de la dirección
 del flujo de una página a otra. Tiene la misma
 misión que el anterior, pero este conector se utiliza
 cuando las partes a enlazar se encuentran en
 distinta página.


  Ciclo repetitivo
  Este símbolo se utiliza para
  indicar procesos repetitivos
PSEUDOCÓDIGO


Es la descripción de un algoritmo
mediante una secuencia lógica de
acciones, que en su conjunto forman la
solución del problema, utilizando
generalmente palabras reservadas para
representar las acciones.
PSEUDOCÓDIGO



Para desarrollar los pseudocódigos se utilizará el
Entorno de Desarrollo Integrado   PseInt,     que es un
lenguaje de programación imperativa simple y escrito
en castellano.

Es decir, PseInt es un editor e intérprete de programas
escritos en PseudoCódigo. Su interfaz gráfica permite
crear, almacenar, ejecutar y corregir fácilmente los
programas en PseudoCódigo.
PSEUDOCÓDIGO

La sencillez del lenguaje PseudoCódigo lo
hacen ideal para la enseñanza de la
programación.

Permitiendo el uso de valores numéricos,
números decimales, lógicos, caracteres y
arreglos.

Provee también funciones de entrada/salida y
Funciones matemáticas.
PSEUDOCÓDIGO

Estructura de un Algoritmo

        Proceso <nombre>

        <secuencia de instrucciones>

        FinProceso

Cada instrucción termina en punto y coma.
<instrucción>; <instrucción>; ... <instrucción>;
PSEUDOCÓDIGO


Las palabras y símbolos que pertenecen al
pseudocódigo se escriben tal como deben
ir, por ejemplo:

Proceso; a diferencia de los nombres de
variables y otros símbolos y expresiones
que pueden variar.
PSEUDOCÓDIGO


Se pueden introducir comentarios luego de
una instrucción, o en líneas separadas,
mediante el uso de la doble barra ( // ).

Todo lo que precede a //, hasta el fin de la
 línea, no será tomado en cuenta al
 interpretar el algoritmo.
PSEUDOCÓDIGO


Identificadores
Los Identificadores son          palabras
definidas     por    el programador para
identificar variables.

Identificador, o nombre de variable, debe
constar       sólo    de     letras     y
números, comenzando siempre por una
PSEUDOCÓDIGO


Tipo de Datos
a) Tipos Simples:
         Numérica, números enteros y decimales,
                   se usa el punto para separar los
                   decimales.
         Carácter caracteres o cadena de caracteres
                   se escribe entre comillas (“ “) ó („ „)
         Lógicas toma dos valores: Verdadero ó Falso
b) Estructura de Datos: Arreglos
PSEUDOCÓDIGO


Palabras Reservadas
Las palabras reservadas no llevan acento.

Leer , Escribir , Dimension

Si-Entonces-Sino, Segun

Mientras Hacer, Repetir Hasta Que, Para
PSEUDOCÓDIGO


   Estructuras Secuenciales
   Las estructuras secuenciales están formadas por las
   siguientes instrucciones:

 Leer      Entrada de datos
 Escribir  Salida de Resultados
 Asignación Almacena un valor en una variable
PSEUDOCÓDIGO


Entrada de Datos
Definida por la Instrucción Leer que permite el
ingreso de datos al algoritmo desde el teclado.

Leer   <variable1>,<variable2>,…., <variableN>;


          Leer Numero;
          Leer n1, n2, n3;
PSEUDOCÓDIGO


Salida de Resultados
Definida por la Instrucción   Escribir   y permite mostrar
resultados en la pantalla.


Escribir <expr1> , <expr2> , ... , <exprN> ;
        Escribir "Ingrese el nombre:";
        Escribir "Resultado:" , x*2 ;
PSEUDOCÓDIGO



Sentencia de Asignación
La Instrucción de Asignación permite almacenar
un valor en una variable.

      <variable>  <expresión> ;
PSEUDOCÓDIGO

Expresiones
Las expresiones son combinaciones (asociaciones) de
datos con operadores.

      a  3
      b  5       a+b–7
Cada expresión toma un valor que se determina al
evaluar la expresión.
PSEUDOCÓDIGO



Expresiones
De acuerdo a los tipos de datos que se manipulan en
las expresiones pueden ser:

Expresiones aritméticas   (devuelve un número)
Expresiones lógicas (devuelve un valor lógico)
Expresiones de carácter (devuelve un carácter)
.


suma  a + b – 3 (expresión aritmética)
PSEUDOCÓDIGO

Para ejecutarse la asignación,         primero se
evalúa la expresión de la derecha y luego se
asigna el resultado a la variable de la izquierda.
El tipo de la variable y el de la expresión deben
coincidir.

 n  1;             // asigna el número 1 a n


 suma  suma + 1;      // incrementa el valor de
                            suma en 1
PSEUDOCÓDIGO


Sentencia de Asignación
Ejemplo de sentencia de asignación:

         a  5

         suma  ( 2 + 3 ) * X + T + Z

   La jerarquía de los operadores matemáticos es igual
   a la del algebra, aunque puede alterarse con el uso
   de paréntesis.
PSEUDOCÓDIGO


Sentencia de Asignación

Como ejemplos de sentencias de asignación podemos
mencionar:

Velocidad  (distancia/(minuto*60+segundo+c/100))

  Numero  u + 100 + d+10 + c

  AT  (s+(s-1) + (s-2) + (s-3))^2
PSEUDOCÓDIGO


Tipos de Operadores
Un operador indica el tipo de operación a realizar
sobre los datos.

Los operadores se clasifican en:

            Operadores Aritméticos
            Operadores relacionales
            Operadores lógicos.
PSEUDOCÓDIGO

Expresiones Aritméticas
En las expresiones aritméticas           se   utilizan    los
siguientes operadores aritméticos:

   Operador   Acción           Ejemplo           Resultado
      -       Resta            5–2                   3
      +       Suma             2+3                   5
      *       Multiplicación   4* 5                  20
      /       División         9 / 3                 3
      ^       Potencia         5^ 2                 25
PSEUDOCÓDIGO


Expresiones Aritméticas
Los operadores aritméticos nos permiten, básicamente,
hacer cualquier operación aritmética (suma, resta,
multiplicación y división)


           - 3 * 6/3    resultado            -6
            - 3 * (6/2) resultado            -9
PSEUDOCÓDIGO


Expresiones Lógicas
 Las expresiones lógicas son asociaciones de datos con
 operadores relacionales y de su evaluación siempre se
 obtiene un valor de tipo lógico (verdadero o falso).

 Operador Relacional     Acción              Ejemplo

           >             Mayor que           5 > 3
           >=            Mayor o igual que   a >= b
           <             Menor que           2 < 4
           <=            Menor o igual que   a <= b
           =              Igual que          m=n
           <>             Distinto que        3 <>2
PSEUDOCÓDIGO

Expresiones Lógicas
El operador conjunción (y) y el operador disyunción (o)
siempre actúan sobre dos operandos, mientras que, el
operador negación (no) sólo actúa sobre un operando.

Operadores
 Lógicos        Acción                 Ejemplo

     &       Conjunción ( y )      (5>3) & (5=1) // falso

     |       Disyunción ( 0 )      (7=7) | (4>9) // verdadero.

     NO      Negación (no)         NO (4=4) // falso
PSEUDOCÓDIGO


Expresiones Lógicas
 Los operadores lógicos producen un resultado booleano, y
 sus operandos son también valores lógicos.

Operadores Lógicos       Acción           Ejemplo

   Y                  Conjunción         (5>2) Y (4>1)

   O                  Disyunción          (2=2) O (a=b)

   NO                  Negación             No (9>3)
PSEUDOCÓDIGO


Expresiones Lógicas
Tabla de verdad del operador Y:
PSEUDOCÓDIGO


Expresiones Lógicas
Tabla de verdad del operador O:
PSEUDOCÓDIGO


Expresiones Lógicas
Tabla de verdad del operador negación (no):




Evaluar :
       no ( 9 > 5 ) se obtiene como resultado falso
PSEUDOCÓDIGO


                  Prioridad de los operadores
           Prioridad de los Operador, aritméticos, relacionales y lógicos

    ( )                    Paréntesis
.

     ^                     Potencia

     * , / , NO            Multiplicación, división y negación
.

     +,-,Y                 Signo más, signo menos y conjunción
    >, <, >=, <=, <>, = , O Mayor que, menor que, mayor igual que,
                            menor igual que, igual que, distinto que y
                             disyunción
Funciones Matemáticas

        FUNCIÓN              SIGNIFICADO
      RC(X)         Raíz Cuadrada de X
      ABS(X)        Valor Absoluto de X
      LN(X)         Logaritmo Natural de X
      EXP(X)        Función Exponencial de X
      SEN(X)        Seno de X
      COS(X)        Coseno de X
      ATAN(X)       Arcotangente de X
      TRUNC(X)      Parte entera de X
      REDON(X)      Entero más cercano a X

La función raíz cuadrada no debe recibir un argumento
     negativo. La función exponencial no debe recibir un
               argumento menor o igual a cero.
CONSTRUCCION DE ALGORITMOS

PROBLEMA N° 1
Imprimir la suma, la resta y el producto de dos números.


      Proceso Problema1
             Leer a , b;
             Escribir "a = ", a;
             Escribir "b = ", b;
             suma <- a + b;
             resta <- a -b;
             multiplica <- a*b;
             dividir <- a/b;
             Escribir "suma = " , suma;
             Escribir "resta = " , resta;
             Escribir "multiplica = ", multiplica;
             Escribir "dividir = ", dividir;
      FinProceso
CONSTRUCCION DE ALGORITMOS


PROBLEMA N° 2
Leer el radio de un circulo y calcular e imprimir su superficie y la
longitud de la circunferencia.

         Proceso Problema2
               pi<-3.1416;
           Leer radio;
               Superficie <- pi * radio^2 ;
               Circunferencia <- 2 * pi * radio;
               Escribir "Radio", radio;
               Escribir "Superficie", superficie;
               Escribir "Circunferencia", circunferencia;
         FinProceso
PSEUDOCÓDIGO


PROBLEMA N°3                                           2
Calcular las raíces reales de una ecuación cuadrática ax + bx + c = 0

   Proceso problema3
         Escribir "introdusca las variables a, b y c";
         Leer a, b, c;
         x1<-(-b+RC((b^2)-(4*a*c))/(2*a));
         x2<-(-b-RC((b^2)-(4*a*c))/(2*a));
         Escribir "las raices son: ", x1, x2;
   FinProceso
PSEUDOCÓDIGO


Estructuras no Secuenciales
   SENTENCIAS SELECTIVAS:
          Selección Simple Si-Entonces
          Selección Doble Si-Entonces-Sino
          Sentencia Múltiple Segun

   SENTENCIAS REPETITIVAS:
              Mientras Hacer
              Repetir _ Hasta_Que
              Para
PSEUDOCÓDIGO


Sentencias de Selección
Se utiliza cuando en el desarrollo de la solución de
un problema debemos tomar una decisión, para
seleccionar una alternativo a seguir.

La toma de decisión se basa en la evaluación de
una o más condiciones que nos permitan
seleccionar una alternativa de solución al problema
planteado.
PSEUDOCÓDIGO

a) SELECCION SIMPLE :           Si-Entonces
   Consiste en evaluar una condición; si el resultado de
   dicha evaluación es Verdad, se ejecuta la sentencia por
   verdad y termina la estructura.

      Si <condición> Entonces

        Sentencia ejecutada si la condición es verdad

      finSi

                   Si ( nota > = 10 ) Entonces
                                      Escribir ( “ingreso”)
                   fin Si
PSEUDOCÓDIGO

                   V           n


      INICIO       Condición


                       F




                       FIN



La sentencia condicional o selectiva evalúa
una CONDICION (expresión lógica)
CONSTRUCCION DE ALGORITMOS


PROBLEMA N° 4


Escribir un algoritmo que lea los
 datos: a , b y calcule e imprimir
        la suma, la resta, la
 multiplicación y la división de
               ellos.
CONSTRUCCION DE ALGORITMOS

Proceso Problema4
     Leer a, b;
     suma<- a+b;
     resta<- a-b;
     multiplica <- a*b;
     Si b>0 Entonces
           division <- a/b;
     FinSi
     Escribir "suma = ", suma;
     Escribir "resta = ", resta;
     Escribir "multiplica = ", multiplica;
     Escribir "division = ", division;
FinProceso
PSEUDOCÓDIGO

b) SELECCION DOBLE :      Si-Entonces-Sino

 La sentencia de selección doble nos permite tomar
 decisiones entre dos alternativas luego de evaluar una
 condición (expresión lógica).

              Si <condición>
                            Entonces
                             <instrucciones>
                            Sino
                             <instrucciones>
              Finsi
PSEUDOCÓDIGO

Si - Entonces - Sino                             Sentencia
                                       V         por Verdad


                        INICIO       Condición                FIN

                                       F
                                                 Sentencia
                                                 por Falso
  Si       ( nota > = 10 )
            Entonces
            Escribir ( “ingreso”)
            Sino
            Escribir(“no-ingreso”)
   Finsi
PSEUDOCÓDIGO


PROBLEMA N° 5
Escribir un algoritmo que lea tres números enteros positivos a, b y c
e imprima el mayor de ellos.

                        INICIO

                        a, b ,c

                   NO               SI
    Mayor      b          a>b                 Mayor    a



                                                             a, b, c
                                         si                 Mayor
                        c > Mayor              Mayor   c
                                                            FIN
CONSTRUCCION DE ALGORITMOS

Proceso Problema5
     Leer a, b, c;
     Si a > b Entonces mayor <- a;
              Sino mayor <- b;
     FinSi

     Si c > mayor Entonces mayor <- c;
     Finsi
     Escribir "a = ", a;
     Escribir "b = ", b;
     Escribir "c = ", c;
     Escribir "mayor = ", mayor;

FinProceso
PSEUDOCÓDIGO


Es posible utilizar la sentencia Si para diseñar
estructuras de selección con más de dos alternativas.

Una estructura de selección de n
alternativas puede ser construida utilizando
una estructura Si .

Las estructuras Si interiores a otras estructuras Si se
denominan anidadas o encajadas. Debe existir una
correspondencia entre las palabras reservadas Si y
Finsi.
PSEUDOCÓDIGO

Sentencia de selección anidadas
     Si (condición1) Entonces <instruccion1>


     Sino

        Si (condición2) Entonces <instrucción2>

        Sino
           Si (condición3) Entonces
                          <instruccion3>
            Finsi
         Finsi
     Finsi
PSEUDOCÓDIGO

c) SENTENCIA DE SELECCIÓN MULTIPLE
La sentencia de selección múltiple, se usa para
seleccionar una de varias alternativas.

                                    Sentencia 1
                                    Sentencia 2
                                    Sentencia 3

                  VALOR
 Según sea          DE              Sentencia 4
                 VARIABLE



                                    Sentencia 5
PSEUDOCÓDIGO

C) SELECCION MULTIPLE
  SENTENCIA Segun                           1
                                                    sentencia 1

                                                      2
                         INICIO          SELECTOR            sentencia 2

                                                N
La selección Múltiple se utiliza                    sentencia N
cuando existen más de dos alternativas
para la selección de una alternativa.
                                                    ACCION Z
El selector puede ser una variable simple
o una expresión simple denominada
expresión de control.
                                                       FIN
PSEUDOCÓDIGO

C) SELECCION MULTIPLE : SENTENCIA Segun

  Segun variable_numerica Hacer
             opcion_1:
                   secuencia_de_acciones_1
             opcion_2:
                   secuencia_de_acciones_2
             opcion_3:
                   secuencia_de_acciones_3
             De Otro Modo:
                   secuencia_de_acciones_dom
  FinSegun
CONSTRUCCION DE ALGORITMOS
Proceso Problema6
       leer n1, n2;
       leer opcion;
       segun opcion Hacer
               1: suma <- n1 + n2;
                 Escribir "suma = ", suma;
               2: resta <- n1 - n2;
                 Escribir "resta = ", resta;
               3: multiplica <- n1*n2;
                 Escribir "multiplica = ", multiplica;
               4: divide <- n1/n2;
                 Escribir "divide = ", divide;
               5: potencia <- n1^n2;
                 Escribir "potencia = ", potencia;
               De Otro Modo:
                       Escribir "Numero no Definido" ;
       FinSegun
FinProceso
CONSTRUCCION DE ALGORITMOS


PROBLEMA Nº 7

  Diseñar un algoritmo que lea un entero
positivo n y realice las siguientes cálculos:

  Si N termina en 0 se cambia por el doble
 Si N termina en 3 se cambia por la décima
                    parte
    De otro modo matiene su valor inicial
CONSTRUCCION DE ALGORITMOS


Proceso Problema7
      Leer n;
            Segun n mod 10 Hacer
            0: n <- n*2;
              Escribir "Doble de N = ", n;
            3: n <- n/10;
                   Escribir "Decima parte de N = ", n;
                          De Otro Modo:
                          n <- n;
                   Escribir "Numero N = ", n ;
               FinSegun
FinProceso

Más contenido relacionado

La actualidad más candente

Diagramas flujo
Diagramas flujoDiagramas flujo
Diagramas flujo
infobran
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Edward Ropero
 
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓNINTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
DianaaLSRojas
 
Programación Modular
Programación ModularProgramación Modular
Programación Modular
guestefc95b
 

La actualidad más candente (20)

Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
 
EJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE CEJERCICIOS BUCLES REPETITIVOS LENGUAJE C
EJERCICIOS BUCLES REPETITIVOS LENGUAJE C
 
tutorial p-seint
tutorial p-seinttutorial p-seint
tutorial p-seint
 
Clase04 tutorial p-seint
Clase04 tutorial p-seintClase04 tutorial p-seint
Clase04 tutorial p-seint
 
Pseint
PseintPseint
Pseint
 
Pseint
PseintPseint
Pseint
 
Clase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin SantaellaClase 3. Datos y Entidades Primitivas - Sullin Santaella
Clase 3. Datos y Entidades Primitivas - Sullin Santaella
 
Algoritmos 02
Algoritmos 02Algoritmos 02
Algoritmos 02
 
Lenguaje c sintaxis
Lenguaje c sintaxisLenguaje c sintaxis
Lenguaje c sintaxis
 
Fundamentos de programación 1. diseño de algoritmos
Fundamentos de programación 1. diseño de algoritmosFundamentos de programación 1. diseño de algoritmos
Fundamentos de programación 1. diseño de algoritmos
 
Algoritmos y diagramas de flujo
Algoritmos y diagramas de flujoAlgoritmos y diagramas de flujo
Algoritmos y diagramas de flujo
 
Unidad ii construiralgoritmos
Unidad ii construiralgoritmosUnidad ii construiralgoritmos
Unidad ii construiralgoritmos
 
Expresiones logicas
Expresiones logicasExpresiones logicas
Expresiones logicas
 
Tipos de algoritmos
Tipos de algoritmosTipos de algoritmos
Tipos de algoritmos
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
Diagramas flujo
Diagramas flujoDiagramas flujo
Diagramas flujo
 
Unidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicasUnidad 5 Estructuras algoritmicas
Unidad 5 Estructuras algoritmicas
 
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivasLógica y Algoritmos 4. estructuras secuenciales y selectivas
Lógica y Algoritmos 4. estructuras secuenciales y selectivas
 
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓNINTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
INTRODUCCIÓN A METODOLOGÍA DE LA PROGRAMACIÓN
 
Programación Modular
Programación ModularProgramación Modular
Programación Modular
 

Destacado

Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
marigelcontreras
 
Fundamentos y Tipos de Sistemas de Información
Fundamentos y Tipos de Sistemas de InformaciónFundamentos y Tipos de Sistemas de Información
Fundamentos y Tipos de Sistemas de Información
Carlos Fernando
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)
irvingsalazar2
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
Roldan El Gato
 
~$Observacion de una muestra de
~$Observacion de una muestra de~$Observacion de una muestra de
~$Observacion de una muestra de
Nelly Sànchez
 
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
Vorname Nachname
 
Carreradeobstaculo
CarreradeobstaculoCarreradeobstaculo
Carreradeobstaculo
MartaG00
 
Lernkarteien_de_pl
Lernkarteien_de_plLernkarteien_de_pl
Lernkarteien_de_pl
Anna Kul
 
Coorporacion universitaria minuto de dios
Coorporacion universitaria minuto  de diosCoorporacion universitaria minuto  de dios
Coorporacion universitaria minuto de dios
linacruzv
 

Destacado (20)

Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Fundamentos y Tipos de Sistemas de Información
Fundamentos y Tipos de Sistemas de InformaciónFundamentos y Tipos de Sistemas de Información
Fundamentos y Tipos de Sistemas de Información
 
Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)Diagramas de Flujo y Algoritmos (Informática ll)
Diagramas de Flujo y Algoritmos (Informática ll)
 
52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo52 ejercicios-resueltos-en-pseudocodigo
52 ejercicios-resueltos-en-pseudocodigo
 
Problemas rsueltos pl
Problemas rsueltos plProblemas rsueltos pl
Problemas rsueltos pl
 
21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos21 problemas de algoritmo resueltos
21 problemas de algoritmo resueltos
 
Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.Diagrama de Flujos Ejemplos.
Diagrama de Flujos Ejemplos.
 
Programación anual del área de arte 2016
Programación anual  del área de  arte 2016Programación anual  del área de  arte 2016
Programación anual del área de arte 2016
 
Sesión de aprendizaje calificada de arte
Sesión de aprendizaje calificada  de arte Sesión de aprendizaje calificada  de arte
Sesión de aprendizaje calificada de arte
 
Cps vortrag 19 6-2013
Cps vortrag 19 6-2013Cps vortrag 19 6-2013
Cps vortrag 19 6-2013
 
La educación en jovellanos
La educación en jovellanosLa educación en jovellanos
La educación en jovellanos
 
~$Observacion de una muestra de
~$Observacion de una muestra de~$Observacion de una muestra de
~$Observacion de una muestra de
 
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
Evalo ist das Berechnungstool, das für den Hausbesitzer Mehrwerte schafft
 
Ple pln su funcion para el aprendizaje
Ple  pln su funcion para el aprendizajePle  pln su funcion para el aprendizaje
Ple pln su funcion para el aprendizaje
 
Präsentation "LV Evaluierung Instrumente der Online-Kommunikation"
Präsentation "LV Evaluierung Instrumente der Online-Kommunikation"Präsentation "LV Evaluierung Instrumente der Online-Kommunikation"
Präsentation "LV Evaluierung Instrumente der Online-Kommunikation"
 
Carreradeobstaculo
CarreradeobstaculoCarreradeobstaculo
Carreradeobstaculo
 
Formacion del talento_humano
Formacion del talento_humanoFormacion del talento_humano
Formacion del talento_humano
 
Lernkarteien_de_pl
Lernkarteien_de_plLernkarteien_de_pl
Lernkarteien_de_pl
 
Coorporacion universitaria minuto de dios
Coorporacion universitaria minuto  de diosCoorporacion universitaria minuto  de dios
Coorporacion universitaria minuto de dios
 
Findesemana
FindesemanaFindesemana
Findesemana
 

Similar a Clase 02

Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales
Lenguaje Borland C - Estructuras Secuenciales y No SecuencialesLenguaje Borland C - Estructuras Secuenciales y No Secuenciales
Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales
Karina Arguedas Ruelas
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
EberCV1
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
neyvajms
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacion
MIKE_INK_RM
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
Noé AG
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
restradal
 

Similar a Clase 02 (20)

Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales
Lenguaje Borland C - Estructuras Secuenciales y No SecuencialesLenguaje Borland C - Estructuras Secuenciales y No Secuenciales
Lenguaje Borland C - Estructuras Secuenciales y No Secuenciales
 
BORLAND
BORLANDBORLAND
BORLAND
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdfU1-1_UPC_ Algoritmos Conceptos Básicos.pdf
U1-1_UPC_ Algoritmos Conceptos Básicos.pdf
 
Fundamentos de Programacion
Fundamentos de ProgramacionFundamentos de Programacion
Fundamentos de Programacion
 
Resolución de problemas y algoritmo
Resolución de problemas y algoritmoResolución de problemas y algoritmo
Resolución de problemas y algoritmo
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Fundamentos-de-Algoritmos.ppt
Fundamentos-de-Algoritmos.pptFundamentos-de-Algoritmos.ppt
Fundamentos-de-Algoritmos.ppt
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacion
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Unidad i
Unidad iUnidad i
Unidad i
 
Bloque 1 informatica 2
Bloque 1 informatica 2Bloque 1 informatica 2
Bloque 1 informatica 2
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 
Unidad i
Unidad iUnidad i
Unidad i
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptx
 
Algoritmos con decisiones.pptx
Algoritmos con decisiones.pptxAlgoritmos con decisiones.pptx
Algoritmos con decisiones.pptx
 
Material de apoyo unidad 3. datos y entidades primitivas
Material de apoyo unidad 3.  datos y entidades primitivasMaterial de apoyo unidad 3.  datos y entidades primitivas
Material de apoyo unidad 3. datos y entidades primitivas
 

Clase 02

  • 1. ALGORITMOS Y LENGUAJES DE PROGRAMACION CAPITULO II DISEÑO DE ALGORITMOS ESTRUCTURAS SECUENCIALES SENTENCIAS SELECTIVAS
  • 2. DISEÑO DE ALGORITMOS OBJETIVO El objetivo principal de este Capítulo es capacitar al estudiante en los conceptos básicos de algoritmos, que le permitan obtener la destreza necesaria para diseñar sus propios algoritmos.
  • 3. CONCEPTOS BASICOS DE ALGORITMO Un algoritmo es todo proceso, rutina ó método para resolver un problema; mediante una secuencia finita de acciones , cada cual con un significado concreto y cuya ejecución genera un tiempo finito. La ventaja del algoritmo es que el programador se puede concentrar en la lógica del problema y en las estructuras de control del mismo. Dejando de lado las reglas de sintaxis del lenguaje de programación. Algoritmo, es sinónimo de procedimiento computacional y es fundamental para la ciencia de la computación.
  • 4. CONCEPTOS BASICOS DE ALGORITMO PROPIEDADES: • Finito La ejecución de un algoritmo acaba en un tiempo finito; un procedimiento que falla en la propiedad de la finitud es simplemente un procedimiento de cálculo. • Preciso Cada instrucción de un algoritmo debe ser precisa; debe tener en cuenta un rigor y no la ambigüedad. Cada frase tiene un significado concreto. • Posee entradas La entrada se toma como un conjunto especifico de valores que inicializan el algoritmo. • Posee salidas Todo algoritmo posee una ó más salidas; la salida es la transformación de la entrada. • Efectivo Un algoritmo es efectivo cuando las operaciones se efectúan de un modo exacto y en un tiempo finito aun usando métodos manuales.
  • 5. CONCEPTOS BASICOS DE ALGORITMO La solución de un problema exige el diseño de un algoritmo que resuelva el problema propuesto. CONSTRUCCION PROGRAMA PROBLEMA DEL DE ALGORITMO COMPUTADORA SOLUCION DE UN PROBLEMA
  • 6. DESCRIPCIÓN DE ALGORITMOS Para describir un algoritmo se debe utilizar algún método que permita independizar dicho algoritmo del lenguaje de programación. • Diagramas de flujo • PseudoCódico
  • 7. DIAGRAMAS DE FLUJO Es una representación detallada en forma gráfica (mediante símbolos) de los pasos que se realizan para la solución de un problema unidos por flechas, denominadas líneas de flujo, que indican la secuencia de ejecución.
  • 8. SIMBOLOS DE LOS DIAGRAMAS DE FLUJO INICIO - FIN Este símbolo indica el comienzo y el final de un ALGORITMO ENTRADA-SALIDA Este símbolo indica operaciones que tienen relación con los dispositivos de entrada/salida. PROCESO Este símbolo se utiliza para indicar operaciones aritméticas. DECISION Este símbolo se utiliza para indicar en su interior comparaciones de valores tales como: a=b j<i Estas comparaciones admiten dos salidas: verdad ó falso
  • 9. SIMBOLOS DE LOS DIAGRAMAS DE FLUJO Líneas de flujo Este símbolo indica la dirección del flujo que el programa debe seguir. La secuencia normal de lectura de un diagrama de flujo es de arriba hacia abajo y de izquierda a derecha. Conector dentro de página Este símbolo indica la continuación de la dirección del flujo dentro de la misma página.
  • 10. SIMBOLOS DE LOS DIAGRAMAS DE FLUJO Conector fuera de página Este símbolo indica la continuación de la dirección del flujo de una página a otra. Tiene la misma misión que el anterior, pero este conector se utiliza cuando las partes a enlazar se encuentran en distinta página. Ciclo repetitivo Este símbolo se utiliza para indicar procesos repetitivos
  • 11. PSEUDOCÓDIGO Es la descripción de un algoritmo mediante una secuencia lógica de acciones, que en su conjunto forman la solución del problema, utilizando generalmente palabras reservadas para representar las acciones.
  • 12. PSEUDOCÓDIGO Para desarrollar los pseudocódigos se utilizará el Entorno de Desarrollo Integrado PseInt, que es un lenguaje de programación imperativa simple y escrito en castellano. Es decir, PseInt es un editor e intérprete de programas escritos en PseudoCódigo. Su interfaz gráfica permite crear, almacenar, ejecutar y corregir fácilmente los programas en PseudoCódigo.
  • 13. PSEUDOCÓDIGO La sencillez del lenguaje PseudoCódigo lo hacen ideal para la enseñanza de la programación. Permitiendo el uso de valores numéricos, números decimales, lógicos, caracteres y arreglos. Provee también funciones de entrada/salida y Funciones matemáticas.
  • 14. PSEUDOCÓDIGO Estructura de un Algoritmo Proceso <nombre> <secuencia de instrucciones> FinProceso Cada instrucción termina en punto y coma. <instrucción>; <instrucción>; ... <instrucción>;
  • 15. PSEUDOCÓDIGO Las palabras y símbolos que pertenecen al pseudocódigo se escriben tal como deben ir, por ejemplo: Proceso; a diferencia de los nombres de variables y otros símbolos y expresiones que pueden variar.
  • 16. PSEUDOCÓDIGO Se pueden introducir comentarios luego de una instrucción, o en líneas separadas, mediante el uso de la doble barra ( // ). Todo lo que precede a //, hasta el fin de la línea, no será tomado en cuenta al interpretar el algoritmo.
  • 17. PSEUDOCÓDIGO Identificadores Los Identificadores son palabras definidas por el programador para identificar variables. Identificador, o nombre de variable, debe constar sólo de letras y números, comenzando siempre por una
  • 18. PSEUDOCÓDIGO Tipo de Datos a) Tipos Simples: Numérica, números enteros y decimales, se usa el punto para separar los decimales. Carácter caracteres o cadena de caracteres se escribe entre comillas (“ “) ó („ „) Lógicas toma dos valores: Verdadero ó Falso b) Estructura de Datos: Arreglos
  • 19. PSEUDOCÓDIGO Palabras Reservadas Las palabras reservadas no llevan acento. Leer , Escribir , Dimension Si-Entonces-Sino, Segun Mientras Hacer, Repetir Hasta Que, Para
  • 20. PSEUDOCÓDIGO Estructuras Secuenciales Las estructuras secuenciales están formadas por las siguientes instrucciones:  Leer Entrada de datos  Escribir Salida de Resultados  Asignación Almacena un valor en una variable
  • 21. PSEUDOCÓDIGO Entrada de Datos Definida por la Instrucción Leer que permite el ingreso de datos al algoritmo desde el teclado. Leer <variable1>,<variable2>,…., <variableN>; Leer Numero; Leer n1, n2, n3;
  • 22. PSEUDOCÓDIGO Salida de Resultados Definida por la Instrucción Escribir y permite mostrar resultados en la pantalla. Escribir <expr1> , <expr2> , ... , <exprN> ; Escribir "Ingrese el nombre:"; Escribir "Resultado:" , x*2 ;
  • 23. PSEUDOCÓDIGO Sentencia de Asignación La Instrucción de Asignación permite almacenar un valor en una variable. <variable>  <expresión> ;
  • 24. PSEUDOCÓDIGO Expresiones Las expresiones son combinaciones (asociaciones) de datos con operadores. a  3 b  5 a+b–7 Cada expresión toma un valor que se determina al evaluar la expresión.
  • 25. PSEUDOCÓDIGO Expresiones De acuerdo a los tipos de datos que se manipulan en las expresiones pueden ser: Expresiones aritméticas (devuelve un número) Expresiones lógicas (devuelve un valor lógico) Expresiones de carácter (devuelve un carácter) . suma  a + b – 3 (expresión aritmética)
  • 26. PSEUDOCÓDIGO Para ejecutarse la asignación, primero se evalúa la expresión de la derecha y luego se asigna el resultado a la variable de la izquierda. El tipo de la variable y el de la expresión deben coincidir. n  1; // asigna el número 1 a n suma  suma + 1; // incrementa el valor de suma en 1
  • 27. PSEUDOCÓDIGO Sentencia de Asignación Ejemplo de sentencia de asignación: a  5 suma  ( 2 + 3 ) * X + T + Z La jerarquía de los operadores matemáticos es igual a la del algebra, aunque puede alterarse con el uso de paréntesis.
  • 28. PSEUDOCÓDIGO Sentencia de Asignación Como ejemplos de sentencias de asignación podemos mencionar: Velocidad  (distancia/(minuto*60+segundo+c/100)) Numero  u + 100 + d+10 + c AT  (s+(s-1) + (s-2) + (s-3))^2
  • 29. PSEUDOCÓDIGO Tipos de Operadores Un operador indica el tipo de operación a realizar sobre los datos. Los operadores se clasifican en: Operadores Aritméticos Operadores relacionales Operadores lógicos.
  • 30. PSEUDOCÓDIGO Expresiones Aritméticas En las expresiones aritméticas se utilizan los siguientes operadores aritméticos: Operador Acción Ejemplo Resultado - Resta 5–2 3 + Suma 2+3 5 * Multiplicación 4* 5 20 / División 9 / 3 3 ^ Potencia 5^ 2 25
  • 31. PSEUDOCÓDIGO Expresiones Aritméticas Los operadores aritméticos nos permiten, básicamente, hacer cualquier operación aritmética (suma, resta, multiplicación y división) - 3 * 6/3 resultado -6 - 3 * (6/2) resultado -9
  • 32. PSEUDOCÓDIGO Expresiones Lógicas Las expresiones lógicas son asociaciones de datos con operadores relacionales y de su evaluación siempre se obtiene un valor de tipo lógico (verdadero o falso). Operador Relacional Acción Ejemplo > Mayor que 5 > 3 >= Mayor o igual que a >= b < Menor que 2 < 4 <= Menor o igual que a <= b = Igual que m=n <> Distinto que 3 <>2
  • 33. PSEUDOCÓDIGO Expresiones Lógicas El operador conjunción (y) y el operador disyunción (o) siempre actúan sobre dos operandos, mientras que, el operador negación (no) sólo actúa sobre un operando. Operadores Lógicos Acción Ejemplo & Conjunción ( y ) (5>3) & (5=1) // falso | Disyunción ( 0 ) (7=7) | (4>9) // verdadero. NO Negación (no) NO (4=4) // falso
  • 34. PSEUDOCÓDIGO Expresiones Lógicas Los operadores lógicos producen un resultado booleano, y sus operandos son también valores lógicos. Operadores Lógicos Acción Ejemplo Y Conjunción (5>2) Y (4>1) O Disyunción (2=2) O (a=b) NO Negación No (9>3)
  • 37. PSEUDOCÓDIGO Expresiones Lógicas Tabla de verdad del operador negación (no): Evaluar : no ( 9 > 5 ) se obtiene como resultado falso
  • 38. PSEUDOCÓDIGO Prioridad de los operadores Prioridad de los Operador, aritméticos, relacionales y lógicos ( ) Paréntesis . ^ Potencia * , / , NO Multiplicación, división y negación . +,-,Y Signo más, signo menos y conjunción >, <, >=, <=, <>, = , O Mayor que, menor que, mayor igual que, menor igual que, igual que, distinto que y disyunción
  • 39. Funciones Matemáticas FUNCIÓN SIGNIFICADO RC(X) Raíz Cuadrada de X ABS(X) Valor Absoluto de X LN(X) Logaritmo Natural de X EXP(X) Función Exponencial de X SEN(X) Seno de X COS(X) Coseno de X ATAN(X) Arcotangente de X TRUNC(X) Parte entera de X REDON(X) Entero más cercano a X La función raíz cuadrada no debe recibir un argumento negativo. La función exponencial no debe recibir un argumento menor o igual a cero.
  • 40. CONSTRUCCION DE ALGORITMOS PROBLEMA N° 1 Imprimir la suma, la resta y el producto de dos números. Proceso Problema1 Leer a , b; Escribir "a = ", a; Escribir "b = ", b; suma <- a + b; resta <- a -b; multiplica <- a*b; dividir <- a/b; Escribir "suma = " , suma; Escribir "resta = " , resta; Escribir "multiplica = ", multiplica; Escribir "dividir = ", dividir; FinProceso
  • 41. CONSTRUCCION DE ALGORITMOS PROBLEMA N° 2 Leer el radio de un circulo y calcular e imprimir su superficie y la longitud de la circunferencia. Proceso Problema2 pi<-3.1416; Leer radio; Superficie <- pi * radio^2 ; Circunferencia <- 2 * pi * radio; Escribir "Radio", radio; Escribir "Superficie", superficie; Escribir "Circunferencia", circunferencia; FinProceso
  • 42. PSEUDOCÓDIGO PROBLEMA N°3 2 Calcular las raíces reales de una ecuación cuadrática ax + bx + c = 0 Proceso problema3 Escribir "introdusca las variables a, b y c"; Leer a, b, c; x1<-(-b+RC((b^2)-(4*a*c))/(2*a)); x2<-(-b-RC((b^2)-(4*a*c))/(2*a)); Escribir "las raices son: ", x1, x2; FinProceso
  • 43. PSEUDOCÓDIGO Estructuras no Secuenciales SENTENCIAS SELECTIVAS: Selección Simple Si-Entonces Selección Doble Si-Entonces-Sino Sentencia Múltiple Segun SENTENCIAS REPETITIVAS: Mientras Hacer Repetir _ Hasta_Que Para
  • 44. PSEUDOCÓDIGO Sentencias de Selección Se utiliza cuando en el desarrollo de la solución de un problema debemos tomar una decisión, para seleccionar una alternativo a seguir. La toma de decisión se basa en la evaluación de una o más condiciones que nos permitan seleccionar una alternativa de solución al problema planteado.
  • 45. PSEUDOCÓDIGO a) SELECCION SIMPLE : Si-Entonces Consiste en evaluar una condición; si el resultado de dicha evaluación es Verdad, se ejecuta la sentencia por verdad y termina la estructura. Si <condición> Entonces Sentencia ejecutada si la condición es verdad finSi Si ( nota > = 10 ) Entonces Escribir ( “ingreso”) fin Si
  • 46. PSEUDOCÓDIGO V n INICIO Condición F FIN La sentencia condicional o selectiva evalúa una CONDICION (expresión lógica)
  • 47. CONSTRUCCION DE ALGORITMOS PROBLEMA N° 4 Escribir un algoritmo que lea los datos: a , b y calcule e imprimir la suma, la resta, la multiplicación y la división de ellos.
  • 48. CONSTRUCCION DE ALGORITMOS Proceso Problema4 Leer a, b; suma<- a+b; resta<- a-b; multiplica <- a*b; Si b>0 Entonces division <- a/b; FinSi Escribir "suma = ", suma; Escribir "resta = ", resta; Escribir "multiplica = ", multiplica; Escribir "division = ", division; FinProceso
  • 49. PSEUDOCÓDIGO b) SELECCION DOBLE : Si-Entonces-Sino La sentencia de selección doble nos permite tomar decisiones entre dos alternativas luego de evaluar una condición (expresión lógica). Si <condición> Entonces <instrucciones> Sino <instrucciones> Finsi
  • 50. PSEUDOCÓDIGO Si - Entonces - Sino Sentencia V por Verdad INICIO Condición FIN F Sentencia por Falso Si ( nota > = 10 ) Entonces Escribir ( “ingreso”) Sino Escribir(“no-ingreso”) Finsi
  • 51. PSEUDOCÓDIGO PROBLEMA N° 5 Escribir un algoritmo que lea tres números enteros positivos a, b y c e imprima el mayor de ellos. INICIO a, b ,c NO SI Mayor b a>b Mayor a a, b, c si Mayor c > Mayor Mayor c FIN
  • 52. CONSTRUCCION DE ALGORITMOS Proceso Problema5 Leer a, b, c; Si a > b Entonces mayor <- a; Sino mayor <- b; FinSi Si c > mayor Entonces mayor <- c; Finsi Escribir "a = ", a; Escribir "b = ", b; Escribir "c = ", c; Escribir "mayor = ", mayor; FinProceso
  • 53. PSEUDOCÓDIGO Es posible utilizar la sentencia Si para diseñar estructuras de selección con más de dos alternativas. Una estructura de selección de n alternativas puede ser construida utilizando una estructura Si . Las estructuras Si interiores a otras estructuras Si se denominan anidadas o encajadas. Debe existir una correspondencia entre las palabras reservadas Si y Finsi.
  • 54. PSEUDOCÓDIGO Sentencia de selección anidadas Si (condición1) Entonces <instruccion1> Sino Si (condición2) Entonces <instrucción2> Sino Si (condición3) Entonces <instruccion3> Finsi Finsi Finsi
  • 55. PSEUDOCÓDIGO c) SENTENCIA DE SELECCIÓN MULTIPLE La sentencia de selección múltiple, se usa para seleccionar una de varias alternativas. Sentencia 1 Sentencia 2 Sentencia 3 VALOR Según sea DE Sentencia 4 VARIABLE Sentencia 5
  • 56. PSEUDOCÓDIGO C) SELECCION MULTIPLE SENTENCIA Segun 1 sentencia 1 2 INICIO SELECTOR sentencia 2 N La selección Múltiple se utiliza sentencia N cuando existen más de dos alternativas para la selección de una alternativa. ACCION Z El selector puede ser una variable simple o una expresión simple denominada expresión de control. FIN
  • 57. PSEUDOCÓDIGO C) SELECCION MULTIPLE : SENTENCIA Segun Segun variable_numerica Hacer opcion_1: secuencia_de_acciones_1 opcion_2: secuencia_de_acciones_2 opcion_3: secuencia_de_acciones_3 De Otro Modo: secuencia_de_acciones_dom FinSegun
  • 58. CONSTRUCCION DE ALGORITMOS Proceso Problema6 leer n1, n2; leer opcion; segun opcion Hacer 1: suma <- n1 + n2; Escribir "suma = ", suma; 2: resta <- n1 - n2; Escribir "resta = ", resta; 3: multiplica <- n1*n2; Escribir "multiplica = ", multiplica; 4: divide <- n1/n2; Escribir "divide = ", divide; 5: potencia <- n1^n2; Escribir "potencia = ", potencia; De Otro Modo: Escribir "Numero no Definido" ; FinSegun FinProceso
  • 59. CONSTRUCCION DE ALGORITMOS PROBLEMA Nº 7 Diseñar un algoritmo que lea un entero positivo n y realice las siguientes cálculos: Si N termina en 0 se cambia por el doble Si N termina en 3 se cambia por la décima parte De otro modo matiene su valor inicial
  • 60. CONSTRUCCION DE ALGORITMOS Proceso Problema7 Leer n; Segun n mod 10 Hacer 0: n <- n*2; Escribir "Doble de N = ", n; 3: n <- n/10; Escribir "Decima parte de N = ", n; De Otro Modo: n <- n; Escribir "Numero N = ", n ; FinSegun FinProceso