Vous êtes sur la page 1sur 25

La estructura secuencial es aquella en la que una accin

(instruccin) 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

1. Disear un algoritmo que calcule y escriba el cuadrado de cualquier


nmero.

//Disear un algoritmo que calcule y escriba el cuadrado de cualquier


nmero.
Proceso Cuadrado_de_cualquier_numero
Escribir "Ingrese el valor de numero:";
Leer numero;
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 despus del incremento.
//incremento de variable
Proceso Incremento
definir x Como Entero;
x <- 5;
escribir "El valor de x es: ", x;
x<- x+1;
Escribir "El valor de x incrementado es: ", x;
FinProceso

3. Disear un algoritmo que solicite valores para dos variables numricas e


intercambie sus valores, imprimir el valor de ambas variables antes y
despus del intercambio.
//Algoritmo intercambio de variables
Proceso Intercambio
definir a,b, aux Como Entero;
escribir "Ingrese primer nmero: ";
leer a;
escribir "Ingrese segundo nmero: ";
leer b;
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
Proceso producto
Definir a,b,producto Como Entero;
Escribir "Ingrese primer nmero: ";
leer a;
Escribir "Ingrese segundo nmero: ";
leer b;
producto <-(a*b);
escribir "El producto de los dos enteros es: ",producto;
FinProceso

5. Disear un algoritmo que permita ingresar un valor inicial y un valor final.


Calcular el valor central de los nmeros. Imprimir valor resultante.

//Disear un algoritmo que permita ingresar un valor inicial y un


valor final. Calcular el valor central
//de los nmeros. Imprimir valor resultante.
Proceso valor_central
definir a,b como entero;
definir media como real;
escribir "ingrese valor inicial: ";
leer a;
escribir "ingrese valor final: ";
leer b;
media<-(a+b)/2;
escribir "El valor central de dos nmeros es: ",media;
FinProceso

6. Realizar un algoritmo que me permita ingresar un nmero total de segundos


y lo convierta en horas, minutos y segundos.
//Convertir segundos en horas minutos segundos
Proceso horas_minutos_segundos
definir cantidad como entero;
definir minutos, seg, temp,horas como entero;
Escribir "Ingrese el valor de cantidad de segundos:";
Leer cantidad;
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
Proceso calcular_segundos
definir hora,min, seg, hh, mm, t Como Entero;
Escribir "Ingrese hora: ";
leer hora;
Escribir "Ingrese minutos: ";
leer min;
Escribir "Ingrese segundos: ";
leer seg;
hh<-hora*3600;
mm<-min*60;
t<-hh+mm+seg;
Escribir "El nmero total de segundos es: ",t;
FinProceso

8. Hacer un algoritmo que calcule el rea del tringulo dada la base y la altura.
//Area del tringulo
Proceso Area_del_Triangulo

Definir base,altura,area Como Entero;


Escribir "Ingrese base: ";
leer base;
Escribir "Ingrese Altura: ";
leer altura;
area <-(base*altura)/2;
escribir "El area del triangulo es: ",area;
FinProceso

9. Hacer un algoritmo que lea un nmero entero positivo compuesto de 4


dgitos y lo escriba invertido
//invertir nmero
Proceso Invertir
Definir numero Como Entero;
Escribir "Ingrese un nmero de cuatro dgitos: ";
leer numero;
Escribir "El nmero invertido es: ";
Escribir sin saltar numero%10;
numero<-numero/10;
Escribir sin saltar numero%10;
numero<-numero/10;
Escribir sin saltar numero%10;
numero<-numero/10;
Escribir sin saltar numero%10;
FinProceso

10.Hace un algoritmo que calcule la longitud de la circunferencia, el rea del


crculo y el volumen de la esfera para un radio ingresado por el teclado. Las
formulas son: Longitud de la circunferencia = 2R. rea = 4R2. Volumen =
4/3R3
//calcule el valor de la circunferecnia
Proceso circunferencia
definir long,ar,vol,radio Como Real;
escribir "Ingrese radio de la circunferencia: ";
leer radio;
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 la distacnia recorrida de un auto
Proceso distancia_recorrida
Definir distancia,tiempo,velocidad como real;
Escribir "Ingrese distancia: ";
leer distancia;
Escribir "Ingrese tiempo: ";
leer tiempo;
velocidad <-distancia/tiempo;
escribir "La distancia recorrida del auto es: ",velocidad;
FinProceso

