Está en la página 1de 4

EJEMPLOS DE ALGORITMOS Prof.

Nayibe Ruz Chagi


1. Cierta universidad para liquidar el pago de matrcula de un estudiante le exige los siguientes datos:
Nmero de inscripcin, Nombres, Patrimonio y Estrato social. La universidad cobra un valor fijo a cada estudiante de
$1500.000. Si el patrimonio es mayor de $2000.000 y el estrato superior a 4, se le incrementa la matrcula en un 3%
sobre el patrimonio. Hacer un algoritmo que muestre: Nmero de inscripcin, Nombres, nuevo valor de la matrcula.
ANALISIS Modelaje
CONSTANTES
IDENTIFICADOR
PAGMAT
ENTRADA
IDENTIFICADOR
ni
nom
pat
e

TIPO
flotante

VALOR
1500000 15E5

TIPO
Entero
String o Cadena
flotante
Entero

DESCRIPCION
Valor inicial de la matricula

DESCRIPCION
Numero de inscripcin
Nombre del estudiante
Patrimonio
Estrato Social

PROCESO
Comparar pat y e. Calcular el nuevo valor de la matricula NMAT (Flotante) teniendo en cuenta el incremento.
SALIDA
ni, nom, NMAT, Mensaje
Diagrama de Flujo
INICIO

PAGMAT=1500000

Teclee nmero de inscripcin,


nombre, patrimonio y estrato
social del estudiante

ni, nom, pat, e

pat > 2000000


AND e>4

NO

SI

NMAT = PAGMAT + pat* 0.03

NMAT = PAGMAT

Estudiante con N de
inscripcin: , ni, y nombre: ,
nom, debe pagar $, NMAT

FIN

Pseudocdigo
1. INICIO
2. PAGMAT= 1500000
3. IMPRIMIR Teclee Nmero de inscripcin, nombres,
patrimonio y estrato social del estudiante
4. LEA ni, nom, pat, e
5. SI (pat>2000000 AND e>4) ENTONCES
NMAT=PAGMAT+ pat * 0.03
SINO NMAT=PAGMAT
FINSI
6. IMPRIMIR Estudiante con N de inscripcin: , ni,
y nombre: , nom, debe pagar $, NMAT
7. FIN

2. Pedir los tres lados de un triangulo. Imprimir si es issceles, escaleno o equiltero. Asuma que se puede construir el
triangulo.
ANALISIS Modelaje
ENTRADA
IDENTIFICADOR
L1, L2, L3

TIPO
flotantes

DESCRIPCION
Lados del triangulo

PROCESO
Comparar L1, L2 y L3 entre s.
SALIDA
Mensaje
Diagrama de Flujo

Pseudocdigo
1.
2.
3.
5.

INICIO
IMPRIMIR Teclee los tres lados de un triangulo
LEA L1, L2, L3
SI (L1!=L2 AND L1!=L3 AND L2!=L3) ENTONCES
IMPRIMIR Triangulo Escaleno
SINO SI (L1=L2 AND L1=L3)
IMPRIMIR Tringulo Equiltero
SINO IMPRIMIR Triangulo Issceles
FIN SI
FINSI
6. FIN

INICIO

Teclee los tres lados de un


triangulo

L1, L2, L3

NO

NO
Triangulo
Isosceles

L1=L2 AND L1=L3

L1!=L2 AND
L1!=L3 AND
L2!=L3

SI
Triangulo
Escaleno

SI
Triangulo
Equilatero

FIN

EJERCICIO RESUELTO

Se busca un entrenador para el nuevo gimnasio de


la Universidad, para ello se realiza un test de
calificacin. Si el candidato tiene una altura por
debajo o igual a 1,60 mts, se califica con 2 puntos,
si mide ms de 1,60 y menos de 1,80, se califica
con 5 puntos, si tiene una altura superior o igual a
1,80 se le califica con 10 puntos. Si tiene menos de
3 aos de experiencia como instructor se le dan 5
puntos, de lo contrario se le dan 7 puntos. Si el
subtotal de puntos asignados (por la altura y la
experiencia) es inferior o igual a 7 puntos se le
asignan 2 puntos adicionales, si es superior a 7
puntos e inferior a 10 puntos, se le asignan 4
puntos adicionales, de lo contrario se le asignan 6
puntos. El programa debe imprimir por pantalla el
total de puntos obtenidos por el aspirante.

