Sie sind auf Seite 1von 19



  

˜  
   



  

 

  
    
   
c  
   
 c  



V 

 


ï 

Está
Es una técnica
técnica quepermite
permite representar
representar el algoritmo

  
gráficamenteunlas lenguaje
mediante
operaciones estructurado,
más y
estructuras que
facilitando su seposterior
van a Inicio
realizar, mediante una
codificación. Instrucción 1
simbología estándar, con Instrucción 2
un único punto de inicio y Si condición entonces
Instrucción 3
uno de finalización. ..
.
Instrucción n
Fin

c  
   
 c  



a 

>ada instrucción que se va a realizar

debe comenzar por un ´ , ejemplo:
Muestre, Haga, Lea, etc.

 Se debe mantener una   


 o sangría
sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

 La representación de las    son


similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

c  
   
 c  



a 

c  ï  
         

 ï     


     

     .

c      


  
      

>   ï    


 
  
  
 
  
  


 ï  
         

c  
   
 c  



a
  
ï      

V     

      

V   

ï  

c  
   
 c  



a
 
 a 
Está dada por el enunciado
del problema, el cuál debe ser
claro y completo
Es importante que
conozcamos exactamente
que se desea.
Mientras qué esto no se
comprenda, no tiene caso
pasar a la siguiente etapa.

c  
   
 c  



a
 
 a 

* 
>apturar un grupo de números
hasta que se digite 0, e indicar
cuales de ellos son punto silla.

Un número punto silla es aquel


que dado tres valores, el valor
central es, es mayor que el de su
izquierda y menor que el de su
derecha.
c  
   
 c  



a
 
 a 

* 
|i los números digitados por el
usuario son:
5,4,12,15,6,20,32

Los números punto silla serán:


12 y 20

c  
   
 c  



a
 V !  a 

Los datos de Las operaciones que es necesario


entrada que nos Los números
hacer, en esteque el para
caso, usuario va ael
hallar
suministran digitar,
punto es necesario
silla
El programa deberáentender
se deberá compararlos
mostrar que
el
segundo
estos nonumero
se van digitado
a ingresarconalel
números punto silla, por lo tanto
El proceso que primero
mismo y el tercero,
tiempo, por estosehace
tanto debe
es
queun mejor
sesolo ir
generen evaluando
tresde cada
términos :
debe realizarse usar espacio memoria
número. num_sig y
num_ant , num_m,
por ejemplo: num
nroT(para saber cuantos números
Los datos de se han digitado)
salida o resultados
que se esperan

c  
   
 c  



V 
 
  "#  
No existe un valor
dentro del programa
>onstantes que debe permanecer
constante

Variables
num,
num_ant,
num_sig, num_m
nroT

