Está en la página 1de 17

EJERCICIO ALGORITMOS

1. Hacer un pseudocdigo que imprima los nmeros del 1 al 100.


Proceso cuentaal100
Escribir "Numeros del 1 al 100";
n<-0;
Para n<-1 Hasta 100 Hacer
Escribir n;
Fin Para
FinProceso

2. Hacer un pseudocdigo que imprima los nmeros del 100 al 0, en orden
decreciente.
Proceso cuentaal0
Escribir "Numeros del 100 al 1";
n<-100;
Para n<-100 hasta 0 Hacer
Escribir n;
Fin Para
FinProceso
3. Hacer un pseudocdigo que imprima los nmeros pares entre 0 y 100.
Proceso pares
Escribir "Los numeros pares entre 1 y 100: ";
num <-1;
Mientras num <= 100 Hacer
Si num%2 = 0 Entonces
Escribir num;
FinSi
num <- num + 1;
FinMientras
FinProceso





4. Hacer un programa que imprima la suma de los 100 primeros nmeros.
Proceso suma100
Escribir "Suma de 100 Numeros";
n<-0;
suma<-0
Para n<-1 hasta 100 Hacer
suma<-suma+n;
Escribir n;
Fin Para
Escribir suma;
FinProceso
5. Hacer un pseudocdigo que imprima los nmeros impares hasta el 100 y que
imprima cuantos impares hay.
Proceso impares100
c <- 1
son <- 0
MIENTRAS c < 100 hacer
ESCRIBIR c;
c <- c + 2;
son <- son + 1;
FIN MIENTRAS
ESCRIBIR "Los numeros impares son: ",son;
FinProceso
6. Hacer un pseudocdigo que imprima todos los nmeros naturales que hay
desde la unidad hasta un nmero que introducimos por teclado.
Proceso natural
i <- 0;
n <- 0;
ESCRIBIR "Introduce un numero: ";
LEER n;
MIENTRAS i < n HACER
i <- i + 1;
ESCRIBIR i;
FIN MIENTRAS
FinProceso
7. Introducir tantas frases como queramos y contarlas.
Proceso frase
res <- "S";
definir frase como caracter;
c <- 0
MIENTRAS res = "S" HACER
ESCRIBIR "Frase: ";
Leer frase;
c <- c + 1;
ESCRIBIR "Deseas introducir m s frases (S/N): ";
LEER res;
FINMIENTRAS
ESCRIBIR "El nmero de frases introducidas son: ";
ESCRIBIR c;
FinProceso
8. Hacer un pseudocdigo que solo nos permita introducir S o N.
Proceso SN
MIENTRAS res <> "S" Y res <> "N" HACER
ESCRIBIR "Introduce S o N";
LEER res;
res <- Mayusculas( res );
FIN MIENTRAS
FinProceso
9. Introducir un nmero por teclado. Que nos diga si es positivo o negativo.
Proceso POSITIVONEGATIVO
num <- 0;
ESCRIBIR "Introduce un numero: ";
LEER num;
SI num >= 0 ENTONCES
ESCRIBIR "es positivo";
SINO
ESCRIBIR "es negativo";
FINSI
FinProceso
10. Introducir un nmero por teclado. Que nos diga si es par o impar.
Proceso parimpar
Escribir "Ingrese un numero";
Leer num;
Si num mod 2 =0 Entonces
Escribir "El numero es par";
Sino
Escribir "El numero es impar";
FinSi
FinProceso
11. Imprimir y contar los mltiplos de 3 desde la unidad hasta un nmero
que introducimos por teclado.
Proceso mult3
i <- 3;
n <- 0;
c <- 0;
ESCRIBIR "Numero: ";
LEER n;
MIENTRAS i <= n HACER
SI i = ( i / 3 ) * 3 ENTONCES
ESCRIBIR i;
c <- c + 1;
FINSI
i <- i + 1;
Fin Mientras
ESCRIBIR "Los numeros de multiplos de 3 son: ";
ESCRIBIR c;
FinProceso

