algoritmos - martin nievas

45
1/24 Algoritmos Nievas Martin 11 de abril de 2018 Rev 2.0

Upload: others

Post on 16-Oct-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritmos - Martin Nievas

1/24

Algoritmos

Nievas Martin

11 de abril de 2018

Rev 2.0

Page 2: Algoritmos - Martin Nievas

2/24

Algoritmos

Algoritmo?

Page 3: Algoritmos - Martin Nievas

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)

Page 4: Algoritmos - Martin Nievas

4/24

Algoritmos

Entrada Proceso Salida

Page 5: Algoritmos - Martin Nievas

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.

Page 6: Algoritmos - Martin Nievas

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.

Page 7: Algoritmos - Martin Nievas

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.

Page 8: Algoritmos - Martin Nievas

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.

Page 9: Algoritmos - Martin Nievas

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.

Page 10: Algoritmos - Martin Nievas

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

Page 11: Algoritmos - Martin Nievas

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

Page 12: Algoritmos - Martin Nievas

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

Page 13: Algoritmos - Martin Nievas

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

Page 14: Algoritmos - Martin Nievas

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

Page 15: Algoritmos - Martin Nievas

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

Page 16: Algoritmos - Martin Nievas

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

Page 17: Algoritmos - Martin Nievas

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

Page 18: Algoritmos - Martin Nievas

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

Page 19: Algoritmos - Martin Nievas

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

Page 20: Algoritmos - Martin Nievas

8/24

Diagrama de FlujoAlgoritmo para determinar si un numero es par

resultado = impar resultado = par

número %2 = 0 sino

Leer número

Page 21: Algoritmos - Martin Nievas

9/24

Pseudocodigo/Diagrama de flujoAsignaciones

altura = 10base = altura + 10superficie = base *altura

altura = 10base = altura +10superficie = base * altura

Page 22: Algoritmos - Martin Nievas

9/24

Pseudocodigo/Diagrama de flujoAsignaciones

altura = 10base = altura + 10superficie = base *altura

altura = 10base = altura +10superficie = base * altura

Page 23: Algoritmos - Martin Nievas

10/24

Pseudocodigo/Diagrama de flujoBloque si simple

si fin > incio entoncesdelta = fin - inicio

fin si

delta = fin - inicio

fin > inicio si

Page 24: Algoritmos - Martin Nievas

10/24

Pseudocodigo/Diagrama de flujoBloque si simple

si fin > incio entoncesdelta = fin - inicio

fin sidelta = fin - inicio

fin > inicio si

Page 25: Algoritmos - Martin Nievas

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

Page 26: Algoritmos - Martin Nievas

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

Page 27: Algoritmos - Martin Nievas

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

Page 28: Algoritmos - Martin Nievas

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

Page 29: Algoritmos - Martin Nievas

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

Page 30: Algoritmos - Martin Nievas

14/24

Estructuras repetitivas

Page 31: Algoritmos - Martin Nievas

15/24

Estructuras repetitivasMientras

Page 32: Algoritmos - Martin Nievas

16/24

Estructuras repetitivasMientras

contador = 0mientras contador ≤ 10hacer

imprimir contadorcontador = contador + 1

fin mientras

contador = contador +1

contador ≤ 10 si

SPOILER ALERT

Page 33: Algoritmos - Martin Nievas

16/24

Estructuras repetitivasMientras

contador = 0mientras contador ≤ 10hacer

imprimir contadorcontador = contador + 1

fin mientras

contador = contador +1

contador ≤ 10 si

SPOILER ALERT

Page 34: Algoritmos - Martin Nievas

17/24

Estructuras repetitivasMientras

contador = 0mientras contador ≤ 10hacer

imprimir contadorcontador = contador + 1

fin mientras

contador = contador +1

contador ≤ 10 si

contadoro

Page 35: Algoritmos - Martin Nievas

18/24

Estructuras repetitivasHacer Mientras

Page 36: Algoritmos - Martin Nievas

19/24

Estructuras repetitivasHacer Mientras

contador = 0hacer

contador = contador + 1mientras que contador ≤ 10

contador = contador +1

contador ≤ 10 si

Page 37: Algoritmos - Martin Nievas

19/24

Estructuras repetitivasHacer Mientras

contador = 0hacer

contador = contador + 1mientras que contador ≤ 10

contador = contador +1

contador ≤ 10 si

Page 38: Algoritmos - Martin Nievas

20/24

Estructuras repetitivasHacer Mientras

contador = 0hacer

contador = contador ∗ contador + 10mientras que contador ≤ 100

Page 39: Algoritmos - Martin Nievas

21/24

Estructuras repetitivasBloque iterativo para

Page 40: Algoritmos - Martin Nievas

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

Page 41: Algoritmos - Martin Nievas

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

Page 42: Algoritmos - Martin Nievas

23/24

Extras

Entrada y salida de datos

Page 43: Algoritmos - Martin Nievas

24/24

Entrada y salida de datosEntrada de datos

imprimir: Ingrese la cantidad de materias

leer: cantidad materias

cantidad_materiasi

Ingrese cantidad de materiaso

Page 44: Algoritmos - Martin Nievas

24/24

Entrada y salida de datosEntrada de datos

imprimir: Ingrese la cantidad de materias

leer: cantidad materias

cantidad_materiasi

Ingrese cantidad de materiaso

Page 45: Algoritmos - Martin Nievas

25/24

Consultas:[email protected]