12.Dado una distancia en pulgadas convertirlas a centmetros conociendo que


1 pulgada = 2.54 cm.
//convertir pulgadas a centimetros
Proceso conversor
definir pul,cent como real;
Escribir " Ingrese las pulgadas a convertir: ";
leer pul;
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
Proceso Salario_obrero
definir salario,sueldo,nuevo Como Real;
Escribir "Ingrese el salario";
Leer salario;
Nuevo<-salario*0.25+salario;
Escribir "El nuevo salario es: ",nuevo;
FinProceso

14.Dada una cantidad en soles obtener la equivalencia en dlares, asumiendo


que la unidad cambiara es un dato desconocido (solicitarlo al usuario)
//convertir soles en dolares
Proceso equivalencia_dolares
definir s,d,dolar Como Real;
Escribir "Ingrese dinero en soles: ";
Leer s;
Escribir "Ingrese precio del dolar: ";
leer d;
dolar<-(s*d);
Escribir "La equivalencia en dlares es: ",dolar," $";
FinProceso

15.Hacer un algoritmo que calcule el valor de una ecuacin de primer grado (ax
+ b=0).
//ecuacin de primer grado
Proceso ecuacion_primer_grado
definir a,b,x Como Real;
escribir "Ingrese valor de a de la ecuacin: ";
leer a;
escribir "Ingrese valor de b de la ecuacin: ";
leer b;
x<--b/a;
Escribir "El valor de X es: ",x;
FinProceso

16.Hacer un algoritmo que calcule el valor de la hipotenusa de un tringulo


rectngulo, ingresando por el teclado el valor de sus catetos (Teorema de
Pitgoras) a2 = b2 + c2.
5

//hallar el teorema de de pitagoras


Proceso hipotenusa
definir a,b,c como real;
Escribir 'teorema de pitagoras';
Escribir 'ingrese el primer cateto a';
Leer a;
Escribir 'ingrese el segundo cateto b';
Leer b;
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
Proceso promedio_materias
definir ex,tar,tra,prom, p1,p2,p3 como real;
Escribir "Ingrese nota del examen: ";
leer ex;
Escribir "Ingrese nota de tarea: ";
leer tar;
Escribir "Ingrese nota de trabajo: ";
leer tra;
p1<-ex*0.40;
p2<-tar*0.30;
p3<-tra*0.30;
prom<-(p1+p2+p3);
Escribir "El promedio es: ",prom;
FinProceso

18.Disear un algoritmo que pida el ao de una fecha de nacimiento y nombre,


calcule y muestre la edad de la persona.
//calcular edad persona
Proceso Nombre_fecha
Definir nombre Como Caracter;
definir fecha Como real;
definir edad como entero;
Escribir "Ingrese su nombre:";
leer nombre;
Escribir "Ingrese ao de nacimiento:";
leer fecha;
edad<-(2013-fecha);
Escribir "Hola ",nombre, " tu edad es ", edad;
FinProceso

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,


7

reprueba en caso contrario.


//Algoritmo condicional para calcular el promedio de tres notas
Proceso Promedio_de_tres_numeros
definir nota1,nota2,nota3, promedio como
entero;
escribir "Ingrese nota 1";
Leer nota1;
escribir "Ingrese nota 2";
Leer nota2;
escribir "Ingrese nota 3";
Leer nota3;
promedio<-(nota1+nota2+nota3)/3;
Si promedio>=12 Entonces
Escribir "APROBADO";
Sino
Escribir "DESAPROBADO";
FinSi
FinProceso
2. Construya el algoritmo tal que dado como dato la calificacin de un alumno

en un examen, escriba "aprobado" en caso de que esa calificacin sea


mayor a 10.
//Algoritmo para condicionar la calificacin de un alumno
Proceso Calificacion
definir nota como entero;
escribir "Ingrese su nota: ";
leer nota;
Si nota>10 Entonces
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
Proceso angulo
definir angulo como entero;
Escribir "Ingrese ngulo: ";
Leer angulo;
Si angulo=90 Entonces
escribir "Es un ngulo recto";
Sino
escribir "No es un ngulo recto";
FinSi
FinProceso
4. Hacer un algoritmo que lea 2 nmeros y deducir si estn en orden creciente