12. Hacer un pseudocdigo que imprima los nmeros del 1 al 100. Que calcule
la suma de todos los nmeros pares por un lado, y por otro, la de todos
los impares.
Proceso sumpareimpar
i<- 0;
sumapar <- 0;
sumaimp <- 0;
MIENTRAS i < 100 HACER
i <- i + 1;
SI i mod 2 =0 ENTONCES
sumapar <- sumapar + i;
SINO
sumaimp <- sumaimp + i;
FINSI
Escribir i;
FIN MIENTRAS
ESCRIBIR "La suma de los pares es: ";
ESCRIBIR sumapar;
ESCRIBIR "La suma de los impares es: ";
ESCRIBIR sumaimp;
FinProceso
13. Imprimir y contar los nmeros que son mltiplos de 2 o de 3 que hay entre 1 y
100.
Proceso mult2o3de100
definir i,s,u,n Como Entero
i<-3;
s<-0;
u<-2;
sum<-0;
Mientras i<=99 Hacer
Escribir "i= ",i;
s<-s+1;
i<-i+3;

FinMientras
Escribir "Los numeros multiplos de 3 entre 1 y 100 es ",s;
Mientras u<=99 Hacer
Escribir "u= ",u;
sum<-sum+1;
u<-u+2;
FinMientras
Escribir "Los numeros multiplos de 2 entre 1 y 100 es ",sum;
FinProceso






14. hacer un algoritmo que imprima el mayor y el menor de una serie de cinco
nmeros que vamos introduciendo por el teclado
Proceso mayorde5num
con <- 0;
n <- 0;
maximo <- 0;
minimo <- 99999;
MIENTRAS con <= 5 HACER
ESCRIBIR "Numero: ";
LEER n;
SI n > maximo ENTONCES
maximo = n;
FINSI
SI n < minimo ENTONCES
minimo <- n;
FINSI
con <- con + 1;
FINMIENTRAS
ESCRIBIR "El mayor de los numeros es: ";
ESCRIBIR maximo;
ESCRIBIR "El menor de los numeros es: ";
ESCRIBIR minimo;
FinProceso
15. introducir dos nmeros por teclado. Imprimir los nmeros naturales que hay
entre ambos nmeros empezando por el ms pequeo, contar cuantos hay y
cuntos de ellos son pares. Calcular la suma de los impares.
Proceso serie
num1<-0;
num2<-0;
aux<-0;
sn<-0;
pares<-0;
sumaimpa<-0;
ESCRIBIR "Numero: ";
LEER num1;
ESCRIBIR "Numero: ";
LEER num2;
SI num1 > num2 ENTONCES
aux <- num1;
num1 <- num2;
num2 <- aux;
FINSI
MIENTRAS num1 >= num2 HACER
num1 <- num1 + 1;
ESCRIBIR num1;
sn <- sn + 1;
SI (num1 % 2)= 0 ENTONCES
pares <- pares + 1;
SINO
sumaimpa <- sumaimpa + num1;
FINSI
FINMIENTRAS
ESCRIBIR "Numeros visualizados: ";
ESCRIBIR sn;
ESCRIBIR "Pares hay: ";
ESCRIBIR pares;
ESCRIBIR "La suma de los impares es: ";
ESCRIBIR sumaimpa;
FinProceso
16. Escribir un algoritmo que permita calcular Xn, donde: X puede ser cualquier
nmero real distinto de 0 n puede ser cualquier entero positivo, negativo o
nulo Nota: suponemos que no est implementado el operador de
exponenciacin.
Proceso operadorparaxn
x<-0;
n<-0;
resultado<-0;
escribir "ingrese el valor para x:";
leer x;
escribir "ingrese el valor para n:";
leer n;
resultado<-x*n;
escribir "El resultado es:",resultado;
FinProceso
17. Realizar un algoritmo que me permite leer 20 numero e imprimir cuantos son
positivos, negativos y neutros
Proceso posineganulo
num<-0;
positivo<-0;;
negativo<-0;;
cero<-0;
//cant<-0;
i<-0;
//Escribir "Introduzca Cantidad de Numeros a Evaluar:";
//Leer cant;
Para i=1 hasta 20 hacer
// i<-i+1;
Escribir "Introduzca un Numero Entero:";
Leer num;
si (num>0)entonces
positivo=positivo+1;
sino
si(num<0)entonces
negativo=negativo+1;
sino
cero=cero+1;
FinSi
FinSi
FinPara
Escribir "La Cantidad de Positivos Son:",positivo;
Escribir "La Cantidad de Negativos Son:",negativo;
Escribir "La Cantidad de Ceros Son:",cero;

