Você está na página 1de 6

Universidad Central de Venezuela. Recopilación y Preparación Prof.

Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

-GUÍA DE EJERCICIOS Nº 1
EJEMPLOS EN NOTACIÓN PSEUDOFORMAL - TEMAS 1 AL 4

Para cada uno de los siguientes enunciados, construya un algoritmo que resuelva el problema mediante el
secuenciamiento de acciones elementales:

1. Intercambie el contenido de dos variables


Acción IntercambiarVariables;
# acción que intercambia dos variables A y B, utilizando una variable auxiliar C

# sección de declaración de variables, se asume que las variables serán de tipo entero
# se utiliza el símbolo ‘#’ para indicar comentarios en el algoritmo
Entero A, B, C;

# se solicitan los valores de A y B al usuario y se leen los valores para asignarlos a las variables
Escribir(“indique el valor de la primera variable, llamada A”);
Leer(A);
Escribir(“indique el valor de la segunda variable, llamada B”);
Leer(B);

# intercambio de variables, antes se guarda uno de los valores en C (por ejemplo el valor de B),
# para no perderlo en el intercambio
C  B; B  A; A  C;

# se le muestra al usuario los resultados del intercambio


Escribir(“Ahora el valor de A es: ” + A); Escribir(“Ahora el valor de B es: ” + B);
Facción IntercambiarVariables;

2. Calcule el precio de un artículo tras aplicarle un 15% de IVA.


Acción Calcular_PrecioconIva;
# acción que calcula el precio con IVA de un producto

# sección de declaración de variables, se asume que el IVA es un valor constante igual a 14%
Real PrecioInicial, ImpuestoBs, PrecioFinal;
Constante Real IVA;

# sección donde se inicializan variables y se solicitan datos de entrada


IVA  0,14; # 0,14 es el valor real equivalente a 14% (=14/100)
Escribir(“indique el precio del artículo”); Leer(PrecioInicial);

# sección de cálculos, se calcula lo que se pagará por impuesto y el precio final


ImpuestoBs  PrecioInicial * IVA; PrecioFinal  PrecioInicial + ImpuestoBs;

# sección donde se informan al usuario de los resultados


Escribir(“El precio inicial del artículo es: ” + PrecioInicial);
Escribir(“El impuesto a pagar por el artículo será de Bs.: ” + ImpuestoBs);
Escribir(“El precio final del artículo es: ” + PrecioFinal);
Facción Calcular_PrecioconIva;

Pág 1 / 6
Universidad Central de Venezuela. Recopilación y Preparación Prof. Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

3. Dadas dos fechas del año 2005 en el formato DD MM (dos enteros que corresponden al día y al mes
respectivamente) introducidas por el usuario, elabore un algoritmo que calcule la cantidad de días
existentes entre las dos fechas sin contar los extremos. Asuma que todos los meses tienen 30 días.

Acción NúmerodeDías;
# acción que calcula el número de días que han transcurrido entre dos fechas del mismo año
# sección de declaración de variables
Entero día1, día2, mes1, mes2, meses, díasExistentes;

# sección donde se inicializan variables, solicitando al usuario los valores de las fechas
Escribir(“indique el día de la fecha 1, la fecha menor”); Leer(día1);
Escribir(“indique el mes de la fecha 1”); Leer(mes1);
Escribir(“indique el día de la fecha 2, la fecha mayor”); Leer(día2);
Escribir(“indique el mes de la fecha 2”); Leer(mes2);

# sección de cálculos,
# se calcula los meses que hay entre las dos fechas, no incluyendo los meses de los extremos
meses  (mes2 – mes1) -1;

# se calculan los días existentes entre las fechas


# 30-día1 son los días que transcurrieron desde la fecha hasta el final de ese mes
díasExistentes  meses*30 + (30 – día1) + día2;

# sección donde se informan al usuario de los resultados


Escribir(“La fecha 1 es: ” + día1 + ”-” + mes1);
Escribir(“La fecha 2 es: ” + día2 + ”-” + mes2);
Escribir(“Los días existentes entre las fechas son: ” + díasExistentes);

Facción NúmerodeDías;

4. Dados los coeficientes de dos polinomios de segundo grado, calcule la suma, resta y multiplicación
de ambos polinomios e imprima los coeficientes de los polinomios resultantes.

Análisis del problema: Una vez suministrados los coeficientes de los polinomios se procede a realizar las
operaciones sobre ellos.
Sean los polinomios de segundo grado P1= 5x 2+3x-10 y P2=2x2-8x+3 se tienen los siguientes resultados:

P1+P2 (suma de polinomios) P1-P2 (resta) P1*P2 (multiplicación)


5x + 3x - 10
2
-P2 = -1*P2= -2x + 8x - 3
2
5x2 + 3x - 10
2x - 8x + 3
2
* 2x2 - 8x + 3
7x2 - 5x - 7 5x2 + 3x - 10 15x2 + 9x - 30
-2x2 + 8x - 3 -40x3 - 24x2 + 80x
3x2 +11x - 13 10x4 + 6x3 - 20x2 2

