Académique Documents
Professionnel Documents
Culture Documents
RESPUESTAS A CONSULTAS Y
EJEMPLOS DE SOLUCIN PARA LOS EJERCICIOS UTILIZANDO
ESTRUCTURAS ITERATIVAS Y PROCEDIMIENTOS
OBJETIVO DE LA ACTIVIDAD
Consolidar los primeros 4 temas de la materia y practicar el uso de las tres estructuras iterativas o
ciclos vistos en la materia: Para, Mientras y Repetir.
EJERCICIOS
Para cada uno de los siguientes enunciados, construye algoritmos en pseudocdigo que resuelvan el
problema mediante el secuenciamiento de acciones, validacin de datos, uso de condicionales y de
estructuras iterativas:
1.
Escribir un algoritmo que solicite parejas de nmeros, hasta que el usuario indique que no hay ms
valores para procesar. El algoritmo debe contar la cantidad de parejas procesadas y calcular para cada una
la media armnica, donde:
Resuelva utilizando Repetir
MediaArmnica
2 , 0* X *Y
X Y
Ayuda: En este ejercicio la cantidad de valores a procesar no es conocida, le debes solicitar al usuario el
valor X e Y para utilizar en la frmula de la Media Armnica y tambin le debes preguntar si desea procesar
otro par de valores, la respuesta del usuario la pueden guardar en una variable tipo Entero, carcter o
string, si es entero por ejemplo, utilizando 0 para no y 1 para si. Ayudarse con los ejercicios vistos en clase.
Accin Principal
Repetir
Pg. 1
2.
Escribir un algoritmo que pida una secuencia de 100 nmeros enteros al usuario y verifique para cada valor
suministrado si se trata de un nmero primo. Para los nmeros que no son primos, se debe indicar el
resultado de la suma de sus dgitos.
Resuelva utilizando Para y Repetir
Ayuda:
En este ejercicio se utiliza un ciclo dentro del cual se va a solicitar 100 nmeros enteros al usuario, para
cada nmero se verifica si es un nmero primo (http://es.wikipedia.org/wiki/N%C3%BAmero_primo
http://mimosa.pntic.mec.es/jgomez53/matema/conocer/primos.htm )
Para los nmeros que no son primos, se debe indicar el resultado de la suma de sus dgitos, por ejemplo, si
el usuario suministr el nmero 24 (que NO es un primo) el resultado a mostrar ser 2 + 4, es decir la suma
de sus dgitos. Si el nmero suministrado es 252 el resultado a mostrar ser 2 + 5 + 2
En este ejercicio se usan VARIOS ciclos, ya que se tiene uno para solicitar los 100 nmeros, otro para validar
si el nmero es primo contando la cantidad de divisores que tiene, y otro para descomponer el nmero no
primo en sus dgitos ayudados con el div y el mod. Como ven por lo menos hay 3 ciclos.
Accin Principal
# procesa una secuencia de nmeros enteros verificando si
# cada nmero es primo o el resultado de la suma de sus
# dgitos
contDiv=0;
FinAccin Principal;
Si (contDiv 2) Entonces
Sino
Retornar(Verdadero);
Retornar(Falso);
FSi;
FinFuncin;
Funcin sumaDgitos(Entero x): Entero
Pg. 2
sumaDig=0;
Repetir
sumaDig = sumaDig + x mod 10;
x = x div 10;
Hasta x == 0;
Retornar(sumaDig);
FinFuncin;
3.
Un alpinista va rumbo a un pico de una montaa verificando sus avances en 16 puntos mediante la
observacin de la altura a la que se encuentra. Construye un algoritmo que indique cunto fue el ascenso
neto del alpinista, cul fue el mayor cambio de altura y entre qu puntos se observ.
Resuelva utilizando Mientras
Accin Ascenso
# procesa medidas de altura en n puntos del camino de
# un alpinista
Entero i, n, pAnt, pAct;
Real altAnt, altAct; Ascenso, mayorCambio;
mayorCambio=0;
n=16; # cantidad de puntos observados
ascenso=0; i = 1; altAnt = 0;
Mientras i 16 hacer
# a partir de la medida 2 se guarda la altura
FinFuncin;
FSi;
Pg. 3
4.
Algoritmo que obtenga la suma de los nmeros pares que hay entre dos nmeros ledos por teclado, es decir,
el usuario te va a indicar cual es el primer valor (num1), cual es el segundo valor (num2) y tu algoritmo
debe calcular y escribir cuntos nmeros pares hay entre num1 y num2 y cules son.
El algoritmo debe considerar el caso de que num1 < num2, de que num1 num2, o el caso en que num1 =
num2, y funcione sin obligar al usuario a que el primer nmero sea el menor.
Resuelva utilizando Repetir
Accin procesarPares
# suma de los nmeros pares entre dos nmeros
# suministrados por el usuario
Entero num1, num2, suma, cuenta;
Pg. 4
i 1
k 1
10 i * (k * n / x)3
x
Accin Frmula
# traduce la frmula con sumatoria y multiplicatorias a un algoritmo
Entero i, n, k, x, Suma, Multi;
Real Res1, Res2;