Diagrama de Flujo
INICIO

Digite la altura y aos de


experiencia

A,E

NO

NO

A<1.80

A<=1.60

SI

Pa = 2
SI

Pa=5

Pa=10

ANALISIS
ENTRADA
Identificador
A
E

Tipo
flotante
Entero

Descripcin
Altura del aspirante
Aos de experiencia

NO

E<3

SI

Pe=5

Pe=7

PROCESO

Comparar A con los rangos y dependiendo de


los valores se asignan los puntos por altura (Pa)
de tipo entero.
Comparar E con los rangos y dependiendo de los
valores se asignan los puntos por experiencia
(Pe) de tipo entero.
Se suman los dos puntajes, para hallar el total
de puntos en (Tp) de tipo entero.
Se compara Tp con los rangos y se hacen los
respectivos incrementos.

Tp= Pa + Pe

NO

NO

Tp = Tp + 6

Tp < 10

Tp <= 7

SI

Tp = Tp + 2
SI

Tp = Tp + 4

SALIDA

Mensaje
Tp

El puntaje del aspirante es ,


Tp, puntos

FIN

Pseudocdigo
INICIO
Imprimir Digite la altura y aos de experiencia del
entrenador
Lea A, E
Si (A<=1.60) entonces
Pa=2
Sino Si (A<1.80) entonces
Pa=5
Sino Pa=10
Finsi
Finsi
Si (E<3) entonces
Pe=5
Sino Pe=7
Finsi
Tp=Pa+Pe

1. Pedir tres nmeros enteros e imprimirlos en orden


descendente.
2. Pedir los tres coeficientes de una ecuacin
cuadrtica, de la forma aX2+bX+C=0 e imprimir las
posibles soluciones, real y en caso de ser imaginaria
un mensaje.
3. Dados dos nmeros y un signo, imprimir la
respectiva operacin entre dichos nmeros y su
resultado. En caso de dar un signo errneo, debe
sacar un mensaje. Las operaciones permitidas son
suma (+), resta (-), multiplicacin (*) y divisin (/).
Ejemplo.
Dada la siguiente entrada de datos: 5, 3, +.
El programa debe sacar en pantalla 5 + 3 = 8

Si (Tp<7) entonces
Tp=Tp+2
Sino Si (Tp<10) entonces
Tp=Tp+4
Sino Tp=Tp+6
Finsi
Finsi
Imprimir "El puntaje del aspirante es ",Tp," puntos"
FIN

#include<iostream.h>

EJERCICIOS PROPUESTOS

Programa en C++

int main()
{ short E, Pa, Pe, Tp;
float A;
cout<<"Digite la altura y aos de experiencia del entrenador: ";
cin>>A>>E;
//Empieza el primer condicional de seleccin mltiple
if(A<=1.60)
Pa=2;
else if(A<1.80)
Pa=5;
else Pa=10;
//Condicional simple
if(E<3)
Pe=5;
else Pe=7;
//Se totalizan los puntos obtenidos por altura y experiencia
Tp=Pa+Pe;
if(Tp<7)
Tp+=2;//Operador de asignacin compuesta Tp=Tp+2
else if(Tp<10)
Tp+=4;
else Tp+=6;
cout<<"El puntaje del aspirante es "<<Tp<<" puntos";
system(pause); }

Si la entrada es 8, 3, ?. El programa debe sacar el


mensaje Carcter incorrecto
4. Dado el siguiente pseudocdigo, decir cul ser la
salida
y
realizar
el
diagrama de
flujo
correspondiente.
1. INICIO
2. A= 5, B=3
3. si (A> B) entonces
A= A*2
sino B=B*2
finsi
4. T = A+B
5. si (T>8) entonces
Imprimir El valor es , B
sino Imprimir El valor es , A
finsi
6. FIN
5. Pedir un nmero entero e imprimir si es mltiplo de
3 y 5 simultneamente. Ejemplo 15, 45. Pero 9 no
cumple ya que es solo mltiplo de 3 pero no de 5.

Si
una
persona
es
perseverante, aunque sea
dura de entendimiento, se
har inteligente; y aunque
sea dbil se transformar en
fuerte
Leonardo Da Vinci.