o decreciente.
//algoritmo para determinar si un numeroes creciente o decreciente
Proceso creciente_decreciente

definir a,b como entero;


Escribir "Ingrese primer nmero: ";
Leer a;
Escribir "Ingrese segundo nmero: ";
Leer b;
Si a<b Entonces
Escribir "Est en rden creciente";
Sino
Escribir "Est en rden decreciente";
FinSi
FinProceso
5. Escribir

un algoritmo que lea 2 nmeros y


visualice el mayor.
//algoritmo que lea 2 nmeros y visualice el
mayor
Proceso numero_mayor
definir a,b como entero;
Escribir "Ingrese primer nmero: ";
Leer a;
Escribir "Ingrese segundo nmero: ";
Leer b;
Si a>b Entonces
escribir a," Es mayor que ",b;
Sino
escribir b," 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 cul de ellos es el mayor.


//algoritmo para leer dos numeros y determinar si son iguales o
mayores
Proceso iguales_mayor
definir x,y como entero;
Escribir "Ingrese valor x: ";
Leer x;
Escribir "Ingrese valor y: ";
Leer y;
Si x=y Entonces
Escribir "X e Y son iguales";
Sino
Si x>y Entonces
escribir x," Es mayor que ",y;
Sino
escribir y," Es mayor que ",x;
FinSi
FinSi
FinProceso
7. Hacer un algoritmo que lea dos nmeros y los imprima en orden

ascendente.
//algoritmo para leer dos numeros e imprimirlos en orden ascendente
Proceso ascendente
definir x,y como entero;
Escribir "Ingrese valor x: ";

Leer x;
Escribir "Ingrese valor y: ";
Leer y;
Si x>y Entonces
Escribir "orden ascendente: ",x," , ",y;
Sino
Escribir "orden ascendente: ", y," , ",x;
FinSi
FinProceso
8. Dados tres nmeros calcular el mayor.
//calcular el mayor de tres nmeros
Proceso sin_titulo
Definir Numero1, Numero2, Numero3, Mayor Como Entero;
Escribir "Ingrese el Numero 1: ";
Leer Numero1;
Escribir "Ingrese el Numero 2: ";
Leer Numero2;
Escribir "Ingrese el Numero 3: ";
Leer Numero3
Si Numero1 > Numero2 Entonces
Mayor<-Numero1;
Si Numero1 > Numero3 Entonces
Mayor<-Numero1;
Sino
Mayor<-Numero3;
FinSi
Sino
Si Numero1 < Numero2 Entonces
Mayor<-Numero2;
Si Numero2 > Numero3 Entonces
Mayor<-Numero2;
Sino
Mayor<-Numero3;
FinSi
Sino
Si Numero3 > Numero1 Entonces
Mayor<-Numero3;
Si Numero3 > Numero2 Entonces
Mayor<-Numero3;
Sino
Mayor<-Numero2;
FinSi
Sino
Si Numero1 = Numero2 Entonces
Si Numero3 > Numero1 Entonces
Mayor<-Numero3;
Sino
Mayor<-Numero1;
FinSi
FinSi
FinSi
FinSi
FinSi
Escribir "El numero mayor es el ", Mayor;
FinProceso

10

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).
//lados triangulo
Proceso Triangulo
definir a,b,c como entero;
Escribir "Ingrese el valor de los tres lados del tringulo:";
Leer a,b,c;
Si a<b+c & b<a+c & c<a+b Entonces
Escribir "Forman un tringulo";
Sino
Escribir "No forman un tringulo";
FinSi
FinProceso

Disear un algoritmo que me permita determinar si un nmero


ingresado desde el teclado es un nmero par o impar.

10.

//determinar si un numero es par o impar


Proceso par_impar
definir a como entero;
Escribir "Ingrese nmero: ";
Leer a;
Si a%2=0 Entonces
Escribir "Es par";
Sino
Escribir "Es impar";
FinSi
FinProceso
11.

Averiguar si dados dos nmeros, uno es divisor de otro.

//Averiguar si dados dos nmeros, uno es divisor de otro.


