clases de algo

28
Problema / Actividad Análisis Datos de Entrada Procesos a Desarrollar Datos o Información de Respuestas Algoritmos (A) Seudo código Algoritmos (B) Flujograma Algoritmos (C) Programa Errores de Sintaxis Errores Lógicos -Entender el Problema -Identificar los datos con que se cuenta -Identificar Que datos se leerán -Verificar si no hace falta Información -Identificar métodos o formas de Solucionar el problema -Seleccionar el métodos mas corto y entendible. -Verificar mediante procesos manuales el Método seleccionado ESTRUCTURA DEL ALGORITMO. ENTRADA PROCESO SALIDA 1-Inicio 2-Definición de Variables y Constantes 3 -Lectura de Datos N- Procesos de Solución N- Datos o Información de Salida N+1- FIN PROCESO DE ANALISIS DE PROBLEMAS

Upload: aarey

Post on 14-Apr-2016

224 views

Category:

Documents


2 download

DESCRIPTION

Algoritmos

TRANSCRIPT

Page 1: Clases de Algo

Problema /

ActividadAnálisis

Datos de Entrada

Procesos a

Desarrollar

Datos o Información de

Respuestas

Algoritmos (A)

Seudo código

Algoritmos (B)

Flujograma

Algoritmos (C)

Programa

Errores de Sintaxis

Errores Lógicos

-Entender el Problema

-Identificar los datos con que se cuenta

-Identificar Que datos se leerán

-Verificar si no hace falta Información

-Identificar métodos o formas

de Solucionar el problema

-Seleccionar el métodos mas corto y

entendible.

-Verificar mediante procesos manuales el

Método seleccionado

ESTRUCTURA DEL ALGORITMO.

ENTRADA PROCESO SALIDA

1-Inicio

2-Definición de Variables y Constantes

3 -Lectura de Datos

N- Procesos de Solución N- Datos o Información de Salida

N+1- FIN

PROCESO DE ANALISIS DE PROBLEMAS

Page 2: Clases de Algo

PARTES PRINCIPALES DE UN ALGORITMO

ENTRADA

PROCESO

SALIDA

Definición de variables

Definición de Constantes

Lectura de Variables

Desarrollo de los procesos, para la solución del problema.

Impresión de datos de salida.

Page 3: Clases de Algo

Definición de términos importantes

VARIABLE

CONSTANTE

CONTADOR

ACUMULADOR

Elemento que cambia durante la ejecución de un proceso

Elemento que no cambia durante la ejecución de un proceso

Variable que se incrementa en forma constante.

Variable que se incrementa en forma no constante.

Page 4: Clases de Algo

No necesariamente se va a utilizar Inicio y Fin, se puede utilizar algo parecido como empezar y Finalización.

Asignación, este proceso lo vamos a realizar tanto al inicio del problema como también durante el desarrollo de los procesos.

Ejemplo: Edad=0, Sueldo=0, G=9.89, Porcentaje=0.20, Nombre$,

Comentarios, se utilizara para poder saber en un momento determinado que hace un párrafo de Seudo código.