FinProceso
18. Realizar una algoritmo que permita hallar la suma y promedio de 20 nmeros
enteros ingresados por teclado
Proceso sumaypromde20num
num<-0;
suma<-0;
promedio<-0;
i<-0;
//Escribir "Introduzca Cantidad de Numeros a Evaluar:";
//Leer cant;
Para i=1 hasta 20 hacer
//i<-i+1;
Escribir "Introduzca un Numero Entero:";
Leer num;
suma<-suma+num;
promedio<-(suma/i);
FinPara
Escribir "La Suma es:",suma;
Escribir "El promedio es:",promedio;
FinProceso
19. Realice un algoritmo que permite hallar la suma de los 10 primeros nmeros
enteros positivos y su promedio
Proceso promediopositivo
positivo<-0;;
negativo<-0;;
cero<-0;
promedio<-0;
//cant<-0;
i<-0;
n<-10;
//Escribir "Introduzca Cantidad de Numeros a Evaluar:";
//Leer cant;
Para i=1 hasta n hacer
//i<-i+1;
escribir i;
si (i>0)entonces
positivo=positivo+i;
promedio<-positivo/n;
FinSi

FinPara
Escribir "La Cantidad de Positivos Son:",positivo;
Escribir "El promedio de los numeros es:",promedio;
FinProceso




20. Realizar un algoritmo que me permita leer 10 nmeros positivos y negativos, e
imprimir solamente los nmeros positivos.
Proceso positivos
num<-0;
num2<-0;
positivo<-0;;
negativo<-0;;
cero<-0;
//cant<-0;
i<-0;
j<-0;
//Escribir "Introduzca Cantidad de Numeros a Evaluar:";
//Leer cant;
para j=1 hasta 10 hacer
Escribir "Introduzca 10 numeros negativos:";
Leer num2;
si(num2<0)entonces
negativo=negativo+1;
FinSi
FinPara
Para i=1 hasta 10 hacer
// i<-i+1;
Escribir "Introduzca 10 numeros positivos:";
Leer num;
si (num>0)entonces
positivo=positivo+1;
FinSi
finpara
Escribir "Los numeros positivos son:",positivo;

FinProceso
21. Realice un algoritmo que permita el ingreso de 3 notas de un alumno. Calcular
la nota e imprimir los siguientes mensajes
a. 20y 16 excelente
b. 15 y 11 regular
c. 10 y 6 malo
d. 5y 0 psimo
Proceso promedios
Escribir "Ingrese la cantidad de notas:";
Leer n;

acum<-0;

Para i<-1 Hasta n Hacer
Escribir "Ingrese nota ",i,":";
Leer dato;
acum<-acum+dato;
FinPara

promedio<-acum/n;
Escribir "El promedio es: ",promedio;
si promedio>=0 y promedio<=5 entonces
Escribir "pesimo: ";
FinSi
si promedio>=6 y promedio<=10 entonces
Escribir "malo: ";
FinSi
si promedio>=11 y promedio<=15 entonces
Escribir "regular: ";
FinSi
si promedio>=16 y promedio<=20 entonces
Escribir "excelente: ";
FinSi
FinProceso
22. Realizar un algoritmo que permita el ingreso de 3 notas de un alumno. Calcular
la nota promedio y si el promedio es mayor o igual a 10.5 mostrar un mensaje
aprobado en caso contrario desaprobado
Proceso promediocondicion
Escribir "Ingrese la cantidad de notas:";
Leer n;

acum<-0;

Para i<-1 Hasta n Hacer
Escribir "Ingrese nota ",i,":";
Leer dato;
acum<-acum+dato;
FinPara