Proceso divisibilidad
definir a,b como entero;
Escribir "Ingrese nmero: ";
Leer a;
Escribir "Ingrese nmero: ";
Leer b;
Si b%a=0 Entonces
Escribir b, " Es divisible de :" ,a;
Sino
Escribir a, " Es no es divisible de :" ,b;
FinSi
FinProceso
12. Leer tres nmeros x, y, z, imprimir los valores mximos y mnimos. El

procedimiento ser comparaciones sucesivas de parejas de nmeros.


//maximo mnimo
Proceso maximo_minimo
definir x,y,z,max,min como entero;
Escribir "Ingrese tres valores:";
Leer x,y,z;
Si x<y Entonces
min<-x;

11

max<-y;
Sino
min<-y;
max<-x;
FinSi
Si z<min Entonces
min<-z;
sino
si z<max Entonces
max<-z;
FinSi
FinSi
Escribir "El nmero mximo es: ", max;
Escribir "El nmero minimo es: ", min;
FinProceso

13.

Determinar si un nmero entero positivo es exactamente divisible por

5.
//numero multiplo de 5
Proceso multiplo
Definir numero como entero;
Escribir "Ingrese el valor de numero:";
Leer numero;
Si numero % 5 = 0 Entonces
Escribir "si es multiplo de 5";
SiNo
Escribir "no es multiplo de 5";
FinSi
FinProceso

Hacer un algoritmo que lea un carcter y determine si es: Vocal,


nmero negativo, positivo, par o impar.

14.

//vocal, nmero negativo, positivo, par o impar


Proceso determinar
Definir c Como caracter;
Definir num como entero;
Escribir "Ingrese un nmero o letra";
leer c;
num<-convertirAnumero(c);
//Escribir c,"=",num;
Segun num Hacer
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";
De Otro Modo:
Si num<0 Entonces

12

Escribir "Es un nmero negativo";


Sino

Escribir "Es un nmero positivo";


FinSi
Si num%2=0 Entonces
Escribir "Es un nmero Par";
Sino
Escribir "Es un nmero Impar";
FinSi
FinSegun
FinProceso
15. ingresar el nmero del mes y determinar cuantos das tiene el mes,

para el caso de Febrero, el algoritmo deber indicar que no cuenta


con la informacin necesaria para dar la respuesta.
//dias de un mes
Proceso Definir_mes_dias
Definir mes como entero;
Escribir "Ingrese nmero de mes";
leer mes;
Segun mes Hacer
2:

Escribir "No se
4,6,9,11:
Escribir "Tiene
1,3,5,7,8,10,12:
Escribir "Tiene
De Otro Modo:
Escribir "No es
FinSegun
FinProceso

cuanta con informacin";


30 dias";
31 dias";
un mes vlido";

Ingresar un nmero del 1 a! 7 decir cual da de la semana le


corresponde.

16.

//nombre de dia de la semana segun valor


Proceso dia_semana
definir dia como entero;
Escribir "Ingrese numero";
leer dia;
Segun dia Hacer
1:
2:
3:
4:
5:
6:
7:

Escribir "El dia es lunes";


Escribir "El dia es martes";
Escribir "El dia es miercoles";
Escribir "El dia es jueves";
Escribir "El dia es viernes";
Escribir "El dia es sabado";

Escribir "El dia es domingo";


De Otro Modo:

13

Escribir "No es un dia vlido";


FinSegun
FinProceso

17.
Ingresar un nmero del 1 a! 12 decir cual mes del ao le corresponde.
//meses del ao
Proceso sin_titulo
Definir n como entero;
Escribir "Ingrese nmero: ";
leer n;
Si n=1 Entonces
Escribir "Es enero";
Sino
Si n=2 Entonces
Escribir "Es febrero";
Sino
Si n=3 Entonces
Escribir "Es marzo";
Sino
Si n=4 Entonces
Escribir "Es abril";
Sino
Si n=5 Entonces
Escribir "Es mayo";
Sino
Si n=6 Entonces
Escribir "Es junio";
Sino
Si n=7 Entonces
Escribir "Es julio";
Sino
Si n=8 Entonces
Escribir "Es agosto";
Sino
Si n=9 Entonces
Escribir "Es setiembre";
Sino
Si n=10 Entonces
Escribir "Es octubre";
Sino
Si n=11 Entonces
Escribir "Es
noviembre";
Sino
Si n=12 Entonces
Escribir "Es
diciembre";
Sino
Escribir "No es
ningun dia del ao";
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi
FinSi