10x - 34x - 29x + 89x - 30


4 3 2 2

Pág 2 / 6
Universidad Central de Venezuela. Recopilación y Preparación Prof. Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

Acción OperacionesConPolinomios;
# acción donde se leen los coeficientes de los polinomios y se realizan operaciones de suma,
# resta y multiplicación entre ellos

# coeficientes del polinomio 1 (P1)


Entero C2p1, C1p1, C0p1; # C2p1 para el coeficiente del término de grado 2 (coeficiente de x 2),
# C1p1 para el coeficiente del término de grado 1 (coeficiente de x)

Entero C2p2, C1p2, C0p2; # coeficientes del polinomio 2 (P2)

Entero C2r, C1r, C0r; # coeficientes del polinomio resultado para la suma y la resta
Entero C4r, C3r; # coeficientes del polinomio resultado para grado 3 y 4, usados en la
multiplicación

# sección donde se leen los valores iniciales


Escribir(“indique los coeficientes del polinomio 1”); Leer(C2p1, C1p1, C0p1);
Escribir(“indique los coeficientes del polinomio 2”); Leer(C2p2, C1p2, C0p2);

# sección de cálculos
# SUMA de los polinomios, P1+P2
C0r  C0p1 + C0p2;
C1r  C1p1 + C1p2;
C2r  C2p1 + C2p2;

# se informa el resultado al usuario


Escribir(“los coeficientes del resultado de la suma de los polinomios, P1+P2 son: ”);
Escribir(C2r + “,” + C1r + “,” + C0r); #concatenamos con “,” para separar los valores

# RESTA de los polinomios, P1-P2


C0r  C0p1 + (-1)*C0p2; C1r  C1p1 + (-1)*C1p2; C2r  C2p1 + (-1)*C2p2;

# se informa el resultado al usuario


Escribir(“los coeficientes del resultado de la resta de los polinomios, P1-P2 son: ”);
Escribir(C2r + “,” + C1r + “,” + C0r);

# MULTIPLICACIÓN de los polinomios, P1*P2


C0r  C0p2 * C0p1;
C1r  (C0p2 * C1p1) + (C1p2 * C0p1);
C2r  (C0p2 * C2p1) + (C1p2 * C1p1) + (C2p2 * C0p1);
C3r  (C1p2 * C2p1) + (C2p2 * C1p1);
C4r  C2p2 * C2p1;

# se informa el resultado al usuario


Escribir(“los coeficientes del resultado de la multiplicación de P1 y P2 son: ”);
Escribir(C4r + “,” + C3r + “,” + C2r + “,” + C1r + “,” + C0r);

Acción OperacionesConPolinomios;

Pág 3 / 6
Universidad Central de Venezuela. Recopilación y Preparación Prof. Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

5. Costos de una flota de camiones.


Suponga que una industria mantiene una flota de tres (3) camiones para repartir sus productos. En
cada viaje, el conductor anota la distancia recorrida en kilómetros, los litros de gasolina usados, el
costo de la gasolina y otros gastos de mantenimiento del camión.
Como parte del proceso de contabilidad, el administrador de la empresa necesita calcular y registrar
para cada camión y para cada viaje, los kilómetros recorridos por litro, el costo total del viaje y el
costo por kilómetro. Diseñar un algoritmo en pseudocódigo para llevar a cabo estos cálculos.

Acción Control_Gastos_Flota;
# acción que permite conocer los costos de un camión en un viaje

# declaración de variables
Real KmRecorridos, litrosGasolina, precioLitroGasolina, otrosGastos; #datos recopilados por el conductor
Real KmRecorridosxLitro, costoTotalViaje, costoxKm; #variables para almacenar los cálculos
String Ruta; # variable donde se guardará un texto que indica de donde a donde se realiza el viaje
String codCamión; # variable donde se guarda el código del camión que realizó el viaje

# sección de inicialización y lecturas de valores iniciales


Escribir(“Indique la ruta del viaje (donde a donde se realizó): ”); Leer(Ruta);
Escribir(“Indique el código del camión”); Leer(codCamión);
Escribir(“Indique los Km recorridos y lo cancelado en otros gastos de mantenimiento: ”);
Leer(KmRecorridos, otrosGastos);
Escribir(“Indique los litros de gasolina consumidos y el precio por litro: ”);
Leer(litrosGasolina, PrecioLitroGasolina);

# sección de cálculos
KmRecorridosxLitro  KmRecorridos / litrosGasolina;
costoTotalViaje  (litrosGasolina * PrecioLitroGasolina) + otrosGastos;
costoxKm  costoTotalViaje / KmRecorridos;

# se informa el resultado al usuario


Escribir(“Gastos del vehículo ” + codCamión + “ en el viaje: ” + Ruta );
Escribir(“Km recorridos por litro: ” + KmRecorridosxLitro);
Escribir(“Costo total del viaje Bs.: ” + costoTotalViaje);
Escribir(“Costo por Km Bs.: ” + costoxKm);

Acción Control_Gastos_Flota;

Pág 4 / 6
Universidad Central de Venezuela. Recopilación y Preparación Prof. Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

