Ejemplos de Algoritmos
-
Upload
angelica-rada -
Category
Documents
-
view
60 -
download
0
Transcript of Ejemplos de Algoritmos
![Page 1: Ejemplos de Algoritmos](https://reader035.fdocument.pub/reader035/viewer/2022071717/55cf96fc550346d0338f153a/html5/thumbnails/1.jpg)
EJEMPLOS DE ALGORITMOS – Prof. Nayibe Ruíz Chagüi
1. Cierta universidad para liquidar el pago de matrícula de un estudiante le exige los siguientes datos:
Número de inscripción, Nombres, Patrimonio y Estrato social. La universidad cobra un valor fijo a cada
estudiante de $1‟500.000. Si el patrimonio es mayor de $2‟000.000 y el estrato superior a 4, se le incrementa la
matrícula en un 3% sobre el patrimonio. Hacer un algoritmo que muestre: Número de inscripción, Nombres,
nuevo valor de la matrícula.
ANALISIS – Modelaje
CONSTANTES
IDENTIFICADOR TIPO VALOR DESCRIPCION
PAGMAT flotante 1500000 ó 15E5 Valor inicial de la matricula
ENTRADA
IDENTIFICADOR TIPO DESCRIPCION
ni Entero Numero de inscripción
nom String o Cadena Nombre del estudiante
pat flotante Patrimonio
e Entero 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 Pseudocódigo
INICIO
PAGMAT=1500000
“Teclee número de inscripción,
nombre, patrimonio y estrato
social del estudiante”
ni, nom, pat, e
pat > 2000000
AND e>4NO SI
NMAT = PAGMAT + pat* 0.03
FIN
NMAT = PAGMAT
“Estudiante con N° de
inscripción: ”, ni, “ y nombre: ”,
nom, “ debe pagar $”, NMAT
1. INICIO
2. PAGMAT= 1500000
3. IMPRIMIR “Teclee Número de inscripción, 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
FIN SI
6. IMPRIMIR “Estudiante con N° de inscripción: ”, ni, “
y nombre: ”, nom, “ debe pagar $”, NMAT
7. FIN
![Page 2: Ejemplos de Algoritmos](https://reader035.fdocument.pub/reader035/viewer/2022071717/55cf96fc550346d0338f153a/html5/thumbnails/2.jpg)
2. Pedir los tres lados de un triangulo. Imprimir si es isósceles, escaleno o equilátero. Asuma que se puede
construir el triangulo.
ANALISIS – Modelaje
ENTRADA
IDENTIFICADOR TIPO DESCRIPCION
L1, L2, L3 flotantes Lados del triangulo
PROCESO
Comparar L1, L2 y L3 entre sí.
SALIDA
Mensaje
Diagrama de Flujo Pseudocódigo
INICIO
“Teclee los tres lados de un
triangulo”
L1, L2, L3
L1!=L2 AND
L1!=L3 AND
L2!=L3
NO SI
“Triangulo
Escaleno”L1=L2 AND L1=L3NO SI
“Triangulo
Isosceles”
“Triangulo
Equilatero”
FIN
1. INICIO
2. IMPRIMIR “Teclee los tres lados de un triangulo”
3. LEA L1, L2, L3
5. SI (L1!=L2 AND L1!=L3 AND L2!=L3) ENTONCES
IMPRIMIR “Triangulo Escaleno”
SINO SI (L1=L2 AND L1=L3)
IMPRIMIR “Triangulo Equilátero”
SINO IMPRIMIR “Triangulo Isósceles”
FIN SI
FINSI
6. FIN
![Page 3: Ejemplos de Algoritmos](https://reader035.fdocument.pub/reader035/viewer/2022071717/55cf96fc550346d0338f153a/html5/thumbnails/3.jpg)
EJERCICIO RESUELTO
Se busca un entrenador para el nuevo gimnasio de
la Universidad, para ello se realiza un test de
calificación. Si el candidato tiene una altura por
debajo o igual a 1,60 mts, se califica con 2 puntos,
si mide más 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 años 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.
ANALISIS
ENTRADA
Identificador Tipo Descripción
A
E
flotante
Entero
Altura del aspirante
Años de experiencia
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.
SALIDA
Mensaje
Tp
Diagrama de Flujo
INICIO
“Digite la altura y años de
experiencia”
A,E
A<=1.60NO SI
A<1.80NO SIPa = 2
Pa=5Pa=10
E<3NO SI
Pe=5Pe=7
Tp= Pa + Pe
Tp <= 7NO SI
Tp < 10NO SITp = Tp + 2
Tp = Tp + 4Tp = Tp + 6
“El puntaje del aspirante es ”,
Tp, ” puntos”
FIN
![Page 4: Ejemplos de Algoritmos](https://reader035.fdocument.pub/reader035/viewer/2022071717/55cf96fc550346d0338f153a/html5/thumbnails/4.jpg)
Pseudocódigo INICIO Imprimir “Digite la altura y años 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; 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
Programa en C++ #include<iostream.h>
int main() { short E, Pa, Pe, Tp; float A; cout<<"Digite la altura y años de experiencia del entrenador: "; cin>>A>>E; //Empieza el primer condicional de selección múltiple 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 asignación compuesta Tp=Tp+2 else if(Tp<10) Tp+=4; else Tp+=6;
cout<<"El puntaje del aspirante es "<<Tp<<" puntos"; system(“pause”); }
EJERCICIOS PROPUESTOS
1. Pedir tres números enteros e imprimirlos en orden
descendente. 2. Pedir los tres coeficientes de una ecuación
cuadrática, de la forma aX2+bX+C=0 e imprimir las
posibles soluciones, real y en caso de ser imaginaria un mensaje.
3. Dados dos números y un signo, imprimir la respectiva operación entre dichos números y su
resultado. En caso de dar un signo erróneo, debe sacar un mensaje. Las operaciones permitidas son
suma (+), resta (-), multiplicación (*) y división (/).
Ejemplo.
Dada la siguiente entrada de datos: 5, 3, „+‟.
El programa debe sacar en pantalla 5 + 3 = 8
Si la entrada es 8, 3, „?‟. El programa debe sacar el mensaje “Carácter incorrecto”
4. Dado el siguiente pseudocódigo, decir cuál 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 número entero e imprimir si es múltiplo de
3 y 5 simultáneamente. Ejemplo 15, 45. Pero 9 no
cumple ya que es solo múltiplo de 3 pero no de 5.
Si una persona es
perseverante, aunque sea
dura de entendimiento, se
hará inteligente; y aunque
sea débil se transformará en
fuerte”
Leonardo Da Vinci.