Está en la página 1de 6

Solucionario de Examen Parcial

1-1 Escriba un algoritmo en seudocódigo para hallar el área sombreada y el perímetro


del área sombreada de la figura siguiente:

variables REALES: x, área, perímetro


LEER: x
área← 3.14159*(x/2)↑2/2
perímetro ← x+(2*3.14159*x/2)+(2*3.14159*x/2)/2
ESCRIBIR: área, perímetro

1-2 Escriba un algoritmo en seudocódigo para hallar el área sombreada y el perímetro


del área sombreada de la figura siguiente:

variables REALES: x, área, perímetro


LEER: x
área ← x*x/2
perímetro← x+x+x*2↑(1/2)+2*3.14159*x/4
ESCRIBIR: área, perímetro

1-3 Escriba un algoritmo en seudocódigo para hallar el área sombreada y el perímetro


del área sombreada de la figura siguiente:

variables REALES: x, área, perímetro


LEER: x
área← x↑2-(3.14159*x↑2/4)-(3.14159*(x/4)↑2/2)
perímetro← x+x/2+2*3.14159*x/4+2*3.14159*x/4/2
ESCRIBIR: área, perímetro

1-4 Escriba un algoritmo en seudocódigo para hallar el área sombreada y el perímetro


del área sombreada de la figura siguiente:

variables REALES: x, área, perímetro


LEER: x
área ←3.14159*(3*x/2)↑2/2-3.14159*x↑2/2-3.14159*(x/2)↑2/2
perímetro←2*3.14159*(3*x/2)/2+2*3.14159*x/2+2*3.14159*x/2/2
ESCRIBIR: área, perímetro

2-1 Escriba un algoritmo para ingresar un conjunto de N números y determinar la suma


de los números de dos cifras, y la suma de los números de más de dos cifras que
fueron ingresados.

variables ENTERAS: N, numero, contNumeros, sum2cif, sumMas


LEER: N
sum2cif ←0
sumMas ←0
contNumeros← 1
MIENTRAS contNumeros <= N HACER
LEER: numero
SI numero > 99 ENTONCES
sumMas←sumMas+numero
SINO
SI numero > 9 ENTONCES
sum2cif←sum2cif+numero
FIN_SI
FIN_SI
contNumeros←contNumeros+1
FIN_MIENTRAS
ESCRIBIR: “Suma de números de dos cifras:”, sum2cif, “ y suma de números de más
de dos cifras:”, sumMas

2-2 Un año es bisiesto cuando es múltiplo de cuatro, pero para las centurias (centuria
es un año múltiplo de 100) sólo si el año es múltiplo de 400. Escriba un algoritmo que
determine si un año es bisiesto o no, USANDO UNA CONDICIONES SIMPLES

variables ENTERAS: año


LEER: año
SI MODULO(año/4)=0 ENTONCES
SI MODULO(año/100)=0 ENTONCES
SI MODULO(año/400)=0 ENTONCES
ESCRIBIR: “El año es bisiesto”
SINO
ESCRIBIR: “El año NO es bisiesto”
FIN_SI
SINO
ESCRIBIR: “El año es bisiesto”
FIN_SI
SINO
ESCRIBIR: “El año NO es bisiesto”
FIN_SI

2-3 El estado del cuerpo humano de acuerdo a su peso y estatura puede ser: cuando
el peso en Kg es la parte decimal de la estatura (1.65m - 65 kg), peso normal, cuando
es 20% más tiene sobrepeso, y 15% menos le falta peso. Escriba un algoritmo para
determinar el estado del peso de una persona.

variables REALES: estatura, resto, peso


LEER: estatura, peso
resto←MODULO(estatura/1)*100
SI peso <= 1.2*resto Ʌ peso>=0.85*resto ENTONCES
ESCRIBIR: “Peso normal”
SINO
SI peso > 1.20*resto ENTONCES
ESCRIBIR: “Sobrepeso”
SINO
Si peso < 0.85*resto ENTONCES
ESCRIBIR: “Falto de peso”
FIN_SI
FIN_SI
FIN_SI
2-4 Una fecha se da como número de día, número de mes, número de año. Escriba un
algoritmo para ingresar una fecha y luego determinar la fecha antes de N días.
Considere todos los meses de 30 días

variables ENTERAS: día, mes, año, N


LEER: día, mes, año, N
SI N < año*360+mes*30+dia ENTONCES
SI N < día ENTONCES
dia ← dia – N
SINO
dia← dia +mes*30+año*360
dia ← dia – N
año←ENTERO(dia/360)
dia ← MODULO(dia/360)
mes ← ENTERO(dia/30)
dia← MODULO(dia/30)
SI dia = 0 ENTONCES
dia← 30
mes←mes-1
FIN_SI
SI mes <= 0 ENTONCES
mes ← mes +12
año ← año -1
FIN_SI
FIN_SI
ESCRIBIR: “La fecha antes de: ”, N, “ días es: ”, día, “-”, mes, “-”, año
SINO
ESCRIBIR: “No se puede quitar más días de los transcurridos”
FIN_SI

3-1 Escriba un programa en MatLab para determinar el promedio de las edades y el


promedio del número de cursos aprobados de los N alumnos del aula.

N=input(‘¿Cuántos alumnos hay en el aula?: ’);


