Este documento describe varios algoritmos para resolver diferentes problemas matemáticos y lógicos. Primero pide los datos de entrada necesarios y luego describe los pasos a seguir de forma secuencial para procesar los datos y llegar a un resultado. Algunos algoritmos calculan áreas de figuras geométricas, otros determinan valores máximos, mínimos o intermedios, y hay quienes resuelven problemas salariales u operaciones matemáticas básicas.
1. 1. Preguntar si se desea calcular el área de un cuadrado, un triángulo o un círculo y al final mostrar
en pantalla el valor del área de la figura respectiva.
inicio
Datos de
entrada
Lado
Radio
Base
Opción
Altura
L
R
B
Op
Alt
Datos de
salida
A
constantes
Pi
Área
Algoritmo
-inicio
Variables a utilizar:
L, R, B, Op, Alt, A
Imprimir “1 para área de
triangulo, 2 para área de circulo, 3
para área de cuadrado”
-leer Op
-si Op= 1 entonces
Imprimir “da la base y la altura”
Leer B,Alt
A=B*Alt/2
Imprimir A
-Si Op= 2 entonces
Imprimir “da el radio”
Leer r
A=pi*r²/2
Imprimir A
-si Op= 3 entonces
Imprimir “da el lado”
Leer L
A= L*L
Imprimir A
-Fin
L, R, B, Op, Alt, A
OP1, 2, 3
Op
Op=1
B, Alt
A=B*Alt/2
Op=2
A
R
Op=3
A=pi*r²/2
L
A
A=L*L
A
Fin
2. Leer tres números y decir cuál de ellos es el que tiene el valor intermedio.
Datos de
entrada
Numero 1
Numero 2
Numero 3
Datos de
salida
constantes
X
Y
Z
Algoritmo
-inicio
-variables a utilizar: X, Y, Z
-leer X, Y, Z
-si (x<y) y (y<z) o (z<y) y
(y<x) entonces imprimir
“y”
-Si (y<x) y (x<z) o (z<x) y
(x<y) entonces imprimir
“x”
De lo contrario imprimir
“z”
-Fin
inicio
X, Y, Z
X, Y, Z
(x<y) y
(y<z) o
(z<y) y
(y<x)
(y<x) y
(x<z) o
(z<x) y
(x<y)
X
Y
Z
Fin
3. Leer tres números y decir cuál es el de valor mayor y el menor valor.
Datos de
entrada
Numero 1
Numero 2
Numero 3
Datos de
salida
constantes
X
Y
Z
Algoritmo
-Inicio
-Variables x,y,z
-Mostrar “dame 3 números”
-Leer x,y,z
-Si (x<y) y (y<z) entonces
imprimir “el menor es ”x “y el
mayor es”z
-Si (x<z) y (z<y) entonces
imprimir “el menor es ”x “y el
mayor es”y
-Si (y<x) y (x<z) entonces
imprimir “el menor es ”y “y el
mayor es”z
-Si (y<z) y (z<x) entonces
imprimir “el menor es ”y “y el
mayor es”x
-Si (z<x) y (x<y entonces
imprimir “el menor es ”z “y el
mayor es”y
-Si (z<y) y (y<x) entonces
imprimir “el menor es ”z “y el
mayor es”x
-Fin
inicio
X, Y, Z
X, Y, Z,
(x<y)
y
(y<z)
(x<z) y z>x)
(x<z)
y
(z<y)
R
(y<x)
y
(x<z)
A
(y<z)
y
(z<x)
A
Fin
4. A un trabajador le pagan según sus horas laboradas, si la cantidad de horas trabajadas es mayor a 40 horas, la tarifa se
incrementa en un 50% para las horas extras. Calcular el salario del trabajador dadas las horas trabajadas y la tarifa.
Datos de
entrada
Horas
trabajadas
Horas
pagas
Tiempo
Ht
Hp
t
Datos de
salida
Salario
constantes
S
Inicio
Variables
Ht, t, s, Hp
Pedir “Ht” y “Hp”
Leer “Ht” y “Hp
Si Ht >40 entonces
he=ht-40
s=40*t+Hp*t(1.5)
Si Ht< 40 entonces
s=Ht*t
-Imprimir s
-Fin
inicio
Ht, t, s, Hp
Ht, Hp
(y<x)
y
(x<z)
s=40*t+Hp*t(1
.5)
(y<z)
y
(z<x)
s=Ht*t
S
Fin
5. Dado un monto calcular el descuento considerando que por encima de 100 el
descuento es el 10% y por debajo de 100 el descuento es el 2%.
Datos de
entrada
Monto
variables
Algoritmo
-inicio
M
Datos de
salida
Descuento Des
-variables a utilizar: M, Des
-leer M
M,Des
M
-si (M>100) entonces
Des=(M*0.10)
Constantes
-si (M<100 entonces
Si es <100
Si es >100
inicio
10%
2%
M>
100
Des=(M*0.10)
Des= (M*0.02)
-Imprimir des
Fin
M<
100
Des=(M*0.10)
Des
Fin
6. Leer una calificación de un alumno y determinar si obtuvo A, B, C o reprobó, El 10 equivale a una A,
el 9 a una B, el 8 a una C y las demás es reprobado.
Datos de
Variables
entrada
Calificación Cal
Datos de
salida
A
B
C
7 o menor
Constantes
10
9
8
reprobado
inicio
Algoritmo
-inicio
Cal=10
-Si (Cal=10) entonces
A
Imprimir “obtuvo A”
-Si (Cal=9) entonces
Cal=9
Imprimir “obtuvo B”
-Si (Cal=8) entonces
B
Cal=8
Imprimir “obtuvo C”
-Si (Cal<8) entonces
Imprimir “obtuvo
reprobado”
C
Cal<8
Reprobado
-Fin
Fin
7. Leer un número entero y determinar si tiene tres cifras.
Datos de
entrada
Numero
variables
inicio
N
Datos de
salida
Tiene 3
cifras
No tiene 3
cifras
Constantes
Algoritmo:
-inicio
-Variables a utilizar: N
-leer N
Si (N>100) y (N<999)
entonces imprimir
“tiene 3 cifras”
De lo contrario
imprimir “no tiene 3
cifras”
-Fin
N
N
(N>100) y
(N<999)
Tiene 3
cifras
No tiene
3 cifras
Fin
8. Leer un número entero menor a 1000 y determinar cuántos dígitos tiene.
Datos de entrada
variables
Numero
Datos de salida
N
Tiene 3 digitos
Tiene 2 digitos
Tiene 1 digito
Constantes
Algoritmo
-inicio
-variables a utilizar
-leer N
Si (N<1000) y (N>100) entonces
imprimir “tiene 3 dígitos”
Si (N<100) y (N>10) entonces
imprimir “tiene 2 dígitos“
Si (N<10) y (N>0) entonces
imprimir “tiene 1 digito”
-Fin
inicio
N
N
N<100
0y
N>100
tiene 3
dígitos
N<100
0y
N>100
N<100
0y
N>100
Fin
tiene 2
dígitos
tiene 1
dígitos
9. Leer dos números menores a 1000 y decir cuántos dígitos tienen entre los dos números.
Datos de entrada
variables
Numero 1
Numero 2
Datos de salida
N1
N2
inicio
N1, N2
Mensaje de salida
Constantes
Algoritmo
-inicio
-variables a utilizar: N1, N2
-Leer N1
-Si (N1<1000) y (N1>=100) entonces
N3=3
-Si (N1<100) Y (N1>=10) entonces
N3=2
-Si (N1<10) y (N1>0) entonces
N3=1
-Si (N2<1000) y (N2>=100) entonces
N4=3
-Si (N2<100) Y (N2>=10) entonces
N4=2
-Si (N2<10) y (N2>0) entonces
N4=1
Suma= N3+N4
-Imprimir
El número de cifras que tiene es “Suma”
-Fin
N1, N2
(N1<1000)
y
(N1>=100)
N3=3
(N1<100
)Y
(N1>=10
)
N3=2
(N1<10
)y
(N1>0)
N3=1
(N2<10
00) y
(N2>=1
00)
N4=2
Suma
Fin
10. Leer un número menor a 1000, si el número tiene un digito elevarlo al cuadrado y mostrar su resultado, por otro lado
si el número es de dos dígitos multiplicarlo por dos y mostrar su resultado, si el número es de tres dígitos restarle
cien y mostrar su resultado, finalmente si el número es cero, negativo o mayor a tres dígitos mostrar la leyenda
“Número no valido”.
inicio
Datos de entrada
variables
Numero
Datos de salida
N
Resultado
R
N1, N2
N1, N2
Constantes
Algoritmo
-inicio
-variables a utilizar: N
-leer N
-Si (N1>=1000) Y (N1<=0) entonces
Imprimir “Numero novalido”
Si (N1<1000) y (N1>=100) entonces
Resta= N1-100
Imprimir Resta
Si (N1<100) Y (N1>=10) entonces
Multi=N1*2
Imprimir Multi
Si (N1<10) y (N1>0) entonces
Expo= N1^2
Imprimir Expo
-Fin
(N1>=10
00) Y
(N1<=0)
(N1<100
0) y
(N1>=10
0)
N1-100
(N1<10
0) Y
(N1>=1
0)
N1*2
(N1<10
)y
(N1>0)
N1^2
Res, Num
NO, ;Mult
Fin
11. Leer dos números enteros, restar el menor del mayor y mostrar el resultado.
Datos de
entrada
Numero 1
Numero 2
Datos de
salida
Resultado
variables
N1
N2
inicio
N
R
N
Constantes
N1>N2
Algoritmo
-Inicio
-Variables: N1, N2, R
-Leer: N1, N2
-Si (N1>N2) entonces
R= N1-N2
-Si (N1<N2) entonces
R= N2-N1
-Imprimir R
-Fin
R= N1-N2
N1<N2
R= N2-N1
tiene 2
dígitos
Fin