Vous êtes sur la page 1sur 3

11/04/2016

Bsqueda de Mximos y mnimos

Algoritmos y Programacin

Problema:
Se trata de encontrar, dentro de un universo de valores, uno de ellos que
resulte el mayor o el menor de dicho universo.

Conceptos Bsicos

Ejercicio: Encontrar el nmero mayor

Mximos y Mnimos

2
6
5
9
3
7
Cul fue el nmero mayor mostrado ?

Facultad de Ciencias
de la
Administracin

Bsqueda de Mximos y mnimos

Bsqueda de Mximos y mnimos

Solucin Informtica: Consideraciones

Los datos ingresan por teclado y se graban en memoria (variable)


Memoria RAM
Teclado

2
6
5
9
3
7

Variable
NRO

2
6
5
9
3
7

Una alternativa de solucin:


1. Ingresar el primer dato
2. Ingresar el siguiente dato y compararlo con el anterior. Guardar el
mayor.
3. Ingresar el siguiente dato y compararlo con el mayor guardado.
Guardar el mayor.
4. Ingresar el siguiente dato y compararlo con el mayor guardado.
Guardar el mayor.
Generalizando:

Comparar dos datos y guardar el mayor

Cuando un dato ingresa y se almacena en una variable se pierde el valor


anterior

Problema:
Comparar un dato con el anterior no es posible utilizando una sola variable

Mximos y Mnimos

Bsqueda de Mximos y mnimos

Memoria

Luego:
Utilizar DOS variables:
1. Para almacenar el dato que ingresa
2. Para almacenar el dato que resulte mayor durante el proceso

Valores de inicio:
Necesidad de inicializar la variable 2. con mnimo o mximo valor.
La mayora de los lenguajes proveen primitivas:
High_value - asigna el mayor valor segn su tipo.
Low_value - asgina el menor valor segn su tipo.

Datos a Ingresar:

VAR

AUX

11/04/2016

Estudio de casos

Estudio de casos

Ingresar una determinada cantidad de nmeros e imprimir el


mayor ingresado.
Solucin algortmica:

Programa Maximos
Variables
Var, Aux : Integer

Solucin:
Inicio
Aux = Min_Valor
Ingresar Var
Mientras var <> invalido
Si Var > Aux
Aux := Var
FinSi
Ingresar Var
FinMientras
Imprimir Aux
Fin

No alcanza con un solo par de variables.


Debe adicionarse una variable para almacenar el nombre de la persona
de mayor edad.

Ejemplo:

Mximos y Mnimos

NOM -Almacena el nombre que ingresa


EDA - Almacenar la edad que ingresa
AUX Almacena la mayor edad
MAN Almacena el nombre que corresponde a la mayor edad.

Estudio de casos

Memoria
Datos a Ingresar:

Ingresar el nombre y la edad de los afiliados de una obra social e imprimir


el nombre de la persona de mayor edad.

EDA

NOM

AUX

MAN

Elisa

21

21

Elisa

21

Elisa

Jos

45

45

Jos

45

Jos

Maria

37

37

Mara

45

Jos

Luis

58

58

Luis

58

Luis

Ana

52

52

Ana

58

Luis

Estudio de casos

Ingresar el nombre y la edad de los afiliados de una obra social e imprimir


el nombre de la persona de mayor edad.

Programa Maximos
Variables
NOM, MAN : String
EDA, AUX : Integer

Inicio
AUX = Min_Valor
Ingresar NOM
Mientras NOM <>
Ingresar EDA
Si EDA > AUX
AUX := EDA
MAN := NOM
FinSi
Ingresar NOM
FinMientras
Imprimir Nombre > edad: MAN
Fin

Estudio de casos

Una empresa que vende materiales de construccin mayorista quiere


conocer informacin de las ventas de cemento y plasticor vendidas
durante el ao 2016:

Un supermercado opera con 20 cajas habilitadas. Al finalizar el da se debe


imprimir datos relacionados con las cobranzas de cada caja, para lo
cual se debe:

a) Ingresar por teclado los siguientes datos de cada venta:


Nro.de factura
Fecha
Cantidad vendida (en unidades bolsas-)
Cdigo de producto [1-Cemento, 2-Plasticor]
Importe de la venta

a) Ingresar por teclado los siguientes datos de cada cobranza:


Nro.de Caja
Nro.de Comprobante
Importe cobrado
Cdigo de Cobranza [1-Efectivo, 2-Tarjeta, 3-Cta.Cte.]

b) Imprimir un listado de todos los ingresos que contenga:

b) Imprimir un listado de todos los ingresos que contenga:


Nro.de Caja Nro.de Comprobante Importe cobrado

Nro.de Factura Fecha Producto Importe venta

c) Cuando finaliza el ingreso de datos se debe imprimir:


- Nro.de Factura al que corresponde la mayor importe vendido.

c) Cuando finaliza el ingreso de datos se debe imprimir:


- Total cobrado en el da discriminado por cdigo de cobranza
- Nro.de Comprobante al que corresponde la mayor importe
cobrado.

11/04/2016

Estudio de casos
En una Municipalidad se desea conocer datos sobre las infracciones de trnsito que han
cometido varias empresas de remises, de las siguientes infracciones:
Descripcin de la Infraccin
- Sin registro de conductor:
- Pasar semforo en rojo:
- Conducir sin seguro:
- Falta habilitacin municipal:

Multa

Cdigo de Infraccin

$ 100
$ 500
$ 120
$ 80

2365
2375
2550
2717

De cada infraccin del mismo cdigo cometida para cada empresa se ingresan los
siguientes datos:
Nombre de la Empresa
Nombre del Conductor
Cdigo de Infraccin
Cantidad de Infracciones cometidas

FIN
Conceptos Bsicos
Bsqueda de Mximos y Mnimos

Con los datos de cada cdigo de infraccin que ingresa se debe:


Imprimir un listado que contenga:
Nombre de la Empresa - Nombre del Conductor - Importe total de la Multa

Por fin de proceso imprimir:

a) Importe total recaudado por multas


b) Nombre de la empresa que cometi mayor cantidad de infracciones por pasar semforo en
rojo.
c) Nombre del conductor que tuvo menor cantidad de infracciones del cdigo 2365.

Vous aimerez peut-être aussi