Base de datos distribuidos usando algoritmos genéticos para ...
Diseño de algoritmos usando pseint
-
Upload
daniel-zavala -
Category
Education
-
view
1.202 -
download
2
Transcript of Diseño de algoritmos usando pseint
1
La estructura secuencial es aquella en la que una acción
(instrucción) sigue a otra en secuencia. Las tareas se suceden de
tal modo que la salida de una es la entrada de la siguiente y así
sucesivamente hasta el fin del proceso. Una estructura
secuencial se representa de la siguiente forma:
Inicio
Accion1
Accion2
.
.
AccionN
Fin
2
1. Diseñar un algoritmo que calcule y escriba el cuadrado de cualquier número.
//Diseñar un algoritmo que calcule y escriba el cuadrado de cualquier
número.
ProcesoCuadrado_de_cualquier_numero
Escribir"Ingrese el valor de numero:";
Leernumero;
cuadrado<-numero*numero;
Escribir"Valor de cuadrado es: ",cuadrado;
FinProceso
2. Definir una variable X inicializarla con el valor de 5, incrementar en 1 la variable X, mostrar el
valor de X antes y después del incremento.
//incremento de variable
ProcesoIncremento
definirxComoEntero;
x<-5;
escribir"El valor de x es: ",x;
x<-x+1;
Escribir"El valor de x incrementado es: ",x;
FinProceso
3. Diseñar un algoritmo que solicite valores para dos variables numéricas e intercambie sus
valores, imprimir el valor de ambas variables antes y después del intercambio.
//Algoritmo intercambio de variables
ProcesoIntercambio
definira,b,auxComoEntero;
escribir"Ingrese primer número: ";
leera;
escribir"Ingrese segundo número: ";
leerb;
aux<-a;
a<-b;
b<-aux;
escribir"El nuevo valor de a es: ",a;
escribir"El nuevo valor de b es: ",b;
FinProceso
4. Calcular el producto de dos enteros positivos.
//calcular el producto de dos enteros positivos
Procesoproducto
Definira,b,productoComoEntero;
Escribir"Ingrese primer número: ";
leera;
Escribir"Ingrese segundo número: ";
leerb;
producto<-(a*b);
escribir"El producto de los dos enteros es: ",producto;
FinProceso
3
5. Diseñar un algoritmo que permita ingresar un valor inicial y un valor final. Calcular el valor
central de los números. Imprimir valor resultante.
//Diseñar un algoritmo que permita ingresar un valor inicial y un
valor final. Calcular el valor central
//de los números. Imprimir valor resultante.
Procesovalor_central
definira,bcomoentero;
definirmediacomoreal;
escribir"ingrese valor inicial: ";
leera;
escribir"ingrese valor final: ";
leerb;
media<-(a+b)/2;
escribir"El valor central de dos números es: ",media;
FinProceso
6. Realizar un algoritmo que me permita ingresar un número total de segundos y lo convierta en
horas, minutos y segundos.
//Convertir segundos en horas minutos segundos
Procesohoras_minutos_segundos
definircantidadcomoentero;
definirminutos,seg,temp,horascomoentero;
Escribir"Ingrese el valor de cantidad de segundos:";
Leercantidad;
horas<-cantidad/3600;
temp<-cantidad%3600;
minutos<-temp/60;
seg<-temp%60;
Escribir"son: ",horas," horas ",minutos," minutos ",seg," segundos ";
FinProceso
7. Realizar un algoritmo que reciba un dato hora formado por tres elementos hora, minuto y
segundo y me indique cuantos segundos hay en total en este dato.
//indicar cuantos segundos hay en total
Procesocalcular_segundos
definirhora,min,seg,hh,mm,tComoEntero;
Escribir"Ingrese hora: ";
leerhora;
Escribir"Ingrese minutos: ";
leermin;
Escribir"Ingrese segundos: ";
leerseg;
hh<-hora*3600;
mm<-min*60;
t<-hh+mm+seg;
Escribir"El número total de segundos es: ",t;
FinProceso
8. Hacer un algoritmo que calcule el área del triángulo dada la base y la altura.
4
//Area del triángulo
ProcesoArea_del_Triangulo
Definirbase,altura,areaComoEntero;
Escribir"Ingrese base: ";
leerbase;
Escribir"Ingrese Altura: ";
leeraltura;
area<-(base*altura)/2;
escribir"El area del triangulo es: ",area;
FinProceso
9. Hacer un algoritmo que lea un número entero positivo compuesto de 4 dígitos y lo escriba
invertido
//invertir número
ProcesoInvertir
DefinirnumeroComoEntero;
Escribir"Ingrese un número de cuatro dígitos: ";
leernumero;
Escribir"El número invertido es: ";
Escribirsinsaltarnumero%10;
numero<-numero/10;
Escribirsinsaltarnumero%10;
numero<-numero/10;
Escribirsinsaltarnumero%10;
numero<-numero/10;
Escribirsinsaltarnumero%10;
FinProceso
10. Hace un algoritmo que calcule la longitud de la circunferencia, el área del círculo y el volumen
de la esfera para un radio ingresado por el teclado. Las formulas son: Longitud de la
circunferencia = 2πR. Área = 4πR2. Volumen = 4/3πR3
//calcule el valor de la circunferecnia
Procesocircunferencia
definirlong,ar,vol,radioComoReal;
escribir"Ingrese radio de la circunferencia: ";
leerradio;
long<-2*(radio*3.14);
ar<-4*(3.14*radio^2);
vol<-4/3*(3.14*radio^3);
escribir"La longitud de la circunferencia es: ",Long;
escribir"El area de la circunferencia es: ",ar;
escribir"El volumen de la circunferencia es: ",vol;
FinProceso
11. Calcular la distancia recorrida por un auto, en un tiempo dado, calcular la velocidad del auto,
conociendo que V = D/T
//calcular ladistacnia recorrida de un auto
Procesodistancia_recorrida
Definirdistancia,tiempo,velocidadcomoreal;
Escribir"Ingrese distancia: ";
leerdistancia;
Escribir"Ingrese tiempo: ";
leertiempo;
velocidad<-distancia/tiempo;
escribir"La distancia recorrida del auto es: ",velocidad;
FinProceso
5
12. Dado una distancia en pulgadas convertirlas a centímetros conociendo que 1 pulgada = 2.54
cm.
//convertir pulgadas a centimetros
Procesoconversor
definirpul,centcomoreal;
Escribir" Ingrese las pulgadas a convertir: ";
leerpul;
cent<-pul*2.54;
Escribir" Son: ",cent,"cm.";
FinProceso
13. Calcular el nuevo salario de un obrero que obtuvo un incremento del 25% sobre su salario
anterior.
//aumento de salario a obrero
ProcesoSalario_obrero
definirsalario,sueldo,nuevoComoReal;
Escribir"Ingrese el salario";
Leersalario;
Nuevo<-salario*0.25+salario;
Escribir"El nuevo salario es: ",nuevo;
FinProceso
14. Dada una cantidad en soles obtener la equivalencia en dólares, asumiendo que la unidad
cambiaría es un dato desconocido (solicitarlo al usuario)
//convertir soles en dolares
Procesoequivalencia_dolares
definirs,d,dolarComoReal;
Escribir"Ingrese dinero en soles: ";
Leers;
Escribir"Ingrese precio del dolar: ";
leerd;
dolar<-(s*d);
Escribir"La equivalencia en dólares es: ",dolar," $";
FinProceso
15. Hacer un algoritmo que calcule el valor de una ecuación de primer grado (ax + b=0).
//ecuación de primer grado
Procesoecuacion_primer_grado
definira,b,xComoReal;
escribir"Ingrese valor de a de la ecuación: ";
leera;
escribir"Ingrese valor de b de la ecuación: ";
leerb;
x<--b/a;
Escribir"El valor de X es: ",x;
FinProceso
16. Hacer un algoritmo que calcule el valor de la hipotenusa de un triángulo rectángulo,
ingresando por el teclado el valor de sus catetos (Teorema de Pitágoras) a2 = b2 + c2.
6
//hallar el teorema de depitagoras
Procesohipotenusa
definira,b,ccomoreal;
Escribir'teorema de pitagoras';
Escribir'ingrese el primer cateto a';
Leera;
Escribir'ingrese el segundo cateto b';
Leerb;
c<-(rc(a^2+b^2));
Escribir'la hipotenusa es:',c;
FinProceso
17. Un alumno desea saber su promedio de una materia, sabiendo que su promedio se da en base
a lo siguiente: Examen 40%, tareas 30% y trabajos 30%. Obtener el promedio teniendo las
calificaciones obtenidas en cada uno de estos rubros.
//promedio de materias
Procesopromedio_materias
definirex,tar,tra,prom,p1,p2,p3comoreal;
Escribir"Ingrese nota del examen: ";
leerex;
Escribir"Ingrese nota de tarea: ";
leertar;
Escribir"Ingrese nota de trabajo: ";
leertra;
p1<-ex*0.40;
p2<-tar*0.30;
p3<-tra*0.30;
prom<-(p1+p2+p3);
Escribir"El promedio es: ",prom;
FinProceso
18. Diseñar un algoritmo que pida el año de una fecha de nacimiento y nombre, calcule y muestre
la edad de la persona.
//calcular edad persona
ProcesoNombre_fecha
DefinirnombreComoCaracter;
definirfechaComoreal;
definiredadcomoentero;
Escribir"Ingrese su nombre:";
leernombre;
Escribir"Ingrese año de nacimiento:";
leerfecha;
edad<-(2013-fecha);
Escribir"Hola ",nombre," tu edad es ",edad;
FinProceso
7
PROBLEMAS CONDICIONALES Y OPERADORES
1. Determinar si un alumno aprueba o reprueba un curso, sabiendo que aprobará si su promedio de tres calificaciones es mayor o igual a 12, reprueba en caso contrario.
8
//Algoritmo condicional para calcular el promedio de tres notas
ProcesoPromedio_de_tres_numeros
definirnota1,nota2,nota3,promediocomoentero;
escribir"Ingrese nota 1";
Leernota1;
escribir"Ingrese nota 2";
Leernota2;
escribir"Ingrese nota 3";
Leernota3;
promedio<-(nota1+nota2+nota3)/3;
Sipromedio>=12Entonces
Escribir"APROBADO";
Sino
Escribir"DESAPROBADO";
FinSi
FinProceso
2. Construya el algoritmo tal que dado como dato la calificación de un alumno en un examen,
escriba "aprobado" en caso de que esa calificación sea mayor a 10. //Algoritmo para condicionar la calificación de un alumno
ProcesoCalificacion
definirnotacomoentero;
escribir"Ingrese su nota: ";
leernota;
Sinota>10Entonces
Escribir"Aprobado";
Sino
Escribir"Desaprobado";
FinSi
FinProceso
3. Escribir un algoritmo que reciba un ángulo y mostrar el mensaje "es un ángulo recto" si el
ángulo es igual a 90 y "No es un ángulo recto" en caso contrario. //algoritmo para determinar si es un angulo
recto
Procesoangulo
definirangulocomoentero;
Escribir"Ingrese ángulo: ";
Leerangulo;
Siangulo=90Entonces
escribir"Es un ángulo recto";
Sino
escribir"No es un ángulo recto";
FinSi
FinProceso
4. Hacer un algoritmo que lea 2 números y deducir si están en orden creciente o decreciente.
//algoritmo para determinar si un numeroes creciente o decreciente
Procesocreciente_decreciente
definira,bcomoentero;
Escribir"Ingrese primer número: ";
Leera;
Escribir"Ingrese segundo número: ";
Leerb;
9
Sia<bEntonces
Escribir"Está en órden creciente";
Sino
Escribir"Está en órden decreciente";
FinSi
FinProceso
5. Escribir un algoritmo que lea 2 números y visualice el mayor.
//algoritmo que lea 2 números y visualice el
mayor
Procesonumero_mayor
definira,bcomoentero;
Escribir"Ingrese primer número: ";
Leera;
Escribir"Ingrese segundo número: ";
Leerb;
Sia>bEntonces
escribira," Es mayor que ",b;
Sino
escribirb," Es mayor que ",a;
FinSi
FinProceso
6. Escribir un algoritmo que lea dos valores x e y, determina si son iguales y en caso de no serlo
indica cuál de ellos es el mayor. //algoritmo para leer dos numeros y determinar si son iguales o
mayores
Procesoiguales_mayor
definirx,ycomoentero;
Escribir"Ingrese valor x: ";
Leerx;
Escribir"Ingrese valor y: ";
Leery;
Six=yEntonces
Escribir"X e Y son iguales";
Sino
Six>yEntonces
escribirx," Es mayor que ",y;
Sino
escribiry," Es mayor que ",x;
FinSi
FinSi
FinProceso
7. Hacer un algoritmo que lea dos números y los imprima en orden ascendente.
//algoritmo para leer dos numeros e imprimirlos en orden ascendente
Procesoascendente
definirx,ycomoentero;
Escribir"Ingrese valor x: ";
Leerx;
Escribir"Ingrese valor y: ";
Leery;
Six>yEntonces
Escribir"orden ascendente: ",x," , ",y;
Sino
10
Escribir"orden ascendente: ",y," , ",x;
FinSi
FinProceso
8. Dados tres números calcular el mayor.
//calcular el mayor de tres números
Procesosin_titulo
DefinirNumero1,Numero2,Numero3,MayorComoEntero;
Escribir"Ingrese el Numero 1: ";
LeerNumero1;
Escribir"Ingrese el Numero 2: ";
LeerNumero2;
Escribir"Ingrese el Numero 3: ";
LeerNumero3
SiNumero1>Numero2Entonces
Mayor<-Numero1;
SiNumero1>Numero3Entonces
Mayor<-Numero1;
Sino
Mayor<-Numero3;
FinSi
Sino
SiNumero1<Numero2Entonces
Mayor<-Numero2;
SiNumero2>Numero3Entonces
Mayor<-Numero2;
Sino
Mayor<-Numero3;
FinSi
Sino
SiNumero3>Numero1Entonces
Mayor<-Numero3;
SiNumero3>Numero2Entonces
Mayor<-Numero3;
Sino
Mayor<-Numero2;
FinSi
Sino
SiNumero1=Numero2Entonces
SiNumero3>Numero1Entonces
Mayor<-Numero3;
Sino
Mayor<-Numero1;
FinSi
FinSi
FinSi
FinSi
FinSi
Escribir"El numero mayor es el ",Mayor;
FinProceso
9. Dadas 3 longitudes, decir mediante un mensaje si se forma o no un triangulo (cada lado tiene que ser menor que la suma de los otros dos).
11
//lados triangulo
ProcesoTriangulo
definira,b,ccomoentero;
Escribir"Ingrese el valor de los tres lados del triángulo:";
Leera,b,c;
Sia<b+c&b<a+c&c<a+bEntonces
Escribir"Forman un triángulo";
Sino
Escribir"No forman un triángulo";
FinSi
FinProceso
10. Diseñar un algoritmo que me permita determinar si un número ingresado desde el teclado es
un número par o impar. //determinar si un numero es par o impar
Procesopar_impar
definiracomoentero;
Escribir"Ingrese número: ";
Leera;
Sia%2=0Entonces
Escribir"Es par";
Sino
Escribir"Es impar";
FinSi
FinProceso
11. Averiguar si dados dos números, uno es divisor de otro.
//Averiguar si dados dos números, uno es divisor de otro.
Procesodivisibilidad
definira,bcomoentero;
Escribir"Ingrese número: ";
Leera;
Escribir"Ingrese número: ";
Leerb;
Sib%a=0Entonces
Escribirb," Es divisible de :",a;
Sino
Escribira," Es no es divisible de :",b;
FinSi
FinProceso
12. Leer tres números x, y, z, imprimir los valores máximos y mínimos. El procedimiento será
comparaciones sucesivas de parejas de números. //maximo mínimo
Procesomaximo_minimo
definirx,y,z,max,mincomoentero;
Escribir"Ingrese tres valores:";
Leerx,y,z;
Six<yEntonces
min<-x;
max<-y;
Sino
min<-y;
max<-x;
12
FinSi
Siz<minEntonces
min<-z;
sino
siz<maxEntonces
max<-z;
FinSi
FinSi
Escribir"El número máximo es: ",max;
Escribir"El número minimo es: ",min;
FinProceso
13. Determinar si un número entero positivo es exactamente divisible por 5.
//numeromultiplo de 5
Procesomultiplo
Definirnumerocomoentero;
Escribir"Ingrese el valor de numero:";
Leernumero;
Sinumero%5=0Entonces
Escribir"si es multiplo de 5";
SiNo
Escribir"no es multiplo de 5";
FinSi
FinProceso
14. Hacer un algoritmo que lea un carácter y determine si es: Vocal, número negativo, positivo,
par o impar.
//vocal, número negativo, positivo, par o impar
Procesodeterminar
DefinircComocaracter;
Definirnumcomoentero;
Escribir"Ingrese un número o letra";
leerc;
num<-convertirAnumero(c);
//Escribir c,"=",num;
SegunnumHacer
49,17:
Escribir"Es la vocal a";
53,21:
Escribir"Es la vocal e";
57,25:
Escribir"Es la vocal i";
63,31:
Escribir"Es la vocal o";
69,37:
Escribir"Es la vocal u";
DeOtroModo:
Sinum<0Entonces
Escribir"Es un número negativo";
Sino
Escribir"Es un número positivo";
FinSi
Sinum%2=0Entonces
Escribir"Es un número Par";
13
Sino
Escribir"Es un número Impar";
FinSi
FinSegun
FinProceso
15. ingresar el número del mes y determinar cuantos días tiene el mes, para el caso de Febrero, el
algoritmo deberá indicar que no cuenta con la información necesaria para dar la respuesta. //dias de un mes
ProcesoDefinir_mes_dias
Definirmescomoentero;
Escribir"Ingrese número de mes";
leermes;
SegunmesHacer
2:
Escribir"No se cuanta con información";
4,6,9,11:
Escribir"Tiene 30 dias";
1,3,5,7,8,10,12:
Escribir"Tiene 31 dias";
DeOtroModo:
Escribir"No es un mes válido";
FinSegun
FinProceso
16. Ingresar un número del 1 a! 7 decir cual día de la semana le corresponde.
//nombre de dia de la semana segun valor
Procesodia_semana
definirdiacomoentero;
Escribir"Ingrese numero";
leerdia;
SegundiaHacer
1:
Escribir"El dia es lunes";
2:
Escribir"El dia es martes";
3:
Escribir"El dia es miercoles";
4:
Escribir"El dia es jueves";
5:
Escribir"El dia es viernes";
6:
Escribir"El dia es sabado";
7:
Escribir"El dia es domingo";
DeOtroModo:
Escribir"No es un dia válido";
FinSegun
FinProceso
17. Ingresar un número del 1 a! 12 decir cual mes del año le corresponde. //meses del año
14
Procesosin_titulo
Definirncomoentero;
Escribir"Ingrese número: ";
leern;
Sin=1Entonces
Escribir"Es enero";
Sino
Sin=2Entonces
Escribir"Es febrero";
Sino
Sin=3Entonces
Escribir"Es marzo";
Sino
Sin=4Entonces
Escribir"Es abril";
Sino
Sin=5Entonces
Escribir"Es mayo";
Sino
Sin=6Entonces
Escribir"Es junio";
Sino
Sin=7Entonces
Escribir"Es julio";
Sino
Sin=8Entonces
Escribir"Es agosto";
Sino
Sin=9Entonces
Escribir"Es setiembre";
Sino
Sin=10Entonces
Escribir"Es octubre";
Sino
Sin=11Entonces
Escribir"Es noviembre";
Sino
Sin=12Entonces
Escribir"Es diciembre";
Sino
Escribir"No es ningundia del año";
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinProceso
18. Determinar si una persona es del signo Aries dada su fecha de nacimiento.
//determinar si es de signnoaries
Procesoaries
definirdia,mes,fechacomoentero;
Escribir"ingrese dia mes y año de nacimiento";
15
leerdia,mes,fecha;
Simes=3&dia>=21&dia<=30Entonces
Escribir"El signo es aries";
Sino
Simes=4&dia>=1&dia<=20Entonces
Escribir"El signo es aries";
Sino
Escribir"No es el signo de aries";
FinSi
FinSi
FinProceso
//21 de marzo al 20 de Abril
19. Calcular el número de pulsaciones que una persona debe tener por cada 10 segundos de
ejercicio aeróbico; la fórmula que se aplica cuando el sexo es femenino es: (22.0-edad)/10; si el sexo es masculino es: (210-edad)/10. //algoritmo para determinar pulsaciones hombre o mujer
Procesopulsaciones
definirs,ecomoentero;
definirpcomoreal;
Escribir"Ingrese Sexo 1=masculino, 2=femenino";
leers;
Escribir"Ingrese edad";
leere;
SegunsHacer
1:
p<-(210-e)/10;
Escribir"El número de pulsaciones es: ",p;
2:
p<-(220-e)/10;
Escribir"El número de pulsaciones es: ",p;
DeOtroModo:
Escribir"Elija una opción valida";
FinSegun
FinProceso
20. Escribir un programa que lea dos números y permita al usuario elegir que operación aritmética
desea realizar: (+, *, /)
//algorito para leer dosnumeros y permitir al usuario
//realizar operaciones aritmeticas
Procesooperacion
Definirn1,n2,s,r,m,opComoEntero;
DefinirdComoreal;
Escribir"Ingrese primer número";
Leern1;
Escribir"Ingrese segundo número";
Leern2;
Escribir"ingrese opcion 1=suma, 2=resta, 3=multiplicación,
4=división";
leerop;
SegunopHacer
1:
s<-n1+n2;
Escribir"la suma es: ",s;
2:
r<-n1-n2;
16
Escribir"la resta es: ",r;
3:
m<-n1*n2;
Escribir"la multiplicación es: ",m;
4:
d<-n1/n2;
Escribir"la división es: ",d;
DeOtroModo:
Escribir"Elija una opción válida";
FinSegun
FinProceso
21. Se ingresan tres valores por teclado, si todos son diferentes imprimir la diferencia entreellos, y si son iguales entre ellos la suma del primero con el segundo y a este resultado se lomultiplica por el tercero. //si son diferentes restar y si son iguales sumar a+b*c
Procesodiferentes
definira,b,c,s,dComoEntero;
escribir"Ingrese tres valores";
leera,b,c;
Si(a<>b&b<>c&a<>c)Entonces
d<-(a-b)-c;
Escribir"La división es :",d;
Sino
Si(a=b&b=c&a=c)Entonces
s<-(a+b)*c;
Escribir"El resultado es :",s;
Sino
Escribir"No valido";
FinSi
FinSi
FinProceso
22. Se ingresan por teclado tres números, si todos los valores ingresados son menores a
10,imprimir en pantalla la leyenda "Todos los números son menores a diez". //menor diez
Procesomenor_diez
definira,b,cComoEntero;
escribir"Ingrese tres valores";
leera,b,c;
Si(a<10|b<10|c<10)Entonces
escribir"Alguno de los números es menor a diez";
Sino
Escribir"No válido";
FinSi
FinProceso
23. Escribir un programa que pida ingresar la coordenada de un punto en el plano, es decir dosvalores enteros x e y (distintos a cero). Posteriormente imprimir en pantalla en quecuadrante se ubica dicho punto. (1º Cuadrante si x > 0 Y y> 0 , 2º Cuadrante: x < 0 Y y> 0,etc.)
17
//mostrar el cuadrante del plano cartesiano
Procesocuadrante
definirx,yComoReal;
escribir"Ingrese punto X e Y: ";
leerx,y;
Si(x<0&y>0)Entonces
Escribir"Está en el II cuadrante";
Sino
Si(x>0&y>0)Entonces
Escribir"Está en el I cuadrante";
Sino
Si(x>0&y<0)Entonces
Escribir"Está en el III cuadrante";
Sino
Escribir"Está en el IV cuadrante";
FinSi
FinSi
FinSi
FinProceso
PROBLEMAS ESTRUCTURAS ITERATIVAS
PARA (for)
PseudoCódigo: Para variable_contador<- valor_inicialHasta valor_finalCon Paso incremento Hacer Instrucciones …
18
PROBLEMAS CON ESTRUCTURAS ITERATIVAS
MIENTRAS…HACER (while)
PseudoCódigo:
Mientras expresion_logicaHacer
secuencia_de_acciones;
FinMientras
REPETIR … HASTA (Repeat…Until)
PseudoCódigo:
Repetir secuencia_de_acciones; Hasta Que expresion_lógica
19
1. Hacer un algoritmo que permita ingresar 10 números y muestre cual de ellos fue el mayor de todos. //hallar el mayor número
Procesomayor_de_varios
definiri,mayor,numerocomoentero;
//mayor<--9999;
Parai<-1Hasta7ConPaso1Hacer
leernumero;
Sii=1entoncesmayor<-numero;
finsi
Sinumero>mayorEntonces
mayor<-numero;
//Sino
// acciones_por_falso
FinSi
FinPara
Escribir"El mayor de todos es :",mayor;
FinProceso
2. Hacer un algoritmo que permita ingresar 10 números y muestre cual de ellos fue el menor
de todos. //hallar el menor número
Procesomenor_de_varios
definiri,mayor,numerocomoentero;
//mayor<--9999;
Parai<-1Hasta7ConPaso1Hacer
leernumero;
Sii=1entoncesmayor<-numero;
finsi
Sinumero<mayorEntonces
mayor<-numero;
FinSi
FinPara
Escribir"El mayor de todos es :",mayor;
FinProceso
3. Elaborar un algoritmo que imprima la tabla de multiplicar del cualquier número dado por
el usuario.
//imprimir tabla de multiplicar
Procesonumeros_naturales
definirn,mcomoentero;
Escribir"Tabla de que número desea";
leerm;
Paran<-1Hasta12ConPaso1Hacer
escribirm," * ",n," = ",n*m;
FinPara
FinProceso
4. Hacer un algoritmo que permita ingresar N números y muestre cuál de ellos fue el menor
de todos. //menor de varios numeros
Procesomenor_de_varios
definiri,mayor,numero,ncomoentero;
Escribir"Ingrese notas del alumno :";
20
leern;
Escribir"Ingrese ",n," números :";
Parai<-1HastanConPaso1Hacer
leernumero;
Sii=1entoncesmayor<-numero;
finsi
Sinumero<mayorEntonces
mayor<-numero;
FinSi
FinPara
Escribir"El menor de todos es :",mayor;
FinProceso
5. Dibujar en pantalla un triángulo como:
//dibujar un triangulo
ProcesoTriangulo
definiri,j,fComoEntero;
Escribir"¿Cuantas Filas?";
leerf;
Parai<-1HastafHacer
Paraj<-1HastaiHacer
EscribirSinSaltar"X";
FinPara
Escribir" ";
FinPara
FinProceso
6. Se ingresan 5 notas de un alumno, publicar 2 peores notas.
// Se ingresan 5 notas publicar las dos peores notas
Procesodos_mejores
Definiri,nota,x,yComoentero;// x e y almacenan las peores notas
DefinirremplazadoComoLogico;
// asumimos que x e y son las mejores notas (osea lo contrario)
x<-20;
y<-20;
// variable bandera o control: para saber si ya se tomó la nota
ingresada
remplazado<-FALSO;// todavia no reemplazó
// repetir de 1 hasta 5
Parai<-1Hasta5Conpaso1Hacer
Escribir"Ingresa nota ",i;
Leernota;
Sinota<xEntonces// ¿la nota ingresada es peor de la que tenemos en
x?
Six<yEntonces// ¿x es peor todavia que y?
y<-x;// Entonces guardarla
FinSi
x<-nota;// x almacena la nueva peor nota
remplazado<-VERDADERO;// indica que Ya se tomó la nueva peor nota
FinSi
// ¿aun NO se reemplazó la nota ingresada Y la nota es peor que y?
Si~remplazado¬a<yEntonces
y<-nota;// guardarla
FinSi
remplazado<-FALSO;// la siguiente repetición empieza de nuevo
FinPara
x
xxx
xxxxx
xxxxxxx
xxxxxxxxx
21
Escribir"Las peores notas son ",x," y ",y;
FinProceso
7. Dada N notas calcular el promedio de las notas aprobadas y el promedio de las notas
desaprobadas. //promedio notas aprobatorias y desaprobatorias
ProcesoPromedio
definirn,i,asuma,na,dsuma,nd,notaComoEntero;
Escribir"¿Cuántas notas son?";
leern;
asuma<-0;
na<-0;
dsuma<-0;
nd<-0;
Parai<-1HastanConPaso1Hacer
Escribirsinsaltar"Ingrese nota ",i," : ";
leernota;
Sinota>10Entonces
asuma<-asuma+nota;
na<-na+1;
Sino
dsuma<-dsuma+nota;
nd<-nd+1;
FinSi
FinPara
Escribir"El promedio de notas aprobatorias es :",asuma/na;
Escribir"El promedio de notas desaprobatorias es :",dsuma/nd;
FinProceso
8. Dados a y b enteros, informar el producto de ambos por sumas sucesivas. //producto de a y b por sumas sucesivas
Procesosumas_sucesivas
definira,b,suma1,suma2,iComoEntero;
Escribir"Ingrese valor de a y b :";
leera,b;
suma1<-0;
suma2<-0;
Parai<-1HastabConPaso1Hacer
suma1<-suma1+a;
FinPara
i<-1;
Mientrasi<=aHacer
suma2<-suma2+b;
i<-i+1;
FinMientras
Escribir"suma de a ",suma1;
Escribir"suma de b ",suma2;
FinProceso
9. Dados a y n enteros, informar la potencia enésima de a por productos sucesivos.
//Dados a y n enteros, informar la potencia enésima de a por
productos sucesivos.
Procesopotencia_enesima
definira,n,suma,iComoEntero;
Escribir"Ingrese valor de a y b :";
leera,n;
22
suma<-0;
i<-1;
Mientrasi<-aHacer
suma<-suma+a^n;
i<-i+1;
FinMientras
escribirsuma;
FinProceso
10. Dados 10 números enteros visualizar la suma de los números pares de la lista, decir
además, cuántos números pares existen y cual es la media aritmética de los números pares. //numero invertido
Procesonumero_invertido
definirn,invcomoentero;
Escribir"Ingrese número entero positivo: ";
leern;
inv<-0;
Repetir
inv<-(inv*10)+(n%10);
n<-(n/10);
HastaQuen<=0
Escribir"El número invertido es: ",inv;
FinProceso
11. Encontrar el número mayor de una lista de N números positivos dados por el usuario.
//encontrar el mayor numero de una lista "N" ingresada por el
usuario
Procesomayor_numero
definiri,mayor,numero,ncomoentero;
Escribir"Ingrese numero de notas a evaluar :";
leern;
Escribir"Ingrese ",n," números :";
Parai<-1HastanConPaso1Hacer
leernumero;
Sii=1entoncesmayor<-numero;
finsi
Sinumero>mayorEntonces
mayor<-numero;
FinSi
FinPara
Escribir"el numero mayor es :",mayor;
FinProceso
12. Hacer un algoritmo que muestre los números que son múltiplos de 2 comprendidos entre 100 a 200 inclusive. //ejercicio 13.
Procesomultiplo
definiri,xcomoentero;
leeri;
Parax<-100hasta200conpaso2Hacer
EscribirSinSaltarx," ,";
Finpara
FinProceso
23
13. Hacer un algoritmo que lea un numero entero positivo y lo escriba invertido
//numero invertido
Procesonumero_invertido
definirn,invcomoentero;
Escribir"Ingrese número entero positivo: ";
leern;
inv<-0;
Repetir
inv<-(inv*10)+(n%10);
n<-(n/10);
HastaQuen<=0
Escribir"El número invertido es: ",inv;
FinProceso
14. Diseñar un algoritmo que lea números enteros (positivos y negativos) y muestre el mayor y el menor de ellos. El algoritmo terminará cuando se teclee un cero. //Diseñar un algoritmo que lea números enteros (positivos y
negativos) y muestre el mayor y el menor de ellos. El algoritmo
terminará cuando se teclee un cero.
Proceson_enteros
definirnumero,menor,mayor,i,fcomoentero;
i<-1;
Repetir
escribir"ingrese numero :";
leernumero;
Sii=1Entonces
mayor<-numero;
menor<-numero;
FinSi
Sinumero>mayorEntonces
mayor<-numero;
sino
Sinumero<>0&numero<menorEntonces
menor<-numero;
FinSi
FinSi
i<-i+1;// incrementa en 1 la variable i
HastaQuenumero=0
Finproceso
15. Escribir un algoritmo que lea un número entero y por el método de divisiones sucesivas lo imprima en binario.
//conversor binario
ProcesoConvertorBinario
definirdecimal,max,iComoEntero;
Dimensionarray[32];// definir un array o coleccion de datos
Escribir"Ingrese Numero decimal";
Leerdecimal;
max<-1;
Mientrasdecimal>1Hacer
array[max]<-decimal%2;// obtener bit del RESTO y almacenar en el
array
decimal<-decimal/2;// el cociente es el nuevo numero
max<-max+1;// incrementar el contador del arreglo
FinMientras
array[max]<-decimal%2;// tomar el ultimo bit
// imprimir los bits en orden inverso
24
Parai<-maxHasta1Conpaso-1Hacer
Escribirsinsaltararray[i];
FinPara
FinProceso
16. Realizar el diseño de un algoritmo que lea cinco valores numéricos y calcule su producto, utilizando la estructura de control "para", "mientras" y "repetir" por separado.
//22 producto
Procesoproducto
definiri,n,sumaComoEntero;
suma<-1;
Parai<-1Hasta5ConPaso1Hacer
Escribir"Ingrese ",i," número";
leern;
suma<-n*suma;
FinPara
Escribir"El producto es :",suma;
FinProceso