sumae=0;
sumCursos=0;
contAlumnos=1;
while contAlumnos<=N
edad=input (‘Ingrese edad de un alumno: ’);
curAprob=input (‘Ingrese número de cursos aprobados: ’);
sumae=sumae+edad;
sumCursos=sumCursos+curAprob;
contAlumnos=contAlumnos+1;
end
fprintf (‘Promedio de edades: %4.2f – Promedio de cursos aprobados: %4.2f \n’,
sumae/N, sumCursos/N);

3-2 Escriba un programa MatLab para pedir números reales, cuando el número
ingresado se encuentra en el rango X, Y (X<=Y), siendo X y Y enteros, se considera
valor correcto. El programa debe terminar cuando se hallan ingresado N números
correctos.
N=input (‘¿Cuántos números correctos quiere ingresar?: ’);
X=input (‘Límite inferior del rango: ’);
Y=input (‘Límite superior del rango: ’);
contCorrectos=1;
while contCorrectos <= N
numero=input (‘Ingrese un número real: ’);
if numero>=X && numero<=Y
contCorrectos=contCorrectos+1
end
end

3-3 Dos autos parte simultáneamente hacia el sur, uno del punto A, a 95 Km/h y otro
del punto B, a 65 Km/h (A está al norte de B - Distancia entre A y B: 400 Km.) Escriba
un programa MatLab para hallar la distancia de los autos con respecto al punto A
durante cada una de las N siguientes horas.

N=input (‘Ingrese cuántas horas transcurren?: ’);


distAutoA=0;
distAutoB=250;
hora=1;
while hora <= N
distAutoA=distAutoA+75;
distAutoB=distAutoB+50;
fprintf (‘Hora: %1.0f Auto A: %1.0f Auto B: %1.0f\n’, hora, distAutoA,
distAutoB);
hora=hora+1;
end

3-4 Escriba un programa MatLab para obtener las potencias de un número X, hasta
que dicha suma no exceda un número Y. Ejm Si X=5 , Y=200, el resultado debe ser
1, 5, 25, 125 (156<=200)

X=input (‘Ingrese el número X a potenciar: ’);


Y=input (‘¿Que valor no debe exceder la suma?: ’);
exponente= -1;
suma=0;
while suma<Y
exponente=exponente+1;
suma=suma+X^exponente;
end
if suma > Y
suma=suma-X^exponente;
end
fprintf (lLa suma de las potencias de: %1.0f no mayor que: %1.0f es: %1.0f\n”,X,Y,
suma);

4-1 Escribir un programa MatLab para obtener los N primeros términos de la serie de
Fibonacci, a partir del término de posición X. (Fibonacci: Todo término es igual a la
suma de los dos anteriores, excepto los dos primeros que son cero y uno) Ejm. Si N es
7 y X es 5, el resultado debe ser: 3 5 8 13 21 34 55

N=input (‘¿Cuántos términos de Fibonacci quiere obtener?: ’);


X=input (‘¿Qué valor debe tener el término inicial?: ’);
anterior1=1;
anterior2=0;
contTerminos=1;
while contTerminos<=N
if anterior2 >= X
fprintf (‘%1.0f ’,anterior2);
contTerminos=contTerminos+1
end
suma=anterior2+anterior1;
anterior2=anterior1;
anterior1=suma;
end

4-2 Escribir un programa MatLab para obtener el promedio de los N primeros términos
de la serie de Fibonacci, a partir del término de valor X. (Fibonacci: Todo término es
igual a la suma de los dos anteriores, excepto los dos primeros que son cero y uno)
Ejm. Si N es 4 y X es 5, el resultado debe ser: El promedio es 11.75 (5+ 8+ 13+
21=47/4=11.75)

N=input (‘¿Cuántos términos de Fibonacci quiere promediar?: ’);


X=input (‘¿Qué valor debe tener el término inicial?: ’);
suma2=0;
anterior1=1;
anterior2=0;
contTerminos=1;
while contTerminos<=N
if anterior2 >= X
suma2=suma2+anterior2;
contTerminos=contTerminos+1;
end
suma=anterior2+anterior1;
anterior2=anterior1;
anterior1=suma;
end
fprintf (‘El promedio de los términos es: %4.2f\n’, suma2/N);

4-3 Escribir un programa MatLab para calcular el valor de e con N términos de la serie
siguiente y con X en el rango a,b (a<=b).

N=input (‘¿Con cuántos calculo e ?: ’);


a=input (‘Límite inferior a del rango: ’);
b=input (‘Límite superior b del rango: ’);
while x<a || x>b
x=input (‘Valor de X (Entre a y b) : ’);
end
e = 1;
fact=1;
contTerminos=1;
while contTerminos<=N -1
fact=fact*contTerminos;
e = e + x^contTerminos/fact;
contTerminos=contTerminos+1;
end
e = e ^(x);
fprintf (‘El valor de e es: %10.8f \n’,e);

4-4 Escribir un programa MatLab para calcular el promedio de los N términos de la


serie siguiente y con X en el rango a,b (a<=b).

N=input (‘¿Con cuántos términos calculo el promedio de la serir ?: ’);


a=input (‘Límite inferior a del rango: ’);
b=input (‘Límite superior b del rango: ’);
while x<a || x>b
x=input (‘Valor de X (Entre a y b) : ’);
end
e = 1;
fact=1;
contTerminos=1;
while contTerminos<=N -1
fact=fact*contTerminos;
e = e + x^contTerminos/fact;
contTerminos=contTerminos+1;
end
prom = e/N;
fprintf (‘El promedio de los términos de la serie es: %4.2f \n’,prom);

También podría gustarte