algoritmos - martin nievas
TRANSCRIPT
1/24
Algoritmos
Nievas Martin
11 de abril de 2018
Rev 2.0
2/24
Algoritmos
Algoritmo?
3/24
Algoritmos
“La solucion a cualquier problema de computo involucra unaserie de acciones ejecutadas en un orden especıfico” (Deitel)
“Informalmente, un algoritmo es un procedimiento de calculobien definido que toma un cierto valor, o conjunto de valores,como entrada y produce un cierto valor, o conjunto de valores,como salida. Un algoritmo es, entonces, una secuencia depasos computacionales que transforman la entrada en unasalida.”(Cormen)
4/24
Algoritmos
Entrada Proceso Salida
5/24
¿Como escribo un algoritmo si no se aun nada deprogramacion?
I Lenguaje natural,I pseudocodigo,I diagramas de flujo yI lenguajes de programacion.
5/24
¿Como escribo un algoritmo si no se aun nada deprogramacion?
I Lenguaje natural,
I pseudocodigo,I diagramas de flujo yI lenguajes de programacion.
5/24
¿Como escribo un algoritmo si no se aun nada deprogramacion?
I Lenguaje natural,I pseudocodigo,
I diagramas de flujo yI lenguajes de programacion.
5/24
¿Como escribo un algoritmo si no se aun nada deprogramacion?
I Lenguaje natural,I pseudocodigo,I diagramas de flujo y
I lenguajes de programacion.
5/24
¿Como escribo un algoritmo si no se aun nada deprogramacion?
I Lenguaje natural,I pseudocodigo,I diagramas de flujo yI lenguajes de programacion.
6/24
Lenguaje Natural
Pasos para cursar una materia
I Entrar a claseI Poner AtencionI Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a clase
I Poner AtencionI Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner Atencion
I Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notas
I Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notasI Estudiar notas
I Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notasI Estudiar notasI Hacer ejercicios
I Hacer parcialI Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcial
I Si no promociono, hacer finalI Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer final
I Terminar
6/24
Lenguaje Natural
Pasos para cursar una materiaI Entrar a claseI Poner AtencionI Tomar notasI Estudiar notasI Hacer ejerciciosI Hacer parcialI Si no promociono, hacer finalI Terminar
7/24
PseudocodigoAlgoritmo para determinar si un numero es par
Leer numeroSi el resto de la division entre numero y 2 = 0 entonces
resultado = parsi no
resultado = imparfin si
8/24
Diagrama de FlujoAlgoritmo para determinar si un numero es par
resultado = impar resultado = par
número %2 = 0 sino
Leer número
9/24
Pseudocodigo/Diagrama de flujoAsignaciones
altura = 10base = altura + 10superficie = base *altura
altura = 10base = altura +10superficie = base * altura
9/24
Pseudocodigo/Diagrama de flujoAsignaciones
altura = 10base = altura + 10superficie = base *altura
altura = 10base = altura +10superficie = base * altura
10/24
Pseudocodigo/Diagrama de flujoBloque si simple
si fin > incio entoncesdelta = fin - inicio
fin si
delta = fin - inicio
fin > inicio si
10/24
Pseudocodigo/Diagrama de flujoBloque si simple
si fin > incio entoncesdelta = fin - inicio
fin sidelta = fin - inicio
fin > inicio si
11/24
Pseudocodigo/Diagrama de flujoBloque si doble
si fin > incio entoncesdelta = fin - inicio
si nodelta = inicio - fin
fin si
delta = fin - inicio
fin > inicio si
delta = inicio - fin
no
11/24
Pseudocodigo/Diagrama de flujoBloque si doble
si fin > incio entoncesdelta = fin - inicio
si nodelta = inicio - fin
fin sidelta = fin - inicio
fin > inicio si
delta = inicio - fin
no
12/24
Pseudocodigo/Diagrama de flujoComo determino quien es el mayor y menor?
si edad n > edad c entoncesmayor = edad nmenor = edad c
si no, si edad n < edad centonces
mayor = edad cmenor = edad n
si nomayor = edad nmenor = edad n
fin si
edad_n >edad_c sino
edad_n < edad_c
mayor = edad_nmenor = edad_csino
mayor = edad_cmenor = edad_n
mayor = edad_nmenor = edad_n
12/24
Pseudocodigo/Diagrama de flujoComo determino quien es el mayor y menor?
si edad n > edad c entoncesmayor = edad nmenor = edad c
si no, si edad n < edad centonces
mayor = edad cmenor = edad n
si nomayor = edad nmenor = edad n
fin si
edad_n >edad_c sino
edad_n < edad_c
mayor = edad_nmenor = edad_csino
mayor = edad_cmenor = edad_n
mayor = edad_nmenor = edad_n
13/24
Pseudocodigo/Diagramas de flujo
edad_n >edad_c sino
edad_n < edad_c
mayor = edad_nmenor = edad_csino
mayor = edad_cmenor = edad_n
mayor = edad_nmenor = edad_n
14/24
Estructuras repetitivas
15/24
Estructuras repetitivasMientras
16/24
Estructuras repetitivasMientras
contador = 0mientras contador ≤ 10hacer
imprimir contadorcontador = contador + 1
fin mientras
contador = contador +1
contador ≤ 10 si
SPOILER ALERT
16/24
Estructuras repetitivasMientras
contador = 0mientras contador ≤ 10hacer
imprimir contadorcontador = contador + 1
fin mientras
contador = contador +1
contador ≤ 10 si
SPOILER ALERT
17/24
Estructuras repetitivasMientras
contador = 0mientras contador ≤ 10hacer
imprimir contadorcontador = contador + 1
fin mientras
contador = contador +1
contador ≤ 10 si
contadoro
18/24
Estructuras repetitivasHacer Mientras
19/24
Estructuras repetitivasHacer Mientras
contador = 0hacer
contador = contador + 1mientras que contador ≤ 10
contador = contador +1
contador ≤ 10 si
19/24
Estructuras repetitivasHacer Mientras
contador = 0hacer
contador = contador + 1mientras que contador ≤ 10
contador = contador +1
contador ≤ 10 si
20/24
Estructuras repetitivasHacer Mientras
contador = 0hacer
contador = contador ∗ contador + 10mientras que contador ≤ 100
21/24
Estructuras repetitivasBloque iterativo para
22/24
Estructuras repetitivasBloque iterativo para
acumulador = 0para contador desde 0 hasta 100 hacer
acumulador = acumulador + 1
fin para
contador = 0; contador ≤ 100; contador +1
acumulador = acumulador + 1
acumulador = 0
22/24
Estructuras repetitivasBloque iterativo para
acumulador = 0para contador desde 0 hasta 100 hacer
acumulador = acumulador + 1
fin para
contador = 0; contador ≤ 100; contador +1
acumulador = acumulador + 1
acumulador = 0
23/24
Extras
Entrada y salida de datos
24/24
Entrada y salida de datosEntrada de datos
imprimir: Ingrese la cantidad de materias
leer: cantidad materias
cantidad_materiasi
Ingrese cantidad de materiaso
24/24
Entrada y salida de datosEntrada de datos
imprimir: Ingrese la cantidad de materias
leer: cantidad materias
cantidad_materiasi
Ingrese cantidad de materiaso
25/24
Consultas:[email protected]