17
Estructuras repetitivas Departamento de ingeniería

Presentacion ip estructuras_repeatitivas_2012_i

  • Upload
    ymendal

  • View
    2.069

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Presentacion ip estructuras_repeatitivas_2012_i

Estructuras repetitivas

Departamento de ingeniería

Page 2: Presentacion ip estructuras_repeatitivas_2012_i

Enunciado de Repetición.

Son los enunciados que permiten repetir varias veces un conjunto de enunciados según se necesite de acuerdo a una condición.

Se les conoce también como ciclos.

Departamento de ingeniería

Page 3: Presentacion ip estructuras_repeatitivas_2012_i

Enunciado de Repetición - Mientras

MIENTRAS <comparación> HACER

VERDADERO

Enunciado(s) a repetir

FIN MIENTRAS

FALSO

Enunciado(s)

<comparación>

SI NO Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 4: Presentacion ip estructuras_repeatitivas_2012_i

Enunciado de Repetición - Mientras

MIENTRAS contador < numero HACER

contador contador +1

leer(edad)

acumulador acumulador + edad

FIN MIENTRAS

promedio acumulador/contador

escribir(promedio)

Fin

contador < numero

contador contador + 1

Leer(edad)

acumulador acumulador + edad

SI

promedio acumulador/contador

Escribir (promedio)

NO Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 5: Presentacion ip estructuras_repeatitivas_2012_i

Representación de Algoritmos (I)

Ejemplo: A. Solicite al usuario 3 números y presente en

pantalla el promedio de estos.

B. Solicite al usuario 20 número y presente en pantalla el promedio de estos.

Departamento de ingeniería

Page 6: Presentacion ip estructuras_repeatitivas_2012_i

Representación de Algoritmos - mientras

Ejercicios:

Elaborar un algoritmo que calcule el promedio de edad de los estudiantes del salón de clase, de acuerdo al numero de estudiantes.

Departamento de ingeniería

Page 7: Presentacion ip estructuras_repeatitivas_2012_i

Algoritmo promedio_edad var entero:cant_est, contador, prom_edad inicio escribir(´Ingrese la cantidad de estudiantes´) leer(cant_est) contador 0 //Almacena la cantidad de estudiantes ingresados

acumulador 0 //Acumula la edad para obtener el promedio

mientras (contador < cant_est) hacer contador contador +1

escribir(‘Ingrese la edad del estudiante’) leer(edad) acumulador acumulador + edad

fin_mientras si (contador >0) entonces prom_edad acumulador/contador

escribir(‘El promedio de edad de los estudiantes es:’, prom_edad) si_no escribir(‘No se ingresaron edades’) fin_si fin

Solución completa utilizando Pseudo Código

Departamento de ingeniería

Page 8: Presentacion ip estructuras_repeatitivas_2012_i

Solución completa utilizando Pseudo Código

Inicio

Fin

Terminal

Leer (cant_est)

Entrada de Datos

contador 0 acumulador 0 Proceso

contador < cant_est

Decisión

contador contador + 1

Leer (edad)

acumulador acumulador + edad

SI

Escribir (prom_edad)

NO

contador > 0

Prom_edad 0 Prom_edad

acumulador/contador

SI NO

Diagrama de Flujo.

Salida de Datos

Departamento de ingeniería

Page 9: Presentacion ip estructuras_repeatitivas_2012_i

Enunciado de Repetición – Haga .. Mientras

HAGA

VERDADERO

Enunciado(s) a repetir

MIENTRAS <comparación>

FALSO

Enunciado(s)

<comparación>

SI

NO

Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 10: Presentacion ip estructuras_repeatitivas_2012_i

Enunciado de Repetición – Haga .. Mientras

HAGA

leer (edad)

contador contador + 1

Acumulador acumulador + edad

MIENTRAS edad > 0

promedio acumulador/contador

Escriba (promedio)

