Académique Documents
Professionnel Documents
Culture Documents
CAPITULO #3:
ESTUDIO DE ALGORITMOS
Programa
Conjunto instrucciones = resultados
inicio
lectura
VARIABLES Y
CONSTANTES
//Pseudocdigo en PSeInt
Proceso sin_titulo
edad <-0;
anoNac <-0;
anoAct <-0;
Leer anoNac ;
FinProceso
asignacin
Dim edad, anoNac, anoAct As Integer
anoNac = Console.ReadLine()
escritura
fin
Programa
Conjunto instrucciones = resultados
inicio
lectura
asignacin
OPERADORES
Aritmticos
^, *, /, div, \, mod, +, -, &
Relacionales
=, <>, <, >, <=, >=
escritura
fin
Lgicos
no (not), y (and), o (or)
Programa
Conjunto instrucciones = resultados
inicio
lectura
asignacin
EXPRESIONES O TRAS
FUNC.
Expresiones
(5 > 10) o (A < B)
(10 > 5) y (5 < 10+Num)
escritura
fin
Otras funciones
abs(x), arctan(x), sqr(x)
Programacin
Estructurada
Flujos
Secuenciales
Estructuras
SECUENCIALES
Son aquellas en las que una accin (instruccin) sigue a otra en secuencia.
comienzo
Inicio del programa
Cabecera del
programa. Seccin
de declaracin
lectura
Entrada de datos
asignacin
escritura
fin
Proceso de datos
Salida de datos
Fin del programa
Finalizacin
Estructuras de SELECCIN
comienzo
Inicio del programa
lectura
NO
SI
Cabecera del
programa. Seccin
de declaracin
Entrada de datos
condicin
Condicin
asignacin
escritura
fin
Proceso de datos
Cuerpo del
programa
Salida de datos
Fin del programa
Finalizacin
Estructuras REPETITIVAS
Estructuras que repiten una secuencia de instrucciones
NO
condicin
acciones
SI
SI
condicin
acciones
NO
MIENTRAS, WHILE
acciones
condicin
i <= 50
NO
SI
REPETIR HASTA QUE, REPEAT
SI
proceso
i = i +1
NO
Programacin
Estructurada
Flujos
Secuenciales
Estructuras SECUENCIALES
Son
//Pseudocdigo en PSeInt
comienzo
lectura
asignacin
escritura
fin
Proceso SumarDosNumeros
intNum1 <- 0;
intNum2 <- 0;
intSumatoria <- 0;
Escribir "Deme dos numeros";
Leer intNum1, intNum2;
intSumatoria <- intNum1 + intNum2;
Escribir "La suma es = ", intSumatoria;
FinProceso
Estructuras SECUENCIALES
Son
comienzo
lectura
asignacin
escritura
fin
Programacin
Estructurada
Flujos
Secuenciales
Programacin
Estructurada
Flujos
Seleccin
Estructuras de SELECCIN
Pseudocdigo en espaol
condicin
NO
SI
Si {expresion_logica} Entoces
{acciones_por_verdadero}
Sentencia(s)
FinSi
Pseudocdigo en ingles
If {expresion_logica} Then
{acciones_por_verdadero}
End If
Estructuras de SELECCIN
Pseudocdigo en espaol
Si {expresion_logica} Entoces
{acciones_por_verdadero}
NO
condicin
SI
Sino
{acciones_por_falso
FinSi
Sentencia(s)
POR EL NO
Sentencia(s)
POR EL SI
Pseudocdigo en Ingles
If {expresion_logica} Then
{acciones_por_verdadero}
Else
{acciones_por_falso}
End If
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
condicin
fin
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
asignacin
escritura
fin
x Mod y
(5 > 10) o (A < B)
(10 > 5) y (5 < 10)
cos (a) >= 0
no (40 > 2)
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
asignacin
escritura
fin
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
Estructuras de SELECCIN
O de decisin:
comienzo
lectura
NO
CONDICIONES
SI
x Mod y
no (40 > 2)
no (40 > 2)
Estructuras de SELECCIN
//Pseudocdigo en PSeInt
Proceso Modulo_MOD
x<-0;
z<-0;
Escribir "Ingrese valores para X y Z";
Leer x,z;
Si (x Mod z) = 0 Entonces
Escribir x, " ES exactamente divisible para ", z;
Sino
Escribir x, " NO es exactamente divisible para ", z;
FinSi
FinProceso
Estructuras de SELECCIN
Son estructuras en las que si la evaluacin de la expresin lgica resulta ser verd
V
condicin 1
Pseudocdigo en ingles
Sentencia(s) 1
F
condicin 2
F
condicin n
F
Sentencia(s) N+1
Sentencia(s) 2
Sentencia(s) N + 1
if {expresion_logica} then
<accin(es) SI 1>
else
if {expresion_logica} then
<accin(es) SI 2>
else
if {expresion_logica} then
<accin(es) SI n+1>
else
.
endif
.
endif
//Pseudocdigo en PSeInt
Proceso Mayor_TresNum
a<-0;
b<-0;
c<-0;
mayor<-0;
Escribir "Ingrese tres numero";
Leer a,b,c;
Si a>b Entonces
Si a>c Entonces
mayor<-a;
Sino
Si c>b Entonces
mayor<-c;
FinSi
FinSi
FinSi
Escribir "El mayor es A = ,mayor;
FinProceso
Estructuras de decisin
anidadas
'Codificado en Visual Basic
Module Mayor_TresNum
Public Sub Main()
Dim a, b, c, mayor As Integer
a=0
b=0
c=0
mayor = 0
Console.WriteLine("Ingrese tres numero")
a = Console.ReadLine()
b = Console.ReadLine()
c = Console.ReadLine()
If a > b Then
If a > c Then
mayor = a
Else
If c > b Then
mayor = c
End If
End If
End If
Console.WriteLine("El mayor es = " & mayor)
Console.ReadLine()
End Sub
End Module
Pseudocdigo en espaol
Segn_sea {variable_numerica} hacer
condicin
1
Sentencia(s)
S1
n
Sentencia(s)
S2
Sentencia(s)
Sn
{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
Pseudocdigo en Ingles
condicin
<accin(es)>
1
Sentencia(s)
S1
n
Sentencia(s)
S2
Sentencia(s)
Sn
//Pseudocdigo en PSeInt
Proceso Segun_ParesImpares
Escribir "deme un nmero del 1 al 10";
Leer num;
Segun num hacer
2, 4, 6, 8, 10:
Escribir "El nmero es PAR";
1, 3, 5, 7, 9:
Escribir "El nmero es IMPAR";
De Otro Modo:
Escribir "Nmero fuera de rango de entre el 1 al 10";
FinSegun
FinProceso
Programacin
Estructurada
Flujos
Simples
If Then End If
Anidados
Seleccin
Dobles
If Then- Else End If
Mltiples
Select Case Case Else End Select
Programacin
Estructurada
Flujos
Secuenciales
Programacin
Estructurada
Flujos
Repetitivas
Estructuras REPETITIVAS
NO
condicin
acciones
SI
SI
condicin
acciones
NO
MIENTRAS, WHILE
acciones
condicin
i <= 50
NO
SI
REPETIR HASTA QUE, REPEAT
SI
proceso
i = i +1
NO
Estructuras REPETITIVAS
Mientras,
Pseudocdigo en espaol
comienzo
lectura
condicin
SI
acciones
fin
MIENTRAS - WHILE
NO
While condition
[ statements ]
[ Exit While ]
[ statements ]
End While
Estructuras REPETITIVAS
//Pseudocdigo en PSeInt
Proceso Mientras_SumaPares
intSumaPares <- 0;
intContador <- 0;
intPar <- 0;
Mientras (intContador < 10) Hacer
intPar <- intPar + 2;
intContador <- intContador + 1;
Escribir intContador, " Par = [",intPar, "]";
intSumaPares <- intSumaPares + intPar;
FinMientras
Escribir "Suma 10 primeros pares es ", intSumaPares;
FinProceso
Estructuras REPETITIVAS
'Codificado en Visual Basic
Module Segun_ParesImpares
Public Sub Main()
Console.WriteLine("ESTRUCTURA REPETITIVA WHILE")
Dim intSumaPares, intContador, intPar As Integer
intSumaPares = 0
intContador = 0
intPar = 0
While (intContador < 10)
intPar = intPar + 2
intContador = intContador + 1
Console.WriteLine(intContador & " Par = [" & intPar & "]")
intSumaPares = intSumaPares + intPar
End While
Console.WriteLine("Suma 10 primeros pares es " & _
intSumaPares)
Console.ReadLine()
End Sub
Estructuras REPETITIVAS
NO
condicin
acciones
SI
SI
condicin
acciones
NO
MIENTRAS, WHILE
acciones
condicin
i <= 50
NO
SI
REPETIR HASTA QUE, REPEAT
SI
proceso
i = i +1
NO
Estructuras REPETITIVAS
Hacer-Mientras, Do
comienzo
lectura
acciones
SI
condicin
NO
fin
HACER MIENTRAS
DO - WHILE
Pseudocdigo en espaol
Hacer
<accin S1>
<accin Sn>
Mientras <condicin>
Pseudocdigo en ingls
Do
[ statements ]
[ Exit Do ]
[ statements ]
Loop { While } condition
Estructuras REPETITIVAS
Hacer-Mientras, Do
Estructuras REPETITIVAS
NO
condicin
acciones
SI
SI
condicin
acciones
NO
MIENTRAS, WHILE
acciones
condicin
i <= 50
NO
SI
REPETIR HASTA QUE, REPEAT
SI
proceso
i = i +1
NO
Estructuras REPETITIVAS
Repetir Hasta-Que, Do
comienzo
lectura
Pseudocdigo en espaol
Repetir
{secuencia_de_acciones}
Hasta Que {expresion_logica}
acciones
Pseudocdigo en ingls
NO
condicin
SI
fin
Do
[ statements ]
[ Exit Do ]
[ statements ]
Loop { Until } condition
Estructuras REPETITIVAS
Repetir Hasta-Que, Do
//Pseudocdigo en PSeInt
Proceso Repetir_SumaPares
intSumaPares <- 0;
intContador <- 0;
intPar <- 0;
Repetir
intPar <- intPar + 2;
intContador <- intContador + 1;
Escribir intContador, " Par = [",intPar, "]";
intSumaPares <- intSumaPares + intPar;
Hasta Que (intContador >= 10)
Escribir "Suma 10 primeros pares es ", intSumaPares;
FinProceso
Estructuras REPETITIVAS
Repetir Hasta-Que, Do
Estructuras REPETITIVAS
NO
condicin
acciones
SI
SI
condicin
acciones
NO
MIENTRAS, WHILE
acciones
condicin
i <= 50
NO
SI
REPETIR HASTA QUE, REPEAT
SI
proceso
i = i +1
NO
Estructuras REPETITIVAS
Desde-Para,
comienzo
Pseudocdigo en espaol
lectura
i=1
F
i <= 50
V
Pseudocdigo en ingls
proceso
i = i +1
fin
DESDE PARA
FOR
Estructuras REPETITIVAS
Desde-Para,
Estructuras REPETITIVAS
//Pseudocdigo en PSeInt
Proceso Para_SumaPares
intSumaPares <- 0;
intContador <- 0;
intPar <- 0;
Para intContador<-1 Hasta 10 Con Paso 1 Hacer
intPar <- intPar + 2;
intSumaPares <- intSumaPares + intPar;
Escribir intContador, " Par = [",intPar, "]";
FinPara
Escribir "Suma 10 primeros pares es ", intSumaPares;
FinProceso
Estructuras REPETITIVAS
'Codificado en Visual Basic
Module Para_SumaPares
Public Sub Main()
Console.WriteLine("ESTRUCTURA REPETITIVA FOR")
Dim intSumaPares, intPar As Integer
intSumaPares = 0
intPar = 0
For intContador As Integer = 1 To 10
intPar = intPar + 2
Console.WriteLine(intContador & " Par = [" & intPar & "]")
intSumaPares = intSumaPares + intPar
Next
Console.WriteLine("Suma 10 primeros pares es " & intSumaPares)
Console.ReadLine()
End Sub
End Module
Estructuras REPETITIVAS
Presentar la suma de N nmeros
ANLISIS
Leer <nmero1> y sumarlo en <sumatoria>, leer <nmero2> y sumarlo en <sumatoria>, leer
<nmeron>y sumarlo en <sumatoria>.
DISEO
Proceso SumarN_Numeros
numero <- 0;
sumatoria <- 0;
contador <- 1;
Escribir "deme el limite de num a sumar";
Leer limite;
Mientras (limite >= contador) Hacer
Escribir "deme num ", contador ;
Leer numero;
sumatoria <- sumatoria + numero;
contador <- contador + 1;
FinMientras
Escribir "La sumatoria es: " ,sumatoria;
FinProceso
Programacin
Estructurada
Flujos
Secuenciales
Programacin
Estructurada
Flujos
F. C.
SECUENCIALES
Programacin
Estructurada
Flujos
F. C.
SELECTIVOS
Programacin
Estructurada
Flujos
F. C.
REPETITIVOS
Programacin
Estructurada
Flujos
R E T O
Repetitivas
Estructuras REPETITIVAS
RETO
Presentar la serie del Fibinacci = 0, 1, 1, 2, 3, 5, 8, 13, 21,
ANLISIS
Los primeros nmeros inicializados deberan ser. CERO 0 y UNO 1
El siguiente nmero es la suma de un par de nmeros anteriores, es decir 1 = 0+1, 2 = 1 + 1
Presento 0 (cero)
Fibo = 0 + 1 = 1
Fibo = 1 + 0 = 1
Fibo = 1 + 1 = 2
Fibo = 2 + 1 = 3
Fibo = 3 + 2 = 5
Fibo = 5 + 3 = 8
Fibo = 8 + 5 = 13
Estructuras REPETITIVAS
RETO
Valor
inicial = 0
Valor
inicial = 1
FIBO
FIBO
NUMERO
AUX = FIBO
FIBO
FIBO
NUMERO
AUX = FIBO
FIBO
FIBO
NUMERO
Presento 0 (cero)
Fibo = 0 + 1 = 1
Fibo = 1 + 0 = 1
Fibo = 1 + 1 = 2
Fibo = 2 + 1 = 3
Fibo = 3 + 2 = 5
Fibo = 5 + 3 = 8
Fibo = 8 + 5 = 13
aux = fibo
fibo = numero
numero = aux
Resumen
CAPITULO #3:
ESTUDIO DE ALGORITMOS
Conceptos Claves:
Bucles infinitos: Aquellos en los que por la condicin especificada por el program
Conceptos Claves:
Referencias:
Bibliogrficas
MATRICULATE AL CURSO