29
Algoritmia (II) Departamento de ingeniería

Ppt5 presentacion ip algoritmia_2011_p2

Embed Size (px)

Citation preview

Page 1: Ppt5 presentacion ip algoritmia_2011_p2

Algoritmia (II)

Departamento de ingeniería

Page 2: Ppt5 presentacion ip algoritmia_2011_p2

Tipos de algoritmos (II)

Algoritmos cuantitativos

Son todos aquellos pasos o instrucciones que involucran cálculos numéricos para llegar a un resultado satisfactorio.

• Ej.: Multiplicar dos números, ordenar una cantidad de números en forma ascendente, dividir dos números, encontrar de un conjunto de números el mayor, etc.

Departamento de ingeniería

Page 3: Ppt5 presentacion ip algoritmia_2011_p2

Pasos que deben seguirse en la Elaboración de un Algoritmo.1. Leer el enunciado del problema cuantas veces sea necesario, hasta entenderlo

completamente, si tiene duda sobre el significado de alguna pregunta o condición aclararla, ojala se aprenda de memoria el enunciado.

2. Determinar claramente con que datos de entrada se cuenta para la solución del problema.

3. Aclarar y determinar la información o resultados que se soliciten.1. Información Intermedia.2. Información Final.

4. Definir que cálculos y/o comparaciones se necesitan para llegar al resultado final.1. Cálculos y comparaciones intermedias.2. Cálculos y comparaciones finales.

5. Tener en cuenta toda clase de condiciones y restricciones para la solución del problema.

Todos los pasos tienen la misma importancia, la falta de analisis de alguno de ellos causara problemas en el transcurso del desarrollo del algoritmo.

Page 4: Ppt5 presentacion ip algoritmia_2011_p2

Ejemplo: - 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 5: Ppt5 presentacion ip algoritmia_2011_p2

Inicio

Fin

Terminador

Leer (numero)Entrada de Datos

contador 0acumulador 0Proceso

contador < numero

Decisión

contador contador + 1

Leer (edad)

acumulador acumulador + edad

SI

Escribir (promedio)

NO

contador > 0

promedio 0promedio acumulador/contador

SINO

Diagrama de Flujo.

Salida de Datos

Departamento de ingeniería

Page 6: Ppt5 presentacion ip algoritmia_2011_p2

Pseudo CódigoINICIO

leer(numero)

contador 0

acumulador 0

MIENTRAS contador < numero HACER

contador contador +1

leer(edad)

acumulador acumulador + edad

FIN MIENTRAS

SI contador >0 ENTONCES

promedio acumulador/contador

SINO

promedio 0

FIN SI

escribir(promedio)

FINDepartamento de ingeniería

Page 7: Ppt5 presentacion ip algoritmia_2011_p2

Que es una Variable?• Variable son todos aquellos valores que pueden o no

cambiar en transcurso de un algoritmo. Usualmente son introducidas como datos.

• Toda variable se compone de dos partes.

• NOMBRE: Es el conjunto de caracteres, letras y números, con los cuales se identifica un valor en un momento determinado.

• VALOR: Es la cantidad que una variable representa o tiene asociada en un determinado momento.

• Ejemplo : contador 0 Departamento de ingeniería

Page 8: Ppt5 presentacion ip algoritmia_2011_p2

Que es una Constante?

• Constantes son todos aquellos valores que no cambian en el transcurso de un algoritmo y son introducidos en el momento de utilizarse.

• En determinados casos se puede presentar que le valor de una variable no cambie en el transcurso de un algoritmo; pero este hecho no se considera constante, sigue siendo una variable, porque puede cambiar su valor y las constantes no lo pueden hacer.

• Cuando se presenta esta situación se dice que es una variable que se comporta como una constante.

• Ejemplo : retención pagobruto * 0.07Departamento de ingeniería

Page 9: Ppt5 presentacion ip algoritmia_2011_p2

Expresiones Aritméticas.• Expresión aritmética es un conjunto de variables y/o

constantes unidas o relacionadas por operadores aritméticos.

• Los operadores aritméticos son los siguientes:– Exponenciación **– Multiplicación *– División /– Menos -– Mas +– Modulo %

• Ejemplo: salario_neto salario_bruto – iss + bono

Departamento de ingeniería

Page 10: Ppt5 presentacion ip algoritmia_2011_p2

Expresiones Relacionales.

• Expresión relacional es un conjunto de variable y/o constantes unidas o relacionadas por operadores relacionales.

• Los operadores relacionales son los siguientes:– MAYOR QUE > Complemento <=– MENOR QUE < Complemento >=– DIFERENTE QUE <> Complemento =– IGUAL A = Complemento <>– MAYOR O IGUAL >= Complemento <– MENOR O IGUAL <= Complemento >

• Ejemplo: descuento >= pagoDepartamento de ingeniería

Page 11: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Lectura.

El enunciado de lectura se utiliza para introducir datos que se van a utilizar en la solución de un algoritmo.

Ejemplo:◦Leer(edad)

Departamento de ingeniería

Page 12: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Escritura.

El enunciado de escritura se utiliza para informar los resultados que se esperaban obtener al ejecutarse el algoritmo.

Ejemplo:◦Escribir(promedio)

Departamento de ingeniería

Page 13: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Asignación.

• Es una acción o proceso por el cual se le asigna un valor (constante o variable) o el resultado de una operación (expresión) a una variable. Los enunciados de asignación se utilizan generalmente para cambiarle de valor a una variable o definirla.