Edad > 0 Promedio

acumulador/contador

Escriba(promedio)

Leer (Edad)

contador contador + 1 Acumulador acumulador +

edad

SI NO

Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 11: Presentacion ip estructuras_repeatitivas_2012_i

Representación de Algoritmos – Haga - mientras

Ejercicios: ◦ Algoritmo que presente en pantalla los

primeros 10 primeros números divisibles entre 3.

Departamento de ingeniería

Page 12: Presentacion ip estructuras_repeatitivas_2012_i

Algoritmo numeros_div_3

var

entero: num, cont_num,

Inicio

cont_num 0

num 3

haga

si (num MOD 3 = 0) entonces

escribir(num)

cont_num cont_num + 1

fin_si

mientras (cont_num < 10)

fin

Departamento de ingeniería

Solución completa utilizando Pseudo Código – Solución 1

Page 13: Presentacion ip estructuras_repeatitivas_2012_i

Representación de Algoritmos.

Ejercicios:

Modifique el algoritmo que calcula el promedio de edad de los estudiantes del salón de clase, de acuerdo al numero de estudiantes, calculando el promedio de edad de los hombres y mujeres del salón.

Departamento de ingeniería

Page 14: Presentacion ip estructuras_repeatitivas_2012_i

Algoritmo prom_edad_hm_muj Var entero: cant_est, cont_est, cont_mujeres, cont_hombres, acum_edad_est, acum_edad_m,

acum_edad_h, edad, prom_edad_est, prom_edad_h, prom_edad_m cadena: sexo Inicio escribir(‘Ingrese la edad de los estudiantes’) leer(cant_est) cont_est 0 cont_mujeres 0 cont_hombres 0 acum_edad_est 0 acum_edad_m 0 acum_edad_h 0 mientras cont_est < cant_est hacer escribir(‘Ingrese la edad’) leer(edad) escribir(‘Ingrese el sexo (mujer/hombre’) leer(sexo) si sexo = ‘mujer’ entonces cont_mujeres cont_mujeres +1 acum_edad_m acum_edad_m + edad sino cont_hombres cont_hombres +1 acum_edad_h acum_edad_h + edad fin_si cont_est cont_est +1 acum_edad_est acum_edad_est + edad fin mientras

Solución completa utilizando Pseudo Código – Primera parte

Departamento de ingeniería

Page 15: Presentacion ip estructuras_repeatitivas_2012_i

si (cont_est >0) entonces

prom_edad_est acum_edad_est/cont_est

escribir(‘El promedio de edad de los estudiantes es:’, prom_edad_est)

si (cont_mujeres > 0) entonces

prom_edad_m acum_edad_m/cont_mujeres

escribir(‘El promedio de edad de las mujeres es:’ prom_edad_m)

sino

escribir(‘No hay mujeres en el salón de clase’)

fin_si

si (cont_hombres > 0) entonces

prom_edad_h acum_edad_h/cont_hombres

escribir(‘El promedio de edad de los hombres es:’ prom_edad_h)

sino

escribir(‘No hay hombres en el salón de clase’)

fin_si

sino

escribir(‘No se ingresó información de los estudiantes’)

fin

Departamento de ingeniería

Solución completa utilizando Pseudo Código – Segunda parte

Page 16: Presentacion ip estructuras_repeatitivas_2012_i

Ejercicios en clase

1. Programa que presente las raíces de una ecuación cuadrática. Se debe garantizar que el usuario ingrese un valor diferente de cero para el primer coeficiente. Presente también las raíces imaginarias.

2. Elabore un programa que pida al usuario 30 números. De los números ingresados por el usuario, cuántos son pares, cuántos impares y cuántos son divisibles entre 7.

3. Programa que determine si un número es o no primo.

Departamento de ingeniería

Page 17: Presentacion ip estructuras_repeatitivas_2012_i

Gracias!!!

Departamento de ingeniería