Ejercicios propuestos:

6. Se desea que usted escriba un algoritmo en lenguaje pseudo-formal, que verifique que un número dado sea de cuatro
dígitos, y que cumplan con la condición de que la suma de sus dígitos impares sea igual a la suma de sus dígitos
pares.

7. La siguiente expresión algebraica puede ser traducida a una expresión informática. Si su respuesta es verdadera
escriba la expresión resultante: 3

(x- x1)2 + (y - y1)2

6. Un triángulo rectángulo es aquel en donde sus tres lados satisfacen la siguiente relación: la suma de los cuadrados de
dos de los lados es igual al cuadrado de la hipotenusa. Se quiere que dado tres puntos en el plano, de la forma (X, Y),
indicar si estos forman un triángulo rectángulo y de ser así señalar que puntos forman los catetos y cuales la
hipotenusa. Ayuda: utilice la fórmula de la distancia entre dos puntos para calcular el tamaño de cada lado.

7. La línea aérea “Vuela Más”, desea desarrollar un algoritmo que les permita calcular el costo de sus boletos de avión.
Este cálculo se hace en base al consumo de gasolina del avión, más, un porcentaje adicional que corresponde a la
ganancia de la línea aérea entre el número máximo de pasajeros que puede transportar el avión.
“Vuela Más” cuenta con 3 tipos de rutas: Nacionales, Internacionales y Trasatlánticas. Dependiendo de la ruta, utiliza
diferentes tipos de aviones: para las rutas nacionales usa Boeing 737, para las Internacionales DC-10 y para las
Trasatlánticas utiliza Airbus 340.
El consumo de gasolina de cada avión es diferente, un DC-10 utiliza 10 litros de gasolina por cada 100 millas
recorridas, el Boeing 737 usa la mitad de eso, y el Airbus utiliza 3 veces más que el Boeing 737.
El Boeing 737 tiene capacidad para 110 pasajeros. El DC-10 tiene capacidad para 200 pasajeros. El Airbus 340 tiene
capacidad para 228 pasajeros.
En el caso de los vuelos Nacionales, la empresa se adjudica como ganancia, el 50% del costo del combustible, para
los vuelos Internacionales el 65% y para los Trasatlánticos el 73%.
Desarrolle un algoritmo que, dada la distancia en millas, el tipo de vuelo, y el costo actual de un litro de gasolina de
avión, calcule el costo del boleto.

8. Dados tres números enteros positivos A, B y C, determine cual de ellos es el mayor y cual es el segundo mayor.

9. Dado un número entero cuya cantidad de dígitos es igual a 5, determine si es palíndrome.


NOTA: Un número es palíndrome si escrito de izquierda a derecha o de derecha a izquierda representa el mismo
valor. EJEMPLO: 55555, 86768, 23432.

10. En un estacionamiento el monto a pagar se calcula multiplicando el número de horas que permaneció el automóvil
dentro del estacionamiento por Bs. 1,2 y se incrementa esta cantidad en Bs. 0,50 por cada media hora adicional.
Elabore un algoritmo que a partir de la hora de entrada y la hora de salida de un vehículo (en un mismo día) calcule el
monto a pagar por concepto de estacionamiento.
NOTA: HH: es un entero que indica la hora.
MM: es un entero que indica los minutos.
T: es un carácter que indica si la hora es AM o PM.

11. Ejercicio sobre el Índice de Masa Corporal o IMC (Fuente consultada Wikipedia artículo IMC). El IMC es un número
que pretende determinar, a partir de la estatura y la masa, el intervalo de masa más saludable que puede tener una
persona. Se utiliza como indicador nutricional desde principios de 1980.

Pág 5 / 6
Universidad Central de Venezuela. Recopilación y Preparación Prof. Yusneyi CarballoBarrera
Escuela de Computación - Algoritmos y Programación Oct-05, Oct 2011 (ver.3)

12. El IMC resulta de la división de la masa del individuo (en kilogramos) entre el cuadrado de la estatura (en metros). El
índice de masa corporal es un indicador del peso de una persona en relación con su altura.
Clasificación del IMC de acuerdo con la OMS de la ONU (lista 1)
• < 16 : criterio de ingreso
• 16 a 16.9: infrapeso
• 17 a 18.4: bajo peso
• 18.5 a 24.9: peso normal (saludable)
• 25 a 29.9: sobrepeso
• 30 a 34.9: sobrepeso crónico (obesidad de grado I)
• 35 a 39.9: obesidad premórbida (obesidad de grado II)
• 40 a 45: obesidad mórbida (obesidad de grado III)
• > 45 : obesidad hipermórbida (obesidad de grado IV)
Dado el peso de una persona en libras (1 lb es equivalente a 0,453592 kg) y su estatura en centímetros, calcule su
IMC. Muestre como salidas de su algoritmo:
13.1. Peso suministrado en libras y equivalente el kilogramos
13.2.Estatura suministrada en centímetros y equivalente en metros
13.3.IMC de la persona y clasificación de peso según la lista 1

Pág 6 / 6

Você também pode gostar