promedio<-acum/n;
Escribir "El promedio es: ",promedio;
si promedio>=10.5 entonces
Escribir "Aprobado: ";
Sino
Escribir "Desaprobado: ";
FinSi

FinProceso

23. Hacer un algoritmo que imprima los nmeros de 1 al 100
Proceso cuentaal100
Escribir "Numeros del 1 al 100";
n<-0;
Para n<-1 Hasta 100 Hacer
Escribir n;
Fin Para
FinProceso


24. Desarrolle un algoritmo que permita convertir calificaciones segn lo siguiente.
1 a 9 = e , 10 a 12 = d, 13 a 15 = c, 16 a 18 = b, 19 a 20 = a
Proceso convierte
Escribir "Ingrese la cantidad de notas:";
Leer n;

acum<-0;

Para i<-1 Hasta n Hacer
Escribir "Ingrese numero ",i,":";
Leer dato;
acum<-acum+dato;
FinPara
si dato>=1 y dato<=9 entonces
Escribir "e";
FinSi
si dato>=10 y dato<=12 entonces
Escribir "d";
FinSi
si dato>=13 y dato<=15 entonces
Escribir "c";
FinSi
si dato>=16 y dato<=18 entonces
Escribir "b";
FinSi
si dato>=19 y dato<=20 entonces
Escribir "a";
FinSi
FinProceso
25. Desarrolla un algoritmo que permita 3 nmeros de los cuales hallar el nmero
mayor
Proceso mayorde3
Escribir "Ingrese primer numero a comparar";
Leer a;
Escribir "Ingrese segundo numero a comparar";
Leer b;
Escribir " Ingrese tercer numero a comparar";
Leer c;
Si a<b y b>c Entonces
Escribir "El mayor es", " ", b;
Sino
Si a>c Entonces
Escribir "El mayor es"," ", a;
Sino
Escribir "El mayor es"," ", c;
FinSi
FinSi
FinProceso

26. Desarrollar un algoritmo que pida 3 nmeros a las cuales se le ordene de mayor
y menor
Escribir " ORDENAR 3 NUMEROS DE FORMA ASCENDENTE, por favor ingresar
a continuacion"; //mensaje a usuario
Escribir " Numero 1";
Leer Numero1;
Escribir " Numero 2";
Leer Numero2;
Escribir " Numero 3";
Leer Numero3;
Si Numero1 > Numero3 Entonces
Temp<-Numero1;
Numero1<-Numero3;
Numero3<-Temp;
Si Numero2 > Numero3 Entonces
Temp<-Numero2;
Numero2<-Numero3;
Numero3<-Temp;
FinSi
Si Numero1 > Numero2 Entonces
Temp<-Numero1;
Numero1<-Numero2;
Numero2<-Temp;
FinSi
Sino
Si Numero2 > Numero3 Entonces
Temp<-Numero2;
Numero2<-Numero3;
Numero3<-Temp;
FinSi
FinSi
Escribir "-----------------------------------------------------------------------------";
Escribir "Numeros ordenados de forma ascendente: ", Numero1, ", ", Numero2, ", ",
Numero3; //mensaje a usuario
Escribir "Z-TEAM Studio";
27. Disear un algoritmo que imprima y sume la serie de nmeros 3, 6,
9,12,...,99.
Proceso serie
definir i,s Como Entero
i<-3;
s<-0;
Mientras i<=99 Hacer
Escribir "i= ",i;
s<-s+i;
i<-i+3;
FinMientras
Escribir "La suma es ",s;
FinProceso
28. Escribir un algoritmo que lea cuatro nmeros y, a continuacin, escriba el
mayor de los cuatro.
Proceso mayormenor
Escribir 'Ingresar el 1 numero: ';
Leer numero;
menor<-numero;
mayor<-numero;
Para i<-2 Hasta 4 Con Paso 1 Hacer
Escribir 'Ingresar el ',i,' numero: ';
Leer numero;
Si (numero<menor) Entonces
menor<-numero;
FinSi
Si (numero>mayor) Entonces
mayor<-numero;
FinSi
FinPara
Escribir 'Menor: ',menor;
Escribir 'Mayor: ',mayor;
FinProceso