14

FinSi
FinSi
FinProceso

Determinar si una persona es del signo Aries dada su fecha de


nacimiento.

18.

//determinar si es de signno aries


Proceso aries
definir dia,mes,fecha como entero;
Escribir "ingrese dia mes y ao de nacimiento";
leer dia,mes,fecha;
Si mes=3 & dia>=21 & dia<=30 Entonces
Escribir "El signo es aries";
Sino
Si mes=4 & dia>=1 & dia<=20 Entonces
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 nmero de pulsaciones que una persona debe tener por

cada 10 segundos de ejercicio aerbico; la frmula 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
Proceso pulsaciones
definir s,e como entero;
definir p como real;
Escribir "Ingrese Sexo 1=masculino, 2=femenino";
leer s;
Escribir "Ingrese edad";
leer e;
Segun s Hacer
1:
p<-(210-e)/10;
Escribir "El nmero de pulsaciones es: ",p;
2:
p<-(220-e)/10;
Escribir "El nmero de pulsaciones es: ",p;
De Otro Modo:
Escribir "Elija una opcin valida";
FinSegun
FinProceso
20. Escribir un programa que lea dos nmeros y permita al usuario elegir

que operacin aritmtica desea realizar:

(+, *, /)

//algorito para leer dos numeros y permitir al usuario


//realizar operaciones aritmeticas
Proceso operacion
Definir n1,n2,s,r,m,op Como Entero;
Definir d Como real;
Escribir "Ingrese primer nmero";
Leer n1;

15

Escribir "Ingrese segundo nmero";


Leer n2;
Escribir "ingrese opcion 1=suma, 2=resta, 3=multiplicacin,
4=divisin";
leer op;
Segun op Hacer
1:
2:

s<-n1+n2;
Escribir "la suma es: ",s;
r<-n1-n2;
Escribir "la resta es: ",r;

3:
4:

m<-n1*n2;
Escribir "la multiplicacin es: ",m;

d<-n1/n2;
Escribir "la divisin es: ",d;
De Otro Modo:
Escribir "Elija una opcin vlida";
FinSegun
FinProceso
21. Se ingresan tres valores por teclado, si todos son diferentes imprimir

la diferencia entre ellos, y si son iguales entre ellos la suma del


primero con el segundo y a este resultado se lo multiplica por el
tercero.
//si son diferentes restar y si son iguales sumar a+b*c
Proceso diferentes
definir a,b,c,s,d Como Entero;
escribir "Ingrese tres valores";
leer a,b,c;
Si (a<>b & b<>c & a<>c) Entonces
d<-(a-b)-c;
Escribir "La divisin 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 nmeros, si todos los valores ingresados

son menores a 10, imprimir en pantalla la leyenda "Todos los


nmeros son menores a diez".
//menor diez
Proceso menor_diez
definir a,b,c Como Entero;
escribir "Ingrese tres valores";
leer a,b,c;
Si (a<10 | b<10 | c<10) Entonces
escribir "Alguno de los nmeros es menor a diez";
Sino
Escribir "No vlido";

16

FinSi
FinProceso

23. Escribir un programa que pida ingresar la coordenada de un punto en

el plano, es decir dos valores enteros x e y (distintos a cero).


Posteriormente imprimir en pantalla en que cuadrante se ubica dicho
punto. (1 Cuadrante si x > 0 Y y > 0 , 2 Cuadrante: x < 0 Y y > 0,
etc.)
//mostrar el cuadrante del plano cartesiano
Proceso cuadrante
definir x,y Como Real;
escribir "Ingrese punto X e Y: ";
leer x,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

17

PROBLEMAS ESTRUCTURAS ITERATIVAS

PARA (for)
PseudoCdigo:
Para variable_contador <- valor_inicial Hasta
valor_final Con Paso incremento
Hacer Instrucciones
FinPara

MIENTRASHACER (while)
PseudoCdigo:

Mientras expresion_logica Hacer


secuencia_de_acciones;
FinMientras