• Definir una variable consiste en asignarle o darle por primera vez un valor; y puede hacerse de dos maneras:– Por medio de una lectura de datos, o– Utilizando un enunciado de asignación.

• Ejemplo:leer(edad) edad 25

Departamento de ingeniería

Page 14: Ppt5 presentacion ip algoritmia_2011_p2

Reglas para la construcción de enunciados de asignación.

• Toda variable que aparezca al lado derecho de un enunciado de asignación debe estar definida.

• Ejemplo 1: edad 25contador 0 contador contador + edad

• Las variables edad y contador se definieron correctamente• Ejemplo 2:

contador 0 contador contador + edad

• La variable edad nunca fue definida.

Departamento de ingeniería

Page 15: Ppt5 presentacion ip algoritmia_2011_p2

Reglas para la construcción de enunciados de asignación.

En un enunciado de asignación la variable de la izquierda es la única que cambia de valor cuando con anterioridad tiene un valor asignado.

Ejemplo :edad 25contador 0 contador contador + edad

Departamento de ingeniería

Page 16: Ppt5 presentacion ip algoritmia_2011_p2

Reglas para la construcción de enunciados de asignación.Las variables que aparecen en la parte

derecha de un enunciado de asignación conservan su valor después de ejecutarse la asignación.

Ejemplo :salario 1000bono 120salario_neto salario + bono

Departamento de ingeniería

Page 17: Ppt5 presentacion ip algoritmia_2011_p2

Reglas para la construcción de enunciados de asignación.

Si la variable de la parte izquierda del enunciado se encuentra también en el lado derecho, esta variable cambia de valor por aparecer en la izquierda.

Ejemplo :acumulador 0edad 25acumulador acumulador + edad

Departamento de ingeniería

Page 18: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Decisión.Los enunciados de decisión se utilizan

para tomar una acción o conocer el estado de alguna situación especial, que generalmente toman un valor Verdadero o Falso.

Departamento de ingeniería

Page 19: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Decisión – Si.. Sino

SI <comparación> ENTONCESVERDADEROEnunciado(s)

SINOFALSOEnunciado(s)

FIN SI

<comparación>SI NODiagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 20: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Decisión – SI .. Sino

SI contador >0 ENTONCESpromedio acumulador/contador

SINOpromedio 0

FIN SI

contador > 0

promedio 0promedio acumulador/contador

SI NODiagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 21: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Repetición.

Son los enunciados que permiten repetir varias o muchas 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 22: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Repetición - Mientras

MIENTRAS <comparación> HACERVERDADEROEnunciado(s) a repetir

FIN MIENTRASFALSOEnunciado(s)

<comparación>SI NO

Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 23: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Repetición - Mientras

MIENTRAS contador < numero HACERcontador contador +1leer(edad)acumulador acumulador + edad

FIN MIENTRASpromedio acumulador/contadorescribir(promedio)

Fin

contador < numero

contador contador + 1

Leer(edad)

acumulador acumulador + edad

SI

promedio acumulador/contador

Escribir (promedio)

NODiagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 24: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Repetición – Haga .. Mientras

HAGAVERDADEROEnunciado(s) a repetir

MIENTRAS <comparación> FALSOEnunciado(s)

<comparación>

SINO

Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 25: Ppt5 presentacion ip algoritmia_2011_p2

Enunciado de Repetición – Haga .. Mientras

HAGA leer (edad)

contador contador + 1 Acumulador acumulador + edadMIENTRAS edad > 0promedio acumulador/contadorEscriba (promedio)

Edad > 0 Promedio acumulador/contador

Escriba(promedio)

Leer (Edad)

contador contador + 1Acumulador acumulador +

edad

SINO

Diagrama de Flujo

Pseudo Código

Departamento de ingeniería

Page 26: Ppt5 presentacion ip algoritmia_2011_p2

Representación de Algoritmos.

• Ejemplo: A. Elaborar un algoritmo que calcule el

promedio de edad de los estudiantes del salón de clase, de acuerdo al numero de estudiantes.

B. Calcule ademas el promedio de edad de los hombres y mujeres del salón.

Departamento de ingeniería

Page 27: Ppt5 presentacion ip algoritmia_2011_p2

INICIOleer(numero)contador 0 acumulador 0

cont_mujeres 0cont_hombres 0acum_mujeres 0acum_hombres 0

MIENTRAS contador < numero HACERcontador contador +1leer(edad)leer(sexo)

SI sexo = ‘mujer’ ENTONCEScont_mujeres cont_mujeres +1acum_mujeres acum_mujeres + edad

SINOcont_hombres cont_hombres +1acum_hombres acum_hombres + edad

FIN SI

acumulador acumulador + edadFIN MIENTRAS

Solución completa utilizando Pseudo Código

Departamento de ingeniería

Page 28: Ppt5 presentacion ip algoritmia_2011_p2

SI contador >0 ENTONCESpromedio acumulador/contador

SINOpromedio 0

FIN SI

SI cont_mujeres >0 ENTONCESprom_mujeres acum_mujeres/cont_mujeres

SINOprom_mujeres 0

FIN SI

SI cont_hombres >0 ENTONCESprom_hombres acum_hombre/cont_hombres

SINOprom_hombres 0

FIN SI

escribir(promedio)escribir(prom_mujeres)escribir(prom_hombres)

FIN

Solución completa utilizando Pseudo Código

Departamento de ingeniería

Page 29: Ppt5 presentacion ip algoritmia_2011_p2

Gracias!!!

Departamento de ingeniería