julio 12, 2017
PROBLEMAS RESUELTOS DE PSEUDOCODIGO EN
PSEINT
1. Imprima su nombre, genero, edad y estado civil:
Proceso PROBLEMA_1
Escribir 'Mi nombre es: Andres Felipe Navarro';
Escribir 'Mi edad es: 17';
Escribir 'Mi genero es: Masculino';
Escribir 'Mi estado civil es: Soltero';
FinProceso
2. Lea de un mismo registro el nombre, la edad y el sexo de
cualquier persona e imprima, solo si la persona es de sexo
masculino y mayor de edad el nombre de la persona:
Proceso PROBLEMA_2
Definir a,b Como Caracter;
Definir c Como Entero;
Escribir 'Digite su nombre';
Leer a;
Escribir 'Digite su edad';
Leer c;
Escribir 'Digite su sexo';
Leer b;
Si b='masculino' Y c>=18 Entonces
Escribir 'El nombre de la persona es: ';
Escribir a;
FinSi
FinProceso
3. Lea dos números de un mismo registro e imprima solo los
positivos:
Proceso PROBLEMA_3
Definir a,b Como Entero;
Escribir 'Escriba un numero negativo:';
Leer a;
Escribir 'Escriba un numero positivo:';
Leer b;
Si a<0 Y b>=0 Entonces
Escribir 'El numero positivo es: ';
Escribir b;
FinSi
FinProceso
4. Lea dos números de un mismo registro. Calcule la suma de los
números. Imprima los números leídos y solo si la suma es negativa,
imprimirla también:
Proceso PROBLEMA_4
Definir a, b, c Como Real;
Escribir 'Ingrese el primer numero:';
Leer a;
Escribir 'Ingrese el segundo numero:';
Leer b;
c <- a+b;
Escribir 'El resultado de la suma es: ',c;
FinProceso
5. Para un salario bruto hasta de $1.500.000, no hay retención. Para
un salario bruto de $1.500.000 a $3.000.000 el porcentaje de
retención es de 5%. Para un salario bruto mayor de $3.000.000 el
porcentaje de retención es de 8%. Obtener el nombre del empleado,
el salario bruto, el valor de la retención y el salario neto. Se debe
leer el nombre y el salario:
Proceso PROBLEMA_5
Definir a Como Caracter;
Definir b,c,retencion,neto Como Entero;
Escribir 'Digite su nombre';
Leer a;
Escribir 'Digite su salario';
Leer b;
Si b<=1500000 Entonces
Escribir 'Su nombre es: ',a;
Escribir 'No hay retencion';
Escribir 'Su salario es: ',b;
FinSi
Si b>1500000 Y b<3000000 Entonces
retencion <- b*0.05;
neto <- b-retencion;
Escribir 'Su nombre es: ',a;
Escribir 'Su salario es: ',b;
Escribir 'Retencion del 5%';
Escribir 'Salario total: ',neto;
FinSi
Si b>3000000 Entonces
retencion <- b*0.08;
neto <- b-retencion;
Escribir 'Su nombre es: ',a;
Escribir 'Su salario es: ',b;
Escribir 'Retencion del 8%';
Escribir 'Salario total: ',neto;
FinSi
FinProceso
6. Obtener la suma de los números pares comprendidos entre 1 y
100:
Proceso PROBLEMA_6
Definir a,impar,par Como Entero;
par <- 0;
impar <- 0;
a <- 0;
Repetir
Si a<100 Entonces
Escribir a;
a <- a+1;
FinSi
Si a MOD 2=0 Entonces
par <- par+a;
Sino
impar <- impar+a;
FinSi
Hasta Que a=100
Escribir a;
Escribir 'La suma de los numeros pares es: ',par;
Escribir 'La suma de los numeros impares es: ',impar;
FinProceso
7. Lea una serie de grupos de tres números y obtenga el número
mayor y el menor de cada terna. Escriba un mensaje especial si por
lo menos dos de cada tres números son iguales:
Proceso PRBLEMA_7
Definir a,b,c Como Entero;
Escribir 'Digite un primer numero:';
Leer a;
Escribir 'Digite un segundo numero:';
Leer b;
Escribir 'Digite un tercer numero:';
Leer c;
Si a>b Y a>c Entonces
Escribir 'Este numero es el mayor: ';
Escribir a;
Sino
Si b>a Y b>c Entonces
Escribir 'Este numero es el mayor: ';
Escribir b;
Sino
Si c>a Y c>b Entonces
Escribir 'Este numero es el mayor: ';
Escribir c;
FinSi
FinSi
FinSi
Si a<b Y a<c Entonces
Escribir 'Este numero es el menor: ';
Escribir a;
Sino
Si b<a Y b<c Entonces
Escribir 'Este numero es el menor: ';
Escribir b;
Sino
Si c<a Y c<b Entonces
Escribir 'Este numero es el menor: ';
FinSi
FinSi
FinSi
Si b=c Entonces
Escribir 'Este numero esta repetido: ';
Escribir c;
Sino
Si a=b Entonces
Escribir 'Este numero esta repetido: ';
Sino
Si a=c Entonces
Escribir 'Este numero esta repetido: ';
Escribir c;
Sino
Si b=c Entonces
Escribir 'Este numero esta repetido: ';
Escribir c;
Sino
Si a=b Entonces
Escribir 'Este numero esta repetido: ';
Sino
Si a=c Entonces
Escribir 'Este numero esta repetido: ';
Escribir c;
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
Si a=b Y a=c Y b=a Y b=c Y c=a Y c=b Entonces
Escribir 'todos los numeros estan repetidos';
FinSi
FinProceso
8. Coldeportes del Tolima está interesado en promover el
basquetbol y para ello desea conocer personas que tengan las
siguientes características.
Edad máxima: 19 años.
Estatura mínima: 1.85 mts.
Peso máximo: 80 kilos.
Lea identificación, edad, estatura y peso de varios deportistas,
Verifique si cada uno cumple con las condiciones impuestas. Si es
así, imprima identificación, edad, estatura y peso:
Proceso PROBLEMA_8
Definir edad,peso,identificacion Como Entero;
Definir estatura Como Real;
Escribir 'Digite su identificacion:';
Leer identificacion;
Escribir 'Digite su edad:';
Leer edad;
Escribir 'Digite su estatura:';
Leer estatura;
Escribir 'Digite su peso:';
Leer peso;
Escribir 'Su identificacion es: ',identificacion;
Si edad<=19 Entonces
Escribir 'Cumple con este requisito:';
Escribir 'Edad: ',edad;
FinSi
Si estatura>=1.85 Entonces
Escribir 'Cumple con este requisito:';
Escribir 'Estatura: ',estatura;
FinSi
Si peso<=80 Entonces
Escribir 'Cumple con este requisito:';
Escribir 'Peso: ',peso;
FinSi
Si edad>19 Entonces
Escribir 'No cumple con este requisito:';
Escribir 'edad: ',edad;
FinSi
Si estatura<1.85 Entonces
Escribir 'no cumple con este requisito:';
Escribir 'edad: ',estatura;
FinSi
Si peso>80 Entonces
Escribir 'no cumple con este requisito:';
Escribir 'peso: ',peso;
FinSi
FinProceso
9. Imprimir los múltiplos de 9 hasta N. Siendo N un número que se
solicita al usuario:
Proceso PROBLEMA_9
Definir a,b,c Como Entero;
Escribir 'Digite un numero:';
Leer a;
b <- 1;
c <- 0;
Repetir
Si b MOD 9=0 Entonces
Escribir b;
b <- b+1;
c <- c+1;
Sino
b <- b+1;
FinSi
Hasta Que b>a
Escribir 'Hay ',c,' multiplos de 9';
FinProceso
10. Hallar la suma total de los valores almacenados en una tabla
llamada VALORES de sus 20 elementos se requiere el resultado
impreso y la lista de los 20 elementos:
Proceso PROBLEMA_10
Definir
valor1,valor2,valor3,valor4,valor5,valor6,valor7,valor8,valor9,valor1
0,valor11,valor12,valor13,valor14,valor15,valor16,valor17,valor18,va
lor19,valor20,i,num,resultado Como Entero;
Escribir 'Digite 20 valores:';
Leer
valor1,valor2,valor3,valor4,valor5,valor6,valor7,valor8,valor9,valor1
0,valor11,valor12,valor13,valor14,valor15,valor16,valor17,valor18,va
lor19,valor20;
Escribir '--------';
resultado <-
valor1+valor2+valor3+valor4+valor5+valor6+valor7+valor8+valor9
+valor10+valor11+valor12+valor13+valor14+valor15+valor16+valo
r17+valor18+valor19+valor20;
Escribir '--------';
Escribir 'valores';
Escribir '1.(',valor1;
Escribir '2.(',valor2;
Escribir '3.(',valor3;
Escribir '4.(',valor4;
Escribir '5.(',valor5;
Escribir '6.(',valor6;
Escribir '7.(',valor7;
Escribir '8.(',valor8;
Escribir '9.(',valor9;
Escribir '10.(',valor10;
Escribir '11.(',valor11;
Escribir '12.(',valor12;
Escribir '13.(',valor13;
Escribir '14.(',valor14;
Escribir '15.(',valor15;
Escribir '16.(',valor16;
Escribir '17.(',valor17;
Escribir '18.(',valor18;
Escribir '19.(',valor19;
Escribir '20.(',valor20;
Escribir '-----------';
Escribir 'Resultado: ',resultado;
FinProceso
11. Calcule la suma de los términos de la serie FIBONACCI cuyos
valores se encuentran entre 100 y 200:
Proceso PROBLEMA_11
Definir a,b,c,d,e Como Entero;
a <- 0;
b <- 1;
Escribir 'Ingrese la cantidad de numeros que quiere la secuencia en
fibonacci: ';
c <- 0;
Leer c;
Para d<-0 Hasta c Hacer
Escribir a;
e <- a+b;
b <- a;
a <- e;
FinPara
FinProceso
12. Diseñar un pseudocódigo que convierta un número del sistema
decimal a:
a) Sistema binario. b) Sistema octal. c) Sistema hexadecimal.
Según se elija.
Proceso PROBLEMA_12
Definir decimal,c,i,bin,r,oct,opcion_1 Como Real;
Definir dec Como Entero;
Definir hex,res,re,d Como Caracter;
hex <- '0';
Escribir '¿A que sistema desea convertir?';
Escribir '[Link] [Link] [Link]';
Leer opcion_1;
Si opcion_1<=0 Entonces
Repetir
Repetir
Escribir '¿A que sistema desea convertir?';
Escribir '[Link] [Link] [Link]';
Leer opcion_1;
Hasta Que opcion_1>=1
Hasta Que opcion_1<=3
FinSi
Si opcion_1>3 Entonces
Repetir
Repetir
Escribir '¿A que sistema desea convertir?';
Escribir '[Link] [Link] [Link]';
Leer opcion_1;
Hasta Que opcion_1>=1
Hasta Que opcion_1<=3
FinSi
Si opcion_1=1 Entonces
Escribir 'Ingrese su numero en decimal para convertirlo a binario';
Leer decimal;
Si decimal>0 Entonces
c <- decimal;
i <- 1;
bin <- 0;
Mientras c<>1 Hacer
bin <- bin+(c MOD 2)*i;
c <- trunc(c/2);
i <- i*10;
FinMientras
bin <- bin+(c MOD 2)*i;
Escribir 'Numero binario:',bin;
FinSi
FinSi
Si opcion_1=2 Entonces
Escribir 'Ingrese su numero decimal para convertirlo en octal:';
Leer dec;
oct <- 0;
i <- 0;
Repetir
r <- dec MOD 8;
oct <- oct+10^i*r;
i <- i+1;
dec <- trunc(dec/8);
Hasta Que dec<8
oct <- oct+10^i*dec;
Escribir 'Numero octal: ',oct;
FinSi
Si opcion_1=3 Entonces
// Hexadecimal
Escribir 'Ingrese su numero decimal para convertirlo en
hexadecimal:';
Leer decimal;
hex <- '';
Repetir
r <- decimal MOD 16;
decimal <- trunc(decimal/16);
Si r=10 Entonces
hex <- concatenar('A ',hex);
Sino
Si r=11 Entonces
hex <- concatenar('B ',hex);
Sino
Si r=12 Entonces
hex <- concatenar('C ',hex);
Sino
Si r=13 Entonces
hex <- concatenar('D ',hex);
Sino
Si r=14 Entonces
hex <- concatenar('E ',hex);
Sino
Si r=15 Entonces
hex <- concatenar('F ',hex);
Sino
Si r<10 O r>16 Entonces
re <- ConvertirATexto(r);
hex <- concatenar(re,hex);
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
Hasta Que decimal<10
Si decimal<>0 Entonces
d <- ConvertirATexto(decimal);
res <- concatenar(d,hex);
Escribir 'Respuesta: ',res;
Sino
res <- hex;
Escribir 'Numero hexadecimal: ',res;
FinSi
FinSi
FinProceso
13. En una granja se requiere saber alguna información para
determinar el precio de venta por cada kilo de huevo. Es importante
determinar el promedio de calidad de las n gallinas que hay en la
granja. La calidad de cada gallina se obtiene según la fórmula:
calidad = peso de la gallina * altura de la gallina
------------------------------------------------------------------
numero de huevos que pone
Finalmente para fijar el precio del kilo de huevo, se toma como base
la siguiente tabla:
PRECIO TOTAL DE CALIDAD PESO POR KILO DE HUEVO
mayor o igual que 15 1.2 * promedio de calidad
mayor que 8 y menor que 15 1.00 * promedio de calidad
menor o igual que 8 0.80 * promedio de calidad
Proceso PROBLEMA_13
Definir a,b,c,d,precio Como Real;
Escribir 'Digite el peso de su gallina:';
Leer a;
Escribir 'Digite la altura de su gallina:';
Leer c;
Escribir 'Digite el numero de huevos de su gallina:';
Leer d;
b <- a*c;
b <- b/d;
Escribir 'La calidad de su gallina es de: ',b;
Si b>=15 Entonces
a <- 1.2*b;
Sino
Si b>8 Entonces
a <- 1*b;
Sino
Si b>=8 Y b<=15 Entonces
a <- 0.80*b;
FinSi
FinSi
FinSi
Escribir 'El precio del huevo de su gallina es: ',a,'$';
FinProceso
14. En una tienda de descuento las personas que van a pagar el
importe de su compra llegan a la caja y sacan una esfera de color,
que les dirá que descuento tendrán sobre el total de su compra.
Determinar la cantidad que pagara cada cliente desde que la tienda
abre hasta que cierra. Se sabe que si el color de la esfera es amarilla
el cliente obtendrá un 40% de descuento; si es blanca un 25% y si es
roja no obtendrá descuento:
Proceso PROBLEMA_14
Definir color,vp,suma,estado Como Real;
color <- 0;
vp <- 0;
estado <- 0;
suma <- 0;
Repetir
Escribir 'Valor a pagar:';
Leer vp;
Escribir 'Color de la balota';
Escribir '1 para rojo, 2 para amarillo y 3 para blanco:';
Leer color;
Si color=1 Entonces
suma <- suma+vp;
Escribir 'valor a pagar es: ',vp;
Sino
Si color=2 Entonces
suma <- suma+vp-((vp*40)/100);
Escribir 'valor a pagar es: ',vp-((vp*40)/100);
Sino
Si color=3 Entonces
suma <- suma+vp-((vp*25)/100);
Escribir 'valor a pagar es: ',vp-((vp*25)/100);
FinSi
FinSi
FinSi
Escribir 'Estado de la tienda 0 para abierta y 1 para cerrada:';
Leer estado;
Hasta Que estado=1
Escribir 'Total de ventas en el dia es: ',suma;
FinProceso
15. El Depto. de Transito del Distrito Capital desea saber, de los n
autos que entran a la ciudad de Bogotá, cuantos entran con
calcomanía de cada color. Conociendo el último dígito de la placa de
cada automóvil se puede determinar el color de la calcomanía
utilizando la siguiente relación:
DÍGITO COLOR
1o2 roja
3o4 rosada
5o6 amarilla
7o8 azul
9o0 verde
Proceso PROBLEMA_15
Definir verde,color,autos,amarillo,roja,contador,azul,digito,rosada
Como Real;
Escribir 'Escriba la cantidad de autos que entraron a la ciudad:';
Leer autos;
contador <- 1;
amarillo <- 0;
rosada <- 0;
roja <- 0;
azul <- 0;
verde <- 0;
Para contador<-1 Hasta autos Hacer
Escribir 'Escribir el ultimo digito de la placa del auto:',contador;
Leer digito;
Si ((digito=1) O (digito=2)) Entonces
roja <- roja+1;
Sino
Si ((digito=3) O (digito=4)) Entonces
rosada <- rosada+1;
Sino
Si ((digito=5) O (digito=6)) Entonces
amarillo <- amarillo+1;
Sino
Si ((digito=7) O (digito=8)) Entonces
azul <- azul+1;
Sino
Si ((digito=9) O (digito=8)) Entonces
verde <- verde+1;
FinSi
FinSi
FinSi
FinSi
FinSi
FinPara
Escribir 'Roja: ',roja;
Escribir 'Rosada: ',rosada;
Escribir 'Amarillo: ',amarillo;
Escribir 'Azul: ',azul;
Escribir 'Verde: ',verde;
FinProceso
16. En una empresa se requiere calcular el salario semanal de cada
uno de los n obreros que laboran en ella. El salario se obtiene de la
siguiente forma:
Si el obrero trabaja 40 horas o menos se le paga $22.000 por hora
Si trabaja más de 40 horas se le paga $22.000 por cada una de las
primeras 40 horas y $25.000 por cada hora extra:
Proceso PROBLEMA_16
Definir hora,horas,salario,salario2 Como Entero;
Escribir 'Horas de trabajo (maximo 40):';
Leer hora;
Escribir 'Horas extras:';
Leer horas;
Si hora<=39 Entonces
salario <- hora*22000;
Escribir 'Se le pagara por hora: 22000';
Escribir 'Su salario semanal es: ',salario;
FinSi
Si hora>=40 Entonces
salario <- hora*22000;
salario2 <- salario+(horas*25000);
Escribir 'Se le pagara por hora: 22000';
Escribir 'Su salario semanal es: ',salario2;
FinSi
FinProceso