18

REPETIR HASTA (RepeatUntil)


PseudoCdigo:
Repetir secuencia_de_acciones;
Hasta Que expresion_lgica

PROBLEMAS CON ESTRUCTURAS ITERATIVAS

1. Hacer un algoritmo que permita ingresar 10 nmeros y muestre cual de


ellos fue el mayor de todos.
//hallar el mayor nmero
Proceso mayor_de_varios
definir i,mayor,numero como entero;
//mayor<--9999;
Para i<-1 Hasta 7 Con Paso 1 Hacer
leer numero;
Si i=1 entonces mayor<-numero;
finsi
Si numero>mayor Entonces
mayor<-numero;
//Sino
//
acciones_por_falso
FinSi
FinPara
Escribir "El mayor de todos es :", mayor;
FinProceso

2. Hacer un algoritmo que permita ingresar 10 nmeros y muestre cual de


ellos fue el menor de todos.
//hallar el menor nmero
Proceso menor_de_varios
definir i,mayor,numero como entero;
//mayor<--9999;
Para i<-1 Hasta 7 Con Paso 1 Hacer
leer numero;
Si i=1 entonces mayor<-numero;
finsi
Si numero<mayor Entonces
mayor<-numero;
FinSi
FinPara

19

Escribir "El mayor de todos es :", mayor;


FinProceso

3. Elaborar un algoritmo que imprima la tabla de multiplicar del cualquier


nmero dado por el usuario.
//imprimir tabla de multiplicar
Proceso numeros_naturales
definir n,m como entero;
Escribir "Tabla de que nmero desea";
leer m;
Para n<-1 Hasta 12 Con Paso 1 Hacer
escribir m, " * ", n ," = ", n*m;
FinPara
FinProceso

4. Hacer un algoritmo que permita ingresar N nmeros y muestre cul de


ellos fue el menor de todos.
//menor de varios numeros
Proceso menor_de_varios
definir i,mayor,numero,n como entero;
Escribir "Ingrese notas del alumno :";
leer n;
Escribir "Ingrese ", n , " nmeros :";
Para i<-1 Hasta n Con Paso 1 Hacer
leer numero;
Si i=1 entonces mayor<-numero;
finsi
Si numero<mayor Entonces
mayor<-numero;
FinSi
FinPara
Escribir "El menor de todos es :", mayor;
FinProceso

5. Dibujar en pantalla un tringulo como:


x
xxx
xxxxx
//dibujar un triangulo
xxxxxxx
Proceso Triangulo
xxxxxxxxx
definir i,j,f Como Entero;
Escribir "Cuantas Filas?";
leer f;
Para i<-1 Hasta f Hacer
Para j<-1 Hasta i Hacer
Escribir Sin Saltar "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
Proceso dos_mejores
Definir i, nota, x, y Como entero; // x e y almacenan las
peores notas
Definir remplazado Como Logico;

20

// 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
Para i <- 1 Hasta 5 Con paso 1 Hacer
Escribir "Ingresa nota ", i;
Leer nota;
Si nota < x Entonces // la nota ingresada es peor de la que
tenemos en x?
Si x < y Entonces // 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 & nota < y Entonces
y <- nota; // guardarla
FinSi
remplazado <- FALSO; // la siguiente repeticin empieza de
nuevo
FinPara
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
Proceso Promedio
definir n,i,asuma,na,dsuma,nd, nota Como Entero;
Escribir "Cuntas notas son?";
leer n;
asuma<-0;
na<-0;
dsuma<-0;
nd<-0;
Para i<-1 Hasta n Con Paso 1 Hacer
Escribir sin saltar "Ingrese nota ", i," : ";
leer nota;
Si nota>10 Entonces
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

21

8. Dados a y b enteros, informar el producto de ambos por sumas


sucesivas.
//producto de a y b por sumas sucesivas
Proceso sumas_sucesivas
definir a,b, suma1,suma2, i Como Entero;
Escribir "Ingrese valor de a y b :";
leer a,b;
suma1<-0;
suma2<-0;
Para i<-1 Hasta b Con Paso 1 Hacer
suma1<-suma1+a;
FinPara
i<-1;
Mientras i<=a Hacer
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 ensima de a por productos