Ejemplo: *determina el promedio de sueldos, o /* determina el promedio de sueldos

Palabras reservadas: Inicio, Fin, Definir, Leer, Hacer, Imprimir,

ESTRUCTURAS DE CONTROL Las estructuras de control tienen una finalidad bastante definida: su objetivo es ir señalando el

orden en que tienen que sucederse los pasos de un algoritmo. Veamos un ejemplo: supongamos que acabamos de mostrar un mensaje en la pantalla que pregunte al usuario "¿desea seguir adelante?".

Obviamente, de la respuesta del usuario va a depender la siguiente acción del programa. Por ejemplo, si este mensaje se nos presenta tras haber pulsado un botón de cerrar la aplicación, si nosotros elegimos "Sí", la aplicación se cerrará, y si elegimos "No", la aplicación seguirá adelante. El programador tiene que haber escrito código para las dos posibilidades, aunque cuando el programa esté funcionando, sólo se elegirá una.

Las estructuras de control son de tres tipos: Secuenciales Selectivas Repetitivas

Page 5: Clases de Algo

ALGORITMOS SECUENCIALES

A

B

C

D

E

Los procesos se desarrollan en

Forma Secuenciales, uno

después del otro; no existen

bifurcaciones.

Page 6: Clases de Algo

Estructuras SECUENCIALES. Una estructura de control secuencial, en realidad, no es más que escribir un paso del algoritmo detrás de otro, el que primero se haya escrito será el que primero se ejecute. Veamos un ejemplo: Determina la Nota final de un estudiante, este realiza 5 evaluaciones, con ponderación del 20.00% c/u.INICIODEFINIR N1=0, N2=0, N3=0, N4=0, N5=0, NF=0, POR=0.20LEER N1,N2,N3,N4,N5HACER NF=(N1+N2+N3+N4+N5)*PORIMPRIMIR “LA NOTA FINAL ES :”, NFFIN

Ejercicio: 1.- Hacer un algoritmo determine el sueldo de un empleado el cual se determina con el 25 % de la venta.2.- Hacer un algoritmo que determine el sueldo de un empleado, si se hacen los siguientes descuentos: ISSS=5%, Renta=10% y AFP=3%3.- Hacer un algoritmo que determine el promedio de Edad de 5 personas4.- Que determine el promedio de la primera evaluación, el cual se calculo de la siguiente forma: 10% de asistencia, 20% examen Corto y el 70 % de Examen escrito, al final debera imprimir Carnet, Nombre y Nota.5. Hacer un algoritmo que determine el porcentaje de votos de los partidos A, B y C.

Page 7: Clases de Algo

Estructuras SELECTIVAS Estas estructuras se utilizan para TOMAR DECISIONES (por eso también se llaman estructuras de decisión o alternativas). Lo que se hace es EVALUAR una condición, y, a continuación, en función del resultado, se lleva a cabo una opción u otra. Alternativas SIMPLES Son los conocidos "si... entonces". Se usan de la siguiente manera (una vez más, la escritura es más o menos personal, siempre que las intenciones queden claras para todos): yo quiero evaluar una condición, y si se cumple (es decir, si es cierta), entonces realizaré una serie de pasos. Esto lo podemos escribir así: SI se cumple la condición, ENTONCES:

Hago el paso 1 .... Hago el paso N

fin del SI

En las estructuras selectivas se evalúa una condición y en función del resultado de la misma se realiza una opción u otra. Las condiciones se especifican usando expresiones lógicas. La representación de una estructura selectiva se hace con palabras en pseudocodigo Si…..Entonces…Sino….Fin Si.. Estan se dividen en:Simples, Dobles y Múltiples.La estructura Simples es Si…..Entonces…..Fin SiLa estructura Doble es Si….Entonces….Sino….Fin Si.La estructura Múltiple es Según Sea

Estructura Simple.Seudocodigo:Si <condición> Entonces

<acciones>Fin Si

Page 8: Clases de Algo

condición

ACCION…

Proceso que se

desarrolla

independientemente

si la condición es verdadera

o falsa

VerdaderoFalso

Entrada

Salida

ALGORITMOS CONDICIONALES (A)

Se ejecuta la acción si la

Condición es verdadera, caso

Contrario no hace nada.

Page 9: Clases de Algo

INICIO

DEF. NUM=0

NUM>0

“POSITIVO”

FIN

LEER NUM

Desarrolle un algoritmo que

Determine si un numero es

Positivo.

Page 10: Clases de Algo

EJERCICIOS:

1. Hacer un algoritmo que lea cinco evaluaciones y determine si un estudiante esta

aprobado.

2.- Hacer un algoritmo que lea cinco evaluaciones y determine si un estudiante esta

reprobado.

3. Hacer un algoritmo que lea un numero y determine si es positivo

4. Hacer un algoritmo que lea un numero y determine si es negativo

5. Hacer un algoritmo que lea un numero y determine si es cero

6. Hacer un algoritmo que determine si un numero es Par

7. Hacer un algoritmo que determine si un numero es Impar

8. Hacer un algoritmo si un numero es múltiplo de 2,4 y 5 a la vez.

Page 11: Clases de Algo

ALGORITMOS CONDICIONALES (B)

condición

ACCION A

Proceso que se

desarrolla

independientemente

si la condición es verdadera

o falsa

VerdaderoFalso

Entrada

Salida

ACCION B

Se ejecuta la acción si la

Condición es verdadera o si

Es falsa.

Page 12: Clases de Algo

INICIO

DEF. NUM=0

NUM>0

“POSITIVO”

FIN

LEER NUM

Desarrolle un algoritmo que

Determine si un numero es

Positivo o no es positivo.

“NO ES POSITIVO”

Page 13: Clases de Algo

Ejercicio

1.- Hacer un algoritmo determine el sueldo de un empleado el cual se determina con el

25 % de la venta.

2.- Hacer un algoritmo que determine el sueldo de un empleado, si se hacen los

siguientes descuentos: ISSS=5%, Renta=10% y AFP=3%

3.- Hacer un algoritmo que determine el promedio de Edad de 5 personas

4.- Que determine el promedio de la primera evaluación, el cual se calculo de la siguiente

forma: 10% de asistencia, 20% examen Corto y el 70 % de Examen escrito, al final

deberá imprimir Carnet, Nombre y Nota.

5. Hacer un algoritmo que determine el porcentaje de votos de los partidos A, B y C.

6.- Hacer un algoritmo que determine el monto de una factura, se vende 8 artículos a

cada uno se le aplica el 15%, al final deberá imprimir el nombre del cliente, del vendedor,

el monto y el total de descuentos.

7.- Hacer un algoritmo que determine el área de un triangulo.

8.- Hacer un algoritmo que determine el promedio de un ciclo, se han cursada 6

asignaturas.

Page 14: Clases de Algo

Estructuras repetitivas

La estructura iterativa o de repetición permite ejecutar

una o varias instrucciones, un número determinado de

veces o, indefinidamente, mientras se cumpla una

condición. Esta estructura ayuda a simplificar los

algoritmos, ahorrando tiempo valioso a quien resuelve

problemas con ayuda del computador

Page 15: Clases de Algo

Condición

Hacer proc. 1

Hacer proc. 2

Hacer Proc. N

Variable Control

FALSO

VERDADER

O

Hacer Proc. N

HACER MIENTRAS

Page 16: Clases de Algo

No. 1

Cuando el proceso es controlado por una variable.

Imprimir 10 veces la palabra UTEC

No. 2

No. 3

Cuando el proceso es controlado por el usuario.

Se da cuando el proceso se genera por

una confirmación del usuario.

Cuando el proceso es controlado por el archivo

(Tabla)Imprimir la planilla hasta que sea fin de

archivo.

CONSIDERACIONES

Page 17: Clases de Algo

Var.Ini, Var.Fin, Incr.

Hacer proc. 1

Hacer proc. 2

Hacer Proc. N

Variable Control

FALSO

VERDADER

O

Hacer Proc. N

HACER-DESDE-HASTA-INCR.

Page 18: Clases de Algo

Estructura de un algoritmo

Inicio

Definición de datos

Lecturas de variables

Hacer proceso 1

Hacer proceso 2

Hacer proceso n

Imprimir Salida1

Imprimir Salida2

Imprimir Salida n

Fin

Entrada

Proces

o

Salida

Page 19: Clases de Algo

Pareja 1

• (A) Hacer un algoritmo

para pintar un cuarto, por

fuera y por dentro.

Page 20: Clases de Algo

Pareja 1

• (A) Hacer un algoritmo

para pintar un cuarto, por

fuera y por dentro.• Considerando:

• 1.- De las 4 paredes, las 4 son iguales en

tamaño

• 2.- La todas las paredes tiene el mismo

tamaño

• 3.- Por cada galón de pintura se pinta 5 mts2

• 4.- La puerta=2mts2, Ventana=1mts2

Page 21: Clases de Algo

Inicio

Definir Alt=0, lar=0,Area=0, Ct=1,

color$, P=2,mts2, V=1mts,

Gal=0

Leer alt,lar, color$

Hacer area =alt*lar

Hacer area=area*2

Hacer area = (area*4)-2p-2v

Hacer Gal=area/5

Hacer Mientras ct<=area

Hacer proceso de pintura

Hacer ct=ct+1

Fin Hacer Mientras

Imprimir “Proceso finalizado”

Fin

Page 22: Clases de Algo

Pareja 2

• (B) Hacer un algoritmo

para pintar un cuarto, por

fuera y por dentro.• Considerando:

• 1.- De las 4 paredes, son parejas iguales

• 2.- Por cada galón de pintura se pinta 5 mts2

• La puerta=2mts2, Ventana=1mts2

Page 23: Clases de Algo

Inicio

Definir Alt1=0, lar1=0, Alt2=0,

lar2=0,Area=0,

Cont=1, color$, P=2,mts2, V=1mts,

Gal=0

Leer alt1,lar1, alt2,lar2, color$

Hacer area =alt1*lar1+ alt2*lar2

Hacer area= area*2

Hacer area = (area*2)-2p-2v

Hacer Gal=area/5

Hacer Mientras c<=Gal

Hacer proceso de pintura

Hacer c=c+1

Fin Hacer Mientras

Imprimir “Proceso finalizado”

Fin

Page 24: Clases de Algo

Pareja 3

• (C) Hacer un algoritmo

para pintar un cuarto, por

fuera y por dentro.• Considerando:

• 1.- Los mts2 son 400

• 2.- Por cada galón de pintura se pinta 5 mts2

• La puerta=2mts2, Ventana=1mts2

Page 25: Clases de Algo

Inicio

Definir C=1, color$, P=2mts2, V=1mts,

Gal=0,

area=400, proceso$=“No terminado”

Leer color$

Hacer Gal=area/5

Hacer Mientras proceso$=“No

terminado”

Hacer proceso de pintura

Leer “Ya se termino”, proceso$

Fin Hacer Mientras

Imprimir “Proceso finalizado”

Fin

Page 26: Clases de Algo

Pareja 4

• (D) Hacer un algoritmo

para pintar un cuarto, por

fuera y por dentro.• Considerando:

• 1.- Los mts2 son 400

• 2.- Por cada galón de pintura se pinta 5 mts2

• La parte interna de colorA y la parte Externa de

Colorb.

Page 27: Clases de Algo

Inicio

Definir C1=1, c2=1, colora$, ColorB$, Gal=0,

area=400,

Leer colora$,ColorB$

Hacer Gal=area/5

Hacer mientras c1<=200

Hacer proceso de pintura_colorA

Hacer c1=c1+1

Fin Hacer Mientras

Hacer mientras c2<=200

Hacer proceso de pintura_colorB

Hacer c2=c2+1

Fin Hacer Mientras

Imprimir “Proceso finalizado”

Fin

Page 28: Clases de Algo

Hacer un algoritmo que determine de un grupo de N Señoritas, para

mis universo, las características mínimas, Altura, Edad, y peso;

durante el proceso debe de imprimir nombre y apellidos de las que no

cumple; al final debe de imprimir la cantidad de las señoritas que

cumplieron con los requisitos.

INICIO

DEF N=0, C=1, A=0, E=0, P=0, A1=0,E1=0,P1=0, NOMBRE$,

APELLIDO$, T=0

LEER A1,E1,P1, N

HACER MIENTRAS C<=N

LEER NOMBRE$, APELLIDO$,A,E,P

SI A=A1 Y E=E1 Y P=P1 ENT

HACER T=T+1

SINO

IMPRIMIR NOMBRE$,APELLIDO$

FIN SI

HACER C=C+1

FIN HACER MIENTRAS

IMPRIMIR T

FIN