c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num Para evitar que el
Mientras que (num != 0)
Haga nroT =nroT+1 programa ejecute
caso(nroT)
caso 1: Haga num_ant=num instrucciones con
caso 2: Haga num_m=num
caso 3: valores no requeridos,
Haga num_sig=num
|i ((num_m>num_ant) y (num_m<num_sig)) se captura antes de
Muestre³Es punto silla", num_m
Otro caso comenzar el ciclo
Haga num_ant=num_m;
num_m=num_sig;
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m
Fin >aso
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´ Es necesario ir
>apture num
Mientras que (num != 0) contando cuantos
Haga nroT =nroT+1
caso(nroT) números va digitando
caso 1: Haga num_ant=num
caso 2: Haga num_m=num el usuario, ya que
caso 3:
Haga num_sig=num para hallar el punto
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m silla se debe tener al
Otro caso
Haga num_ant=num_m; menos tres valores.
num_m=num_sig;
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m
Fin >aso
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num
Mientras que (num != 0) |i el usuario solo ha
Haga nroT =nroT+1
caso(nroT) digitado un valor, ese
caso 1: Haga num_ant=num
caso 2: Haga num_m=num inicialmente será el
caso 3:
Haga num_sig=num numero anterior
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m num_ant
Otro caso
Haga num_ant=num_m;
num_m=num_sig;
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m
Fin >aso
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num
Mientras que (num != 0)
Haga nroT =nroT+1 Al digitar un segundo
caso(nroT)
caso 1: Haga num_ant=num valor este se
caso 2: Haga num_m=num
caso 3: almacenará en
Haga num_sig=num
|i ((num_m>num_ant) y (num_m<num_sig)) num_m
Muestre³Es punto silla", num_m
Otro caso
Haga num_ant=num_m;
num_m=num_sig;
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m
Fin >aso
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num Al digitar el tercer
Mientras que (num != 0)
Haga nroT =nroT+1 valor, este será
caso(nroT)
caso 1: Haga num_ant=num almacenado en
caso 2: Haga num_m=num
caso 3: num_sig y se podrá
Haga num_sig=num
|i ((num_m>num_ant) y (num_m<num_sig)) hacer la
Muestre³Es punto silla", num_m
Otro caso correspondiente
Haga num_ant=num_m;
num_m=num_sig; comparación, para
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig)) mostrar el número
Muestre³Es punto silla", num_m
Fin >aso punto silla.
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num
Mientras que (num != 0) |i el usuario digita
Haga nroT =nroT+1
caso(nroT) más números, se
caso 1: Haga num_ant=num
caso 2: Haga num_m=num deberán modificar los
caso 3:
Haga num_sig=num contenidos de
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m num_ant, num_m y
Otro caso
Haga num_ant=num_m; num_sig, usando la
num_m=num_sig;
num_sig=num; opción otro caso de la
|i ((num_m>num_ant) y (num_m<num_sig))
Muestre³Es punto silla", num_m estructura caso.
Fin >aso
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num Antes de volver a
Mientras que (num != 0)
Haga nroT =nroT+1 evaluar la condición
caso(nroT)
caso 1: Haga num_ant=num del ciclo, es necesario
caso 2: Haga num_m=num
caso 3: volver a capturar otro
Haga num_sig=num
|i ((num_m>num_ant) y (num_m<num_sig)) valor, de lo contrario,
Muestre³Es punto silla", num_m
Otro caso él programa quedaría
Haga num_ant=num_m;
num_m=num_sig; en un ciclo indefinido,
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig)) ya que el número
Muestre³Es punto silla", num_m
Fin >aso nunca sería igual a 0.
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a 
cnicio
Haga num=0, num_ant=0, num_sig=0, nroT=0
Mostrar ³Digite número´
>apture num Des pues de haber
Mientras que (num != 0)
Haga nroT =nroT+1 evaluado el ciclo, es
caso(nroT)
caso 1: Haga num_ant=num necesario confirmar si
caso 2: Haga num_m=num
caso 3: el número de valores
Haga num_sig=num
|i ((num_m>num_ant) y (num_m<num_sig)) digitados en realidad
Muestre³Es punto silla", num_m
Otro caso fue de al menos tres,
Haga num_ant=num_m;
num_m=num_sig; de lo contrario se le
num_sig=num;
|i ((num_m>num_ant) y (num_m<num_sig)) debe indicar al usuario
Muestre³Es punto silla", num_m
Fin >aso que sucedió.
Muestre"Escriba un Numero para salir 0"
>apture num
Fin Mientras
|i (nroT<3)
Muestre "Debe digitar por lo menos tres numeros"
Fin
c  
   
 c  



a      
Èinclude <stdio.h>
Èinclude <conio.h>
void main()
{ int num,num_m,num_ant,num_sig,nroT=0;
clrscr();
printf("Escriba un Numero para salir 0"); scanf("%d",&num);
while(num!=0)
{ nroT++;
switch(nroT)
{ case 1: { num_ant=num; break;}
case 2: { num_m=num; break;}
case 3:
{ num_sig=num;
if ((num_m>num_ant) &&(num_m<num_sig))
printf ("%d es punto silla", num_m);
break;}
default:
{ num_ant=num_m; num_m=num_sig;
num_sig=num;
if ((num_m>num_ant) &&(num_m<num_sig))
printf ("%d es punto silla", num_m); break; }
}
printf("Escriba un Numero para salir 0"); scanf("%d",&num);
}
if (nroT<3)
{ printf ("Debe digitar por lo menos tres numeros"); }
getch();
}
c  
   
 c  




Das könnte Ihnen auch gefallen