sucesivos.
//Dados a y n enteros, informar la potencia ensima de a por
productos sucesivos.
Proceso potencia_enesima
definir a,n, suma, i Como Entero;
Escribir "Ingrese valor de a y b :";
leer a,n;
suma<-0;
i<-1;
Mientras i<-a Hacer
suma<-suma+a ^ n;
i<-i+1;
FinMientras
escribir suma;
FinProceso

10.Dados 10 nmeros enteros visualizar la suma de los nmeros pares de la


lista, decir adems, cuntos nmeros pares existen y cual es la media
aritmtica de los nmeros pares.
//numero invertido
Proceso numero_invertido
definir n,inv como entero;
Escribir "Ingrese nmero entero positivo: ";
leer n;
inv<-0;
Repetir
inv<-(inv*10)+(n % 10);
n<-(n/10);
Hasta Que n<=0
Escribir "El nmero invertido es: ",inv;
FinProceso

11.Encontrar el nmero mayor de una lista de N nmeros positivos dados


por el usuario.
22

//encontrar el mayor numero de una lista "N" ingresada por el


usuario
Proceso mayor_numero
definir i,mayor,numero,n como entero;
Escribir "Ingrese numero de notas a evaluar :";
leer n;
Escribir "Ingrese ", n , " nmeros :";
Para i<-1 Hasta n Con Paso 1 Hacer
leer numero;
Si i=1 entonces mayor<-numero;
finsi
Si numero>mayor Entonces
mayor<-numero;
FinSi
FinPara
Escribir "el numero mayor es :", mayor;
FinProceso

12.Hacer un algoritmo que muestre los nmeros que son mltiplos de 2


comprendidos entre 100 a 200 inclusive.
//ejercicio 13.

Proceso multiplo
definir i,x como entero;
leer i;
Para x <- 100 hasta 200 con paso 2 Hacer
Escribir Sin Saltar x, " ,";
Finpara
FinProceso

13.Hacer un algoritmo que lea un numero entero positivo y lo escriba


invertido
//numero invertido
Proceso numero_invertido
definir n,inv como entero;
Escribir "Ingrese nmero entero positivo: ";
leer n;
inv<-0;
Repetir
inv<-(inv*10)+(n % 10);
n<-(n/10);
Hasta Que n<=0
Escribir "El nmero invertido es: ",inv;
FinProceso

14.Disear un algoritmo que lea nmeros enteros (positivos y negativos) y


muestre el mayor y el menor de ellos. El algoritmo terminar cuando se
teclee un cero.
//Disear un algoritmo que lea nmeros enteros (positivos y
negativos) y muestre el mayor y el menor de ellos. El algoritmo
terminar cuando se teclee un cero.
Proceso n_enteros
definir numero,menor,mayor,i,f como entero;
i<-1;
Repetir

23

escribir "ingrese numero :";


leer numero;
Si i=1 Entonces
mayor<-numero;
menor<-numero;
FinSi
Si numero>mayor Entonces
mayor<-numero;
sino
Si numero <>0 & numero<menor Entonces
menor<-numero;
FinSi
FinSi
i<-i+1;// incrementa en 1 la variable i
Hasta Que numero=0
Finproceso

15.Escribir un algoritmo que lea un nmero entero y por el mtodo de


divisiones sucesivas lo imprima en binario.
//conversor binario
Proceso ConvertorBinario
definir decimal, max, i Como Entero;
Dimension array[32];
// definir un array o coleccion de
datos
Escribir "Ingrese Numero decimal";
Leer decimal;
max <-1;
Mientras decimal > 1 Hacer
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
Para i <- max Hasta 1 Con paso -1 Hacer
Escribir sin saltar array[i];
FinPara
FinProceso

16.Realizar el diseo de un algoritmo que lea cinco valores numricos y


calcule su producto, utilizando la estructura de control "para", "mientras"
y "repetir" por separado.
//22 producto
Proceso producto
definir i,n,suma Como
suma<-1;
Para i<-1 Hasta 5 Con
Escribir "Ingrese
leer n;
suma<-n * suma;
FinPara
Escribir "El producto
FinProceso

Entero;
Paso 1 Hacer
",i," nmero";

es :",suma;

24

25

Vous aimerez peut-être aussi