29. Disear un algoritmo para determinar si un nmero n es primo. (un nmero
primo slo es divisible por el mismo y por la unidad).
Proceso primo
cont<-2;
escribir "Introduzca un numero:";
Leer n;
Mientras cont<n y n mod cont <>0 Hacer
cont<-cont+1;
FinMientras
si cont=n Entonces
Escribir n," Es primo";
sino
Escribir n, " No es primo";
FinSi

FinProceso
30. Escribir un algoritmo que calcule la superficie de un tringulo en funcin de la
base y la altura.
Proceso triangulo
Escribir "Ingresar los valores de la base y altura del triangulo";
Leer b, h
A <-(b*h)/2
Escribir "El rea del triangulo es:", A
FinProceso

31. Disear un algoritmo que lea cuatro variables y calcule e imprima su producto,
su suma y su media aritmtica.
Proceso operaciones
escribir "numero ";
leer n1;
escribir "numero ";
leer n2;
escribir "numero ";
leer n3;
escribir "numero ";
leer n4;
suma<-n1+n2+n3+n4;
producto<-n1*n2*n3*n4;
media<-suma/4;
escribir suma;
escribir producto;
escribir media ;
FinProceso
32. Disear un programa que lea el peso de un hombre en libras y nos devuelva su
peso en kilogramos y gramos (Nota: una libra equivale a 0.453592 kilogramos).
Proceso peso
Escribir "Ingrese el nombre de la persona:";
Leer nombre;
Escribir "Ingrese su peso en libras:";
Leer peso;
peso <- peso*0.454;
Escribir "El Seor: ", nombre, " tiene ", peso;
FinProceso
33. Realizar un algoritmo que calcule la suma de los enteros entre 1 y 10, es decir
1+2+3+...+10.
Proceso suma10
Escribir "Suma del 1 al 10";
n<-0;
suma<-0
Para n<-1 hasta 10 Hacer
suma<-suma+n;
Escribir n;
Fin Para
Escribir suma;
FinProceso
34. Leer un carcter y deducir si est o no comprendido entre las letras I y M
ambas inclusive.
Proceso LETRASIM
definir letra como caracter
escribir "ingrese letra:";
leer letra;
si (letra>"j") Entonces
si (letra<"l") Entonces
escribir "Esta entre i e m";
finsi
FinSi
FinProceso
35. Se desea calcular independientemente la suma de los nmeros pares e impares
comprendidos entre 1 y 200.
Proceso sumparipmar
i<- 1;
spar <- 0;
simp <- 0;
MIENTRAS i < 200 HACER
i <- i + 1;
SI i mod 2 =0 ENTONCES
spar <- spar + i;
SINO
simp <- simp + i;
FINSI
Escribir i;
FIN MIENTRAS
ESCRIBIR "La suma de los pares es: ";
ESCRIBIR spar;
ESCRIBIR "La suma de los impares es: ";
ESCRIBIR simp;
FinProceso

36. Calcular y visualizar la suma y el producto de los nmeros pares comprendidos
entre 20 y 400, ambos inclusive.
Proceso sumapar20400
i<- 19;
spar <- 0;
MIENTRAS i < 400 HACER
i <- i + 1;
SI i mod 2 =0 ENTONCES
spar <- spar + i;
FINSI
Escribir i;
FIN MIENTRAS
ESCRIBIR "La suma de los pares es: ";
ESCRIBIR spar;
FinProceso
37. Leer 500 nmeros enteros y obtener cuntos son positivos.
Proceso cuentapositivos500
num<-0;
positivo<-0;;
negativo<-0;;
cero<-0;
//cant<-0;
i<-0;
//Escribir "Introduzca Cantidad de Numeros a Evaluar:";
//Leer cant;
Para i=1 hasta 500 hacer
i<-i+1;
Escribir "Introduzca un Numero Entero:";
Leer num;
si (num>0)entonces
positivo=positivo+1;
sino
si(num<0)entonces
negativo=negativo+1;
sino
cero=cero+1;
FinSi
FinSi
FinPara
Escribir "La Cantidad de Positivos Son:",positivo;
//Escribir "La Cantidad de Negativos Son:",negativo;
//Escribir "La Cantidad de Ceros Son:",cero;
FinProceso
38. Se trata de escribir el algoritmo que permita emitir la factura correspondiente
a una compra de un artculo determinado del que se adquieren una o varias
unidades. El IGV a aplicar es del 18% y si el total (sub total + IGV) es mayor a
5,000 nuevos soles, se aplicar un descuento del 5%.
Proceso ventas
precio<-0;
cant<-0;
subtotal<-0;
igv<-0;
desc<-0;
total<-0;
ntotal<-0;
definir articulo como caracter
escribir "Ingrese nombre del articulo:";
leer articulo;
escribir "ingrese precio del articulo:";
leer precio;
escribir "ingrese cantidad a comprar:";
leer cant;
subtotal<-precio*cant;
igv<-subtotal*0.18;
total<-subtotal+igv;
si total>5000 entonces
desc<-total*0.05;
ntotal<-total-desc;
sino
ntotal<-total;
FinSi
escribir "El total a pagar es :",ntotal;
FinProceso
39. Sumar 10 nmeros introducidos por teclado.
Proceso suma10porteclado
Escribir "Suma del 1 al 10 introducidos por teclado:";
n<-0;
suma<-0
Para n<-1 hasta 10 Hacer
escribir "ingrese numero:",n;
Leer num;
suma<-suma+num;
//Escribir n;
Fin Para
Escribir suma;
FinProceso





40. Visualizar los mltiplos de 4 comprendidos entre 4 y N, donde N es un nmero
introducido por teclado.
Proceso multde4entre4yN
definir i,s Como Entero
i<-4;
s<-0;
escribir "Ingrese un numero:";
leer N;
PARA i=4 HASTA N Hacer
//i<-i+4;
Escribir "i= ",i;
s<-s+1;
FinPARA
Escribir "Los numeros multiplos de 4 entre 1 y N es ",s;
FinProceso
41. Realizar un diagrama que permita realizar un contador e imprimir los 100
primeros nmeros enteros.
Proceso CONTADOR100
Escribir "muestra 100 con contador";
cont<-0;
i<-0
Para i<-1 hasta 100 Hacer
cont<-cont+1;
Escribir cont;
Fin Para
FinProceso
42. Calcular la raz cuadrada de un nmero y escribir su resultado.
Proceso raizcuadrada
Escribir "Escriba un numero";
Leer num1;
Escribir "La raiz cuadrada es: ";
Escribir RC(num1)
FinProceso
43. Se desea un algoritmo que realice la operacin de suma o resta de dos nmeros
ledos del teclado en funcin de la respuesta S o R (suma o resta) que se d a
un mensaje de peticin de datos.
Proceso sumaresta
a<-0;
b<-0;
resultado<-0;
definir operacin como carcter;
ESCRIBIR "INGRESE PRIMER NUMERO:";
leer a;
ESCRIBIR "INGRESE SEGUNDO NUMERO:";
leer b;
Escribir "pulse S para sumar, R para restar: ";
leer operacin;

si operacin = "S" entonces
resultado = a + b;
FinSi
si operacin = "R" entonces
resultado = a - b;
FinSi
escribir resultado;
FinProceso
44. Escribir un algoritmo que lea un nmero y deduzca si est entre 10 y 100,
ambos inclusive.
Proceso entre10y100
numero<-0;
escribir "ingrese un numero:";
leer numero;
si numero>=10 y numero <=100 Entonces
escribir "Esta entre 10 y 100:";
Sino
escribir "No esta entre 10 y 100:";
FinSi
FinProceso
45. Se desea leer desde teclado una seria de nmeros hasta que aparezca alguno
menor que 1000.
Proceso menorque1000
numero<-0;
escribir "Ingrese un numero";
leer numero;
mientras numero>=1000 Hacer

FinMientras
FinProceso