Вы находитесь на странице: 1из 46

UNIVERSIDAD SAN IGNACIO DE LOYOLA

FACULTAD DE INGENIERA

CURSO DE FUNDAMENTOS DE
PROGRAMACIN

EJERCICIOS PROPUESTOS
DOCENTES:
Ing. Pedro Pablo Rosales Lpez
Ing. Flix Huari Evangelista
Ing. Juan Jose Flores Cueto

La Molina, Marzo 2015

SEMANA 01

Conociendo el C++
1. Transcribir el siguiente programa en Dev-C++ y guardarlo con el nombre de HolaMundo.
#include <iostream>
using namespace std;
main()
{
cout << "Hola Mundo, esto es \"C++\"\n";
}
2. Transcribir el siguiente programa en Dev-C++ y guardarlo con el nombre de MiPrimerPrograma.
#include <iostream>
using namespace std;
main()
{
// Esto es un comentario y no tiene efecto alguno en el programa.
// El siguiente tambin es un comentario.
/* Observe que hay dos formas de escribir un comentario.
Una es utilizando dos diagonales y la otra utilizando asterisco y una diagonal.
Cuando se usan dos diagonales es necesario escribirlas al principio de cada lnea,
pero solo es necesario al principio de la lnea.
Cuando se usan un asterisco y una diagonal,
no se requiere que se escriban al principio de cada lnea,
pero se requiere que se escriban al principio y al final del comentario.
Observe: el orden del asterisco y la diagonal cambia segn se abra o se cierre el comentario */
cout<<"Este es el programa ms simple que puede haber.\n"
<<"Posee unicamente comentarios y mensajes de salida a pantalla.\n"
<<"Haz la prueba escribiendo mensajes como este.\n";
/* Observa que \n es equivalente a teclear enter.
Tambin observa que un slo cout puede servir para enviar varias lneas de mensajes.
Sin embargo, tambin puedes usar un cout por cada lnea.
Nota que para cada cout debes de usar un punto y coma (;),
como en el siguiente ejemplo */
cout<<"\n";
cout<<"Como se ver durante el curso, los mensajes a pantalla y \n";
cout<<"los comentarios son muy tiles para que el programa sea\n";

cout<<"claro y para facilitar la comunicacin con el usuario.\n";


cout<<"\n";
}

system("PAUSE");

3. Compilar y ejecutar el programa MiPrimerPrograma.


4. En la biblioteca limits se encuentran constantes definidas para los intervalos que pueden almacenar algunos
tipos de variables. Transcriba el siguiente programa, con el nombre de Limites, compile y ejecute el
programa.
#include <limits>
#include <iostream>
using namespace std;
main( )
{
cout<<"Programa que muestra los valores maximos y minimos \n ;
cout<<"de algunos de los tipos de datos del C++ "<<endl;
cout<<"\n int maximo: "<<int_max<<" int minimo: "<<int_min<<endl;
cout<<"\n char maximo: "<<char_max<<" char minimo: "<<char_min ;
cout<<" tamao en bits: "<<char_bit<<endl;
cout<<"\n long maximo: "<<long_max<<" long minimo: "<<long_min<<endl;
cout<<"\n short maximo: "<<shrt_max<<" short minimo: "<<shrt_min<<endl;
cin.get();
system("PAUSE");
}
5. El siguiente programa ilustra el uso de los operadores matemticos. Guarde este programa con el nombre de
Operadores, compile y ejecute el programa.
#include <iostream>
using namespace std;
main( )
{
int a=5, b=10, c=20, r;
r=a+b;
a=c%r; //aqu a valdr 5(resto de 20/15)
c=b-a;
a=a*2;
cout<<"a="<<a<<" b="<<b<<" c="<<c<<" r="<<r<<endl;
cout<<"la suma de a y b es: "<<a+b<<endl;
system(PAUSE);
}

6. Transcriba el siguiente programa, con el nombre de Salida. Posteriormente compile y ejecute el programa.
#include <iostream>
using namespace std;
main()
{
cout<<"cadena de caracteres"<<endl;
cout<<2+2<<endl; //imprime un entero
cout<<9/2<<endl; //imprime un flotante
cout<<(int)(3.141592+2)<<endl; //imprime un entero
return 0;

Estructura General de un Programa en C++


7

Un individuo quiere invertir su capital en un banco y desea saber cunto dinero ganar despus de un mes si
el banco paga a razn de 2% mensual. A continuacin se muestra el algoritmo resuelto. Trasladar este
algoritmo a un programa en Lenguaje C++, y guardarlo con el nombre de L01Ejercicio7
Inicio
Entero cap_invertir
Real ganancia
Leer cap_invertir
ganancia = cap_invertir * 0.02
Escribir ganancia
Fin

Un vendedor recibe un sueldo base, ms un 10% extra por comisin de sus ventas, el vendedor desea saber;
cunto dinero obtendr, por concepto de comisiones, por las tres ventas que realiza en el mes y el total que
recibir en el mes tomando en cuenta su sueldo base y comisiones. A continuacin se muestra el algoritmo
desarrollado. Escribir un programa en Lenguaje C++, con este algoritmo y guardarlo con el nombre de
L01Ejercicio8.
Inicio
Entero sueldo_base
Entero venta1, venta2, venta3
Entero total_venta
Real comision, sueldo_recibir
Leer sueldo_base, venta1, venta2, venta3
total_venta = venta1 + venta2 + venta3
comision = total_venta * 0.10
sueldo_recibir = sueldo_base + comision
Escribir sueldo_recibir, comision
Fin

Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cunto deber
pagar finalmente por su compra. El algoritmo desarrollado de este ejercicio se encuentra a continuacin.
Analiza el ejercicio y compara con el algoritmo. Escribe un programa en Lenguaje C++ con este algoritmo y
gurdalo con el nombre de L01Ejercico9.
Inicio
Entero total_compra
Real descuento, total_pagar
Leer total_compra
descuento = total_compra * 0.15
total_pagar = total_compra - descuento
Escribir total_pagar
Fin

10 Un estudiante desea saber cul ser su nota final en el curso de Introduccin a la Informtica. Dicha nota se
compone de los siguientes porcentajes:
55% del promedio de sus tres notas parciales.
30% de la nota del examen final.
15% de la nota de un trabajo final.
Analiza y encuentra el algoritmo que resuelva el problema.
Las notas se deben ingresar por teclado.
El programa debe procesar estas notas, de acuerdo al porcentaje y mostrar el resultado en la pantalla, con el
comentario respectivo; Nota Final.
Escribe el algoritmo encontrado, en un programa de Lenguaje C++ y gurdalo con el nombre de
L01Ejercicio10.
11 Un profesor conoce la cantidad de hombres y mujeres del curso de Introduccin a la Informtica, desea saber
qu porcentaje de hombres y que porcentaje de mujeres hay en su grupo de estudiantes.
Analiza y encuentra el algoritmo para resolver este problema.
El algoritmo debe contemplar que el profesor ingresa por teclado la cantidad de hombre y de mujeres, luego
procesa estos datos para encontrar la proporcin y finalmente debe mostrar el resultado en pantalla, con el
comentario;
El porcentaje de hombres es..
El porcentaje de mujeres es..
Escribe el algoritmo encontrado en un programa C++ y gurdalo con el nombre de L01Ejercicio11.
12 En un hospital existen tres reas: Ginecologa, Pediatra, Traumatologa. El presupuesto anual del hospital se
reparte conforme a la siguiente distribucin:
Ginecologa
40%
Traumatologa
30%
Pediatra
30%
Obtener la cantidad de dinero que recibir cada rea, para cualquier monto presupuestado.
Analiza y encuentra el algoritmo que nos ayude con el problema.

El presupuesto anual se debe ingresar por teclado.


El dato ingresado debe ser procesado para encontrar el presupuesto parcial, por reas.
Finalmente mostrar el resultado en la pantalla de la siguiente forma:
El presupuesto se reparte as:
Ginecologa.
Traumatologa..
Pediatra.
Total..
Escribir el programa, que contenga el algoritmo encontrado y guardarlo con el nombre de L01Ejercicio12

SEMANA 02

Estructuras Lgicas de Control Secuencial


1

Desarrolle un algoritmo, que le permita leer un valor numrico cualesquiera, que sea almacenado en el
identificador o variable N y que permita escribir si dicho valor es un nmero par o impar.

Considerando el algoritmo anterior, escribir un programa en Lenguaje C++, guardar el programa con el
nombre de L02Ejercicio2. Compilar el programa y ejecutar, para los nmeros 4 y 5.

Desarrolle un algoritmo, que permita leer un valor numrico cualesquiera, almacenarlo en un identificador o
variable N de tipo entera, y escribir en la pantalla si este nmero es positivo o negativo. Escribir un programa
en Lenguaje C++, que contenga este algoritmo, guardarlo con el nombre de L02Ejercicio3, compilar y
ejecutar este programa para los valores 5 y -1.

Desarrolle un algoritmo que permita leer un valor numrico cualesquiera, guarde este valor en una variable N,
y escriba en pantalla el comentario si el valor N es mltiplo de Z. Z tambin es un valor ingresado por
teclado. Escribir un programa en Lenguaje C++, que contenga este algoritmo, guarde este programa con el
nombre de L02Ejercicio4, compile y ejecute para los valores 245 y 5.

5. Disee una solucin que permita hallar y mostrar el resultado de la suma, la resta, la multiplicacin, la
divisin y el mdulo de los nmeros 40 y 6.
6.

Disee una solucin que permita calcular y mostrar el importe de compra, el importe de descuento y el
importe a pagar por la compra de 15 agendas, si se sabe que cada agenda cuesta S/.25.50 y:
Importe de compra = precio * cantidad de productos
Importe de descuento = 5% del importe de compra
Importe a pagar = importe de compra importe de descuento
Muestre los resultados en forma adecuada.

7.

Disee la solucin que permita mostrar el resultado de sumar, multiplicar, restar y dividir dos nmeros
121236 y 735.

8.

Disee la solucin que permita convertir la temperatura de 85 grados Celsius a su equivalente en grados
Fahrenheit, de acuerdo a la formula: F= (9/5)*C+32.

9.

Disee la solucin que permita calcular la nota final de un alumno, empleando la siguiente formula:
n f= (n1+n2+n3+(n4*2))
5
Si se sabe que n1=18, n2=10, n3=12, n4=17

10. Disee la solucin que permita calcular el sueldo de un obrero si le pagan S/500.00 soles y tiene un
descuento del 5% por concepto de canasta de fin de ao. Mostrar el sueldo inicial, el descuento y el sueldo a
cobrar.
11. Disee la solucin que permita calcular el importe de compra, el importe de descuento, el importe a pagar y
la cantidad de agendas de obsequio, por la compra de una determinada cantidad de productos. Se sabe que:
el importe de compra es igual al precio unitario por la cantidad de productos, el importe de descuento es
igual al 8% del importe de compra, el importe a pagar es igual al importe de compra menos el importe de
descuento y ms el IGV (19%), y se obsequia una agenda por cada diez productos comprados. Mostrar los
importes solicitados redondeados a dos decimales.
12. Desarrolle una solucin que permita determinar el porcentaje de trabajadores nombrados y contratados que
trabajan para una compaa constructora.
13. Convertir y mostrar una cantidad expresada en dlares en su equivalente en Nuevos Soles. Ingresar la
cantidad en dlares y el tipo de cambio.
14. Calcular la nota final de un alumno, empleando la siguiente frmula:
n f= n1+n2+n3+(2n4)
5
15. Calcular el sueldo neto a cobrar por un obrero, si se sabe que este se obtiene al descontar un 5% a su sueldo
bruto, el mismo que ser ingresado por teclado. Mostrar el sueldo bruto, el monto del descuento y el sueldo
neto a cobrar (sueldo bruto menos descuento).
16. Convertir una cantidad ingresada de grados Celsius a su equivalente en grados Fahrenheit, de acuerdo a la
frmula: F= (9/5)*C+32.

17. Ingresar una medida en metros y halle su equivalente en centmetros, pulgadas, pies y yardas. Considere para
ello las siguientes equivalencias:
- 1 metro = 100 centmetros
- 1 centmetro = 0,3937 pulgadas
- 1 pie = 12 pulgadas
- 1 yarda = 3 pies
18. Distribuir la fortuna de una persona entre sus cuatro hijos, sabiendo que esta distribucin se realizar de la
siguiente manera:
Hijo1 = 10%, Hijo2 = 30%, Hijo3 = 40%, Hijo4 = el porcentaje restante.
19. Calcular cuantas horas, minutos y segundos faltan para concluir el da, si se conoce la hora actual (horas,
minutos y segundos transcurridos).
20. Disee y desarrolle una solucin que permita determinar y mostrar cuantos euros, dlares y libras hay en
2500 soles. Considere que:
1 dlar = 3.12 soles, 1 euro = 1.35 dlares y 1 libra = 1.05 euros
21. Pablo trabaja en 4 ocupaciones donde le pagan un sueldo diferente por hora. Disee y desarrolle una
solucin que permita determinar e imprimir el sueldo de Pablo en 1 semana en la que trabaj las siguientes
horas, con los siguientes sueldos: Trabajo A, 12 horas con un sueldo de $3.20 por hora; Trabajo B, 10 horas
con un sueldo de $4.10; Trabajo C, 8 horas con un sueldo de $3.80 y en el D, 13 horas con un sueldo de
$2.95 la hora.
22. Dado un tiempo en segundos, disee una solucin que permita expresar dicho tiempo en HH:MM:SS
23. Disee una solucin que permita calcular y mostrarla cantidad de segundos que hay en un nmero
determinado de das.
24. Si se sabe que un vendedor demora en ir y recorrer toda su zona de ventas 5 horas, 45 minutos y 35
segundos, determine a qu hora terminara de realizar sus ventas si sali a trabajar a las 8:45 a.m. mostrar la
salida en el formato HH:MM:SS
25. Desarrolle un algoritmo que permita leer un valor numrico cualesquiera, guardar este valor en la variable N y
que escriba en pantalla N es divisor de X e Y, si es que N es divisor de X e Y. Los valores de X e Y,
tambin son ingresados por teclado. Si N no es divisor de X e Y, escribir en pantalla el comentario N no es
comn divisor de X e Y. Escribir un programa en Lenguaje C++ que contenga este algoritmo.
26. Desarrolle un algoritmo que permita leer un valor numrico cualesquiera, guardar este valor en la variable N y
que escriba en pantalla N es mltiplo de P, Q y R, si es que N es mltiplo de P, Q y R. Los valores de P, Q
y R, tambin son ingresados por teclado. Si N no es mltiplo de P, Q y R, escribir en pantalla el comentario
N no es comn mltiplo de P, Q y R. Escribir un programa en Lenguaje C++ que contenga este
algoritmo.
27. Desarrolle un algoritmo que permita leer dos valore numricos cualesquiera, guardar estos valores en las
variables A y B. Escribir en pantalla cul de los dos valores ledos es mayor. Escribir un programa en
Lenguaje C++ que contenga este algoritmo.

SEMANA 03

Estructuras Lgicas de Control Selectivas


1

Desarrolle un algoritmo y posteriormente el programa que encuentre el cociente de dos nmeros ingresados
por teclado. Guardar este programa con el nombre de L03E01, compilar y ejecutar este programa para los
siguiente pares de datos: (20 y 5) (15 y 0) (10 y 3)

Desarrolle un algoritmo y posteriormente el programa que encuentre el cociente de dos nmeros ingresados
por teclado. Si el divisor ingresado es igual a cero, debe dar otra oportunidad al usuario, para ingresar un
segundo divisor. Guardar este programa con el nombre de L03E02, compilar y ejecutar este programa para
los siguiente pares de datos: (20 y 5) (15, 0, 3) (10 y 3) (10, 0, 0) (10, 0, 3)

Desarrolle un algoritmo y posteriormente un programa que permita el ingreso por teclado de la nota de un
alumno. La nota se debe encontrar entre 1 y 20. En caso de ser menor de 11, mostrar el mensaje en pantalla
Suspenso. Si es 11, mostrar en pantalla el mensaje Aprobado. Si es 12, 13, 14 o 15 mostrar el mensaje
Notable. Si se encuentra entre 16 y 19, mostrar el mensaje Sobresaliente y si es 20 el mensaje debe ser
Matrcula con honor. Guardar este programa con el nombre de L03E03, compilar y ejecutar este
programa para los siguientes pares de datos: 10, 11, 12, 15, 19 y 20.

Desarrolle un algoritmo y posteriormente un programa que permita el ingreso por teclado de un nmero
entre 1 y 5, luego el programa debe mostrar en letras el nmero ingresado. Guardar este programa con el
nombre de L03E04, compilar y ejecutar este programa para los siguientes datos: 3, 0, 4, 6.

5. Disee una solucin que permita ingresar un nmero y mostrar un mensaje si el nmero es mltiplo de 3.
6.

Si se sabe que en una caja caben 20 productos mdicos, disee la solucin que permita determinar la
cantidad de cajas que se necesitan para guardar una determinada cantidad de productos.

7.

Una fbrica requiere para producir cada uno de sus productos:


10 gramos del insumoA.
25 gramos del insumoB.
18.5 gramos del insumoC.
Disee una solucin que en base a una cantidad de insumos ingresados en kilogramos, determine y muestre
cuantos productos podra fabricar y cuantos paquetes de envolturas del producto debera comprar, para
poder embazar la totalidad de productos fabricados. Considere que cada paquete de envolturas contiene 12
de estas.

8.

Disee una solucin que permita ingresar dos nmeros y mostrar un mensaje si ambos son iguales.

9.

Disee una solucin en base al precio de compra y al precio de venta de un producto ingresados por un
usuario, determine el monto de la utilidad o de la perdida obtenida y si conviene o no la venta del producto.

10. Disee una solucin que permita visualizar un mensaje que muestre si existe un mayor o menor porcentaje
de varones con respecto al porcentaje de mujeres de un determinado saln de clase.

11. Ingresar la edad de una persona y mostrar un mensaje expresando si es o no mayor de edad.
12. Ingresar la hora de ingreso y la hora salida de un vehculo en una cochera y en base a estas calcular el monto
a pagar por el servicio, si se sabe que la hora o fraccin cuesta S/.2.50. Considere para las horas de ingreso y
salida, ingresar horas, minutos y segundos.
13. Ingresar un nmero real y mostrar si es positivo o negativo.
14. Un hospedaje ofrece sus habitaciones especiales a S/.150 y S/.50 las que no corresponden a este tipo. Como
oferta est ofreciendo un descuento del 10% por ms de 3 das de estada y del 8% adicional si es que se trata
de una pareja de recin casados. Disee una solucin que determine y muestre: el monto bruto, el monto de
descuento final y el monto a pagar por la estada en el hospedaje.
15. Calcular y mostrar, el importe de compra, el importe del IGV, el importe subtotal, el importe de descuento y
el importe a pagar, por la de cierta cantidad de productos, si:
Importe de compra es igual al precio unitario por la cantidad de unidades compradas.
Importe de IGV es igual al 19% del importe de compra.
El importe subtotal es igual al importe de compra ms el importe del IGV.
Hay un descuento del 20% para los importes subtotales mayores al 200 soles y del 10% en caso
contrario.
El importe a pagar es igual al importe de compra menos el importe de descuento.
16. Una fbrica de confecciones, produce polos manga corta y manga larga, para ello necesita 1.00 metro de tela
de algodn para la confeccin de polos manga corta y 1.25 de tela de algodn para la confeccin de polos
manga larga. Disee una solucin para que en base a una cantidad de metros de tela determine y muestre
cuantos polos manga larga y cuantos polos manga corta puede fabricar (considerando el total de tela para
cada confeccin). Sabiendo que el metro de tela de algodn est a S/.3.75, determine la ganancia de la
fbrica por la venta de los polos (precio manga larga = S/.18.00 o precio manga corta=S/.15.00), muestre el
valor de la ganancia con dos decimales y que le convendra fabricar, si polos manga larga o manga corta.
17. Disee una solucin que en base al puntaje final obtenido por cada uno de los dos competidores en una final
de ajedrez, determine y muestre:
El puntaje final obtenido por cada uno, cul de los dos competidores gan o si hubo empate y la diferencia
de puntos existente entre ambos jugadores. (Aplique el mtodo abs() de la clase Math)
18. Disee una solucin que permita ingresar tres nmeros enteros de 2 cifras y mostrar cual es el mayor de
ellos.
19. Tres amigos desean implementar una empresa, para ello uno aporta un capital en soles y los otros dos en
dlares, si se sabe que para formar la empresa requieren reunir S/.10,000, disee una solucin que permita
calcular y mostrar el capital total recaudado, que porcentaje del capital fue aportado por cada amigo y si este
capital cubre o no con el monto requerido.
20. Disee una solucin que permita ingresar dos nmeros de 3 cifras y en base a estos pueda obtener un tercer
nmero de tres cifras, cuyas cifras sern obtenidas de la siguiente manera:
- La cifra correspondiente a las unidades ser igual a la cifra de las centenas del nmero mayor,
- La cifra de las decenas ser igual a la cifra de las unidades del nmero menor y
- La cifra de las centenas ser igual a la mayor cifra de las decenas de los nmeros ingresados.

21. Una empresa est pensando entregar 3 tipos de bonos a sus empleados de acuerdo a ciertas condiciones:
- S/.100 si el empleado es casado (considere cdigo C para el estado civil casado)
- S/.150 por cada ao trabajado, para los primeros 5 aos de trabajo y S/.250 por cada ao adicional al 5to
ao.
- S/.100 si tiene menos de 50 aos de edad o S/.50 en caso contrario.
Disee una solucin que permita determinar y mostrar el monto que recibir un trabajador por cada tipo de
bono, as como el monto total en bonos que recibir.
22. Disee una solucin que en base a un nmero de cuatro cifras ingresado, permita determinar y mostrar:
- Si el numero negativo o no
- Si el nmero es mltiplo de 5 y 7 a la vez, pero no de 70
- Su valor absoluto
- Si el nmero es capica (el nmero capica es aquel que se lee igual de izquierda a derecha y de derecha a
izquierda, por ejemplo el nmero 1551 es un nmero capica.
23. Disee una solucin que permita multiplicar tres nmeros reales ingresados por el teclado. Si la
multiplicacin es mayor a 250 se deber triplicar el producto, caso contrario se deber duplicar el producto.
En ambos casos mostrar un mensaje que mencione si se duplico o triplico el producto y el resultado
obtenido.
24. Un comedor popular estatal que brinda alimentos a personas sin recursos econmicos atiende en tres turnos
maana, tarde y noche, para ello recauda fondos a travs de diversas actividades y los distribuye segn el
siguiente detalle:
- Si el monto recaudado es mayor a S/.500 la distribucin ser: 40% para el turno maana, 35% para el
turno tarde y el resto para el turno noche.
- Si el monto recaudado est comprendido entre S/.200 y S/.500 el 70% ser asignado al turno maana y el
resto para el turno noche.
- Si el monto es menor a S/.200, el 35% ser asignado al turno maana, el 35% ser asignado al turno tarde
y el resto al turno noche.
Disee una solucin que permita calcular y mostrar la distribucin del monto recaudado entre los cada uno
de los 3 turnos.
25 Desarrolle un algoritmo y posteriormente un programa que muestre el da de la semana, segn un dato
ingresado por teclado. Guardar el programa con el nombre de L03E25, compilar y ejecutar este programa
para los siguientes valores 0, 5, 1, 7 y 8.
26 Desarrolle un algoritmo y posteriormente un programa que permita el ingreso de 4 nmeros, y muestre en
pantalla estos 4 nmeros ordenados en forma descendente. Guardar el programa con el nombre de
L03E26, compilar y ejecutar este programa para los siguientes grupos de valores; (1, 2, 3, 4) (40, 30, 20,
10) (5, -5, 0, 55).
27 Desarrolle un algoritmo y posteriormente un programa que resuelva una ecuacin de segundo grado, que
tenga como datos de entrada los coeficientes a, b y c de la ecuacin y que muestre en pantalla, las dos
soluciones reales. Guardar el programa con el nombre de L03E27, compilar y ejecutar este programa para
los siguientes grupos de valores; (1, 2 y 3) (2, 5, 7).

28 Desarrolle un algoritmo y posteriormente un programa que solicite al usuario una fecha, introducida
mediante un formato de tres datos: da, mes y ao; ese programa debe validar la fecha: es decir comprobar
que la fecha sea correcta cumpliendo las siguientes reglas:
a) El ao debe ser mayor que 0.
b) El mes debe ser un nmero entre uno y doce.
c) El da debe estar entre 1 y 30, 31, 28 29 dependiendo el mes de que se trate y si el ao es bisiesto o no.
Guardar el programa con el nombre de L03E28, compilar y ejecutar este programa para los siguientes
grupos de valores; (31-12-2008) (29-02-2009) (31-06-1966).
29 Desarrolle un algoritmo y posteriormente un programa que solicite al usuario dos nmeros, y muestre en
pantalla, el comentario El primer nmero No es menor que el segundo, si el primer dato ingresado es
menor que el segundo.
Si el primer nmero es mayor que el segundo, mostrar el mensaje El primer nmero es Menor que el
Segundo.
Guardar el programa con el nombre de L03E29, compilar y ejecutar este programa para los siguientes
grupos de valores; (31, 12) (29, 02) (01, 100).
30 Desarrolle un algoritmo y posteriormente un programa que solicite al usuario el ingreso de un nmero. Luego
muestre en pantalla, el comentario; El nmero es positivo, El nmero de negativo o el nmero es
cero, segn sea.

SEMANA 04

Estructuras de Decisin Mltiple


1.

Calcular y mostrar el costo total que representa un paciente para un hospital de acuerdo al tipo de
enfermedad, segn los datos de la tabla. Adicionalmente, debe considerar que los pacientes de sexo
femenino menores de 12 aos implican un costo adicional de 13%. Emplee estructuras de decisin
anidadas.

2.

En una dulcera se venden 4 tipos de hamburguesas a los precios dados en la siguiente tabla. Disee una
solucin que permita calcular y mostrar el importe de compra, el importe de descuento y el importe a
pagar, por la compra de cierta cantidad de hamburguesas del mismo tipo. Considere que se otorga un 10%
de descuento por importes de compra mayores a S/20.00

3.

Ingresar tres nmeros enteros, determine y muestre cual es el nmero menor, medio y el nmero mayor.
Emplee las funciones matemticas necesarias.

4.

Ingresar 5 nmeros por teclado y calcular el promedio eliminando previamente el nmero ms alto y el
nmero ms bajo, mostrarlo por pantalla redondeado a 2 decimales.

5.

Una empresa determina la liquidacin de un empleado en base a la suma de tres montos, menos un monto
de apoyo a terceros, segn se detalla:
Monto 1: en base a la cantidad de aos trabajados, segn la tabla.
Monto 2: en base al porcentaje de asistencias, de acuerdo a la tabla correspondiente y que se aplica
sobre el monto 1.
Monto 3: en base a la categora, segn la tabla y que es un porcentaje que se aplica a la suma del
monto1 ms el monto 2.
Monto de apoyo a terceros: es igual al 10% del monto por categora, si este es igual a la categora B.
CANTIDAD DE AOS

MONTO POR AOS TRABAJADOS

Menos de 5 aos

1 sueldo actual por cada ao trabajado

De 5 a 10 aos

Un sueldo y medio actual por cada ao trabajado

De 11 a 25 aos

2 sueldos actuales por cada ao trabajado

Ms de 25 aos

2 sueldos y medio por cada ao

ASISTENCIAS

De 100% de asistencias

50%

De 80% hasta antes del 100% 20%


Menos de 80%

0%

CATEGORIARA

30%

10%

Disee una solucin que permita determinar y mostrar cada uno de los montos calculados, y el monto de
liquidacin total que recibir finalmente. Presente los resultados en un formato adecuado.
6.

7.

Disee la solucin que permita calcular y mostrar el costo total que representa un paciente para un hospital
de acuerdo al tipo de enfermedad, segn los datos de la tabla. Adicionalmente, debe considerar que los
pacientes de sexo femenino menores de 12 aos implican un costo adicional de 13%. Emplee estructuras de
decisin anidadas
Cdigo de tipo enfermedad

Costo diario por paciente

10

123

21

234

32

345

43

456

Disee la solucin que en base a la tabla mostrada y a la cantidad de productos comprados, calcule el
importe a pagar por una persona, considerando que este se obtiene del importe de compra ms el IGV.
(19% del importe de compra) y que el importe de compra es igual al precio unitario por la cantidad de
productos adquiridos.
Cantidad comprada

Precio unitario sin IGV

10 primeras

15

10 siguientes

13

10 siguientes

Las adicionales

8.

Disee la solucin que permita ingresar 5 nmeros por teclado y calcular el promedio eliminando
previamente el nmero ms alto y el nmero ms bajo, mostrarlo por pantalla redondeado a 2 decimales

9.

Disee la solucin, que permita calcular el nuevo sueldo que recibir una trabajadora de una empresa
teniendo en cuenta la cantidad de aos que tiene laborando y la cantidad de hijos (si ingresa nmero de hijos
negativo asignar cero). Para ello se debe tener en cuenta la tabla adjunta.
AOS LABORANDO

HIJOS
0

Ms de 1

Menos de 5 aos

8%

10%

12%

5 aos o ms

15% 18%

20%

10. Una institucin educativa categoriza a sus alumnos en base a un puntaje final, el cual se obtiene en base a la
suma de 2 puntajes parciales:
- Un puntaje por porcentaje de asistencia (considere que son 20 sesiones de clases)
- Un puntaje por nmero de trabajos presentados (mximo 5 trabajos durante el ciclo)
Porcentaje de asistencia

Puntaje

100%

Menos de 100% hasta 80%

3.5

Menos de 80% hasta 40%

Menos de 40%

Trabajos realizados Puntaje


5

1.5

0.5

Puntaje total

Categora

De 5 a ms

Menos de 5

Disee la solucin que permita hallar y mostrar el puntaje por porcentaje de asistencia, el puntaje por
nmero de trabajos presentados, el puntaje total y la categora a la que pertenecera un alumno de dicha
institucin.
11. Una distribuidora ha puesto a la venta su producto estrella, ofreciendo descuentos escalonados, segn la
siguiente tabla:
Si se sabe que hay un descuento del 18.3 % sobre el importe de compra, a partir de la compra de 10
productos.
Disee la solucin que le permita hallar y mostrar:
El importe de compra (Precio por la cantidad de unidades compradas), el importe de descuento y el importe
a pagar redondeado a 3 decimales (Importe de compra menos importe de descuento). Asuma que los valores
ingresados son vlidos.
CANTIDAD COMPRADA

PRECIO

Por las primeras 12 unidades

10

Por las siguientes 12 unidades

15

Por las siguientes 12 unidades


Por las unidades adicionales

20
30.5

12. Una librera vende 4 tipos de cuadernos en calidades distintas, en base a la tabla mostrada,
Sabiendo adicionalmente que los cuadernos de tipo 1 y calidad 1, estn con un descuento del 25% por la
compra de hasta 10 cuaderno y del 40% en caso contrario, y que por la compra de cada docena de cualquier
tipo de cuaderno, la librera esta obsequiando 3 lpices. Disee la solucin que permita calcular y mostrar: el
importe de compra (precio por cantidad), el importe de descuento, el importe a pagar (Importe de compra
menos descuento) y la cantidad de lpices de obsequio, por la compra de una determinada cantidad de
cuadernos del mismo tipo. Muestre los valores redondeados a dos decimales.
Tipo de cuaderno

Calidad 1

Calidad 2

S/. 5.00

S/. 5.50

S/. 6.00

S/. 6.50

S/. 7.00

S/. 7.50

S/. 8.00

S/. 8.50

13. Disee la solucin que en base a la siguiente tabla y a la cantidad de fotocopias solicitadas, calcule el importe
a pagar por un usuario del servicio de fotocopiado, considerando adicionalmente que si se envan las
fotocopias por delivery, se tendr que pagar un incremento del 0.05% del total.
Cantidad de fotocopias Precio por copia
Las 50 primeras

S/. 0.30

Las 50 siguientes

S/. 0.25

Las 50 siguientes

S/. 0.20

Las adicionales a estas

S/. 0.18

14. Un centro de produccin alimenticio vende leche de soya a un precio determinado por la produccin de
esta, de acuerdo a la siguiente tabla.

Considerando que:
Un kilogramo de frijol de soya permite producir 10 litros de leche de soya.
El kilogramo de frijol de soya cuesta 10 nuevos soles.
El centro alimenticio cuenta con cierta cantidad de kilos de frijol de soya.
Disear la solucin de flujo que permita determinar para un cierto pedido de litros de leche de soya, si es que
este puede ser atendido mostrando la utilidad por esta venta, o en caso contrario, si es que sobrepasa la
produccin, mostrando el mximo de litros que se puede vender.
15. Disear la solucin que permita ingresar 3 nmeros enteros, y mostrar el resultado segn la tabla adjunta.

16. Una fbrica de caramelos que comercializa estos en bolsas de 25 caramelos cada una y transporta estas
bolsas en contenedores de 18 bolsas como mximo, le brinda la informacin de la tabla adjunta:
Ingredientes para la fabricacin
de caramelos
Azcar

Cantidad de ingrediente
requerida por cada
caramelo
10.5 gr

Cantidad de
insumos
disponibles
128.8 Kl.

Costo de los
ingredientes
S/.1.5 el kilo

Colorantes

2.4 gr

12.2 Kl.

S/.6.5 el Kilo

Preservantes

1.2 ml

5.55 Lt.

S/.5.0 el litro

Disee la solucin que le permita hallar y mostrar:


- Cuantas bolsas de caramelos como mximo podr producir con la cantidad de ingredientes con la que
cuenta
- Cuantos contendores requerir para transportar el total de las bolsas de caramelo
- Cul ser su utilidad total si vendiera la totalidad de bolsas producidas, si se sabe que vende cada bolsa a
S/.7.00 soles
- Le conviene o no producir la cantidad de bolsas de caramelos obtenida.
17. Una empresa paga a sus trabajadores en forma semanal de acuerdo a la cantidad de horas trabajadas durante
la semana. Si se sabe que la tarifa por hora trabajada vara entre S/.16 y S/.100 por hora, y que recibe un
incremento del 50% sobre su tarifa horaria por cada hora adicional a las 40 horas trabajadas. Disee una
solucin que en base a la cantidad de horas trabajadas y a la tarifa por hora, permita determinar para un
empleado de la empresa:
El sueldo bruto (tarifa * horas trabajadas).
El sueldo neto de cada empleado (sueldo bruto mas incremento por horas adicionales).
El sueldo neto promedio (dos decimales).
Mostrar los valores redondeados a dos decimales
18. Un comedor popular estatal que brinda alimentos a personas sin recursos econmicos atiende en tres turnos
maana, tarde y noche. Para ello recauda fondos a travs de la venta de rifas.
Si el monto recaudado es mayor a S/.500 la distribucin ser: 40% para el turno maana, 35% para el
turno tarde y el resto para el turno noche.
- Si el monto recaudado est comprendido entre S/.200 y S/.500 el 70% ser asignado al turno maana y el
resto para el turno noche.
- Si el monto es menor a S/.200, el 35% ser asignado al turno maana, el 35% ser asignado al turno tarde
y el resto al turno noche.
Disee una solucin que permita calcular y mostrar la distribucin del monto recolectado entre los cada uno
de los 3 turnos.
-

19. Disee una solucin que permita ingresar dos nmeros de 3 cifras y en base a estos pueda obtener un tercer
nmero de tres cifras, cuyas cifras sern obtenidas de la siguiente manera:
-

La cifra correspondiente a las unidades ser igual a la cifra de las centenas del nmero mayor,
La cifra de las decenas ser igual a la cifra de las unidades del nmero menor y
La cifra de las centenas ser igual a la mayor cifra de las decenas de los nmeros ingresados.

20. Una empresa est pensando entregar 3 tipos de bonos a sus empleados de acuerdo a ciertas condiciones:
S/.100 si el empleado es casado (considere cdigo C para el estado civil casado)
S/.150 por cada ao trabajado, para los primeros 5 aos de trabajo y S/.250 por cada ao adicional al 5to
ao.
- S/.100 si tiene menos de 50 aos de edad o S/.50 en caso contrario.
Disee una solucin que permita determinar y mostrar el monto que recibir un trabajador por cada tipo de
bono, as como el monto total en bonos que recibir.
-

SEMANA 05

Estructuras Lgicas de Control Repetitivas - para


1.

Desarrolle una solucin que permita generar y sumar los 15 primeros trminos de la siguiente serie: 1 1/32
1/52 1/72 1/92 ............................

2.

Desarrolle una solucin que permita mostrar la diagonal principal y la diagonal secundaria de una matriz de
10 * 10.

3.

Desarrolle una solucin que permita generar el siguiente men:


[1] serie1
[2] serie2
[3] trabajadores
[4] Salir
Cada opcin del Men, realiza las siguientes opciones:
[1] serie1
Calcular y visualizar la suma y los trminos de los nmeros primos comprendidos entre dos nmeros enteros
de dos cifras generados por el sistema.
[2] serie2
Autogenerar nmeros en el rango [0-100] hasta encontrar un nmero comprendido entre los valores 40 y 50.
Mostrar los nmeros generados, el nmero mayor y el valor promedio de los nmeros
[3] trabajadores
El gerente general de una empresa desea conocer la siguiente informacin respecto de sus empleados:
-

Cantidad de empleados varones


Cantidad de empleados mujeres
Cantidad de empleados que ganan menos de S/.1000
Cantidad de empleados que ganan ms de S/1000 y menos o igual a S/.3000
Cantidad de empleados que ganan ms de S/.3000
Sueldo promedio de los empleados
Porcentaje de trabajadores mujeres
Menor sueldo
Cantidad de trabajadores a jubilarse ese ao (edad de jubilacin=70 aos)

Los sueldos, la edad y el sexo debern ser nmeros enteros generados aleatoriamente segn los siguientes
valores:

- Sueldos: S/.450 y S/.15,000


- Edad: entre los 18 y 70 aos
- Sexo 1 masculino y dos femenino
4.

Desarrolle una solucin que permita generar y sumar los 10 primeros trminos de la siguiente serie:
-7/ a, -4/ a,
-1/ a, 2/ a, donde a es un aleatorio de 1 cifra

5.

Disear la solucin que permita ingresar 10 nmeros enteros de dos cifras y en base a ellos hallar y mostrar:
- La suma de todos los nmeros de la seria en caso que se ingresaran ms de 6 nmeros mltiplos de 3 y el
producto de 10 por el nmero mayor en caso contrario

6.

Un colegio desea conocer la siguiente informacin respecto de sus estudiantes de una de sus secciones:
-

Cantidad y porcentaje de estudiantes mujeres


Cantidad y porcentaje de estudiantes varones
Cantidad de estudiantes con promedio hasta 10
Cantidad de estudiantes con promedio entre 11 y 15
Cantidad de estudiantes con promedio ms de 16
Mayor promedio de la seccin
Menor promedio de la seccin
Promedio del aula
Porcentaje de alumnos desaprobados

El sexo de los alumnos y sus promedios, sern generados aleatoriamente considerando:


Promedios
: de 0 a 20
Sexo
: 1=Varones 2=Mujeres
7.

Disear la solucin que permita mostrar la diagonal principal y la diagonal secundaria de una matriz de 10 *
10 y de una matriz cuadrtica cualquiera.

8.

Disear las soluciones que permitan generar mostrar:


a.

b.

c.

d.

e.

f.

g.

h.

9.

Disear la solucin que permita generar y mostrar la serie: 55, 44, 33, 22 n trminos
Importante: Expresar cada trmino de la serie generada en valores tipo real.

10.

Una persona posee un capital de $1000.00 y desea invertirlos en un banco, el cual le otorga un 2% de inters
mensual. Disee solucin que le permita mostrar:
La cantidad de dinero que dicha persona tendr al cabo de un ao si todo el dinero lo reinvierte,
es decir, en cada mes se invierte el capital ms el inters ganado a la fecha.
En cuantos meses se obtendr ms de $1200.

11.

Disear la solucin en DIAGRAMA DE FLUJO que muestre la siguiente figura mostrada. Considere que
los nmeros de la figura son nmeros aleatorios de una (1) cifra.

12.

Disee el diagrama de flujo que permita hallar y mostrar para n nmeros enteros positivos de una cifra,
generados aleatoriamente el siguiente histograma: Validar la cantidad de nmeros enteros n.
5
9
7
3
1
8
7

+++++
+++++++++
+++++++
+++
+
++++++++
+++++++

13 Escribir un programa que permita el ingreso de un nmero entero por teclado y muestre en pantalla el
resultado de calcular la sumatoria de las siguientes expresiones:
a) 22 / n
b) 5.5 * n
c) ( 77 % n + ( 6 * n ) )

d) ( n ) 7.5 / 2
14 Hacer un programa en Lenguaje C++ que permita el ingreso de un nmero entero positivo por teclado y
muestre en pantalla la expresin "Excelente, Nmero encontrado" si el nmero n es mltiplo de 10 pero
distinto de 500 y que sea mayor o igual de 150.
15 Hacer un programa en Lenguaje C++ que permita el ingreso de un nmero entero positivo por teclado y
muestre en pantalla la expresin "Nmero Correcto" si cumple con las siguientes condiciones, en caso
contrario debe mostrar el mensaje "Es un Error, nmero incorrecto":
a) 8 == 3 + n)
b) y !(24 > n)
c) y (77 != n)
d) (28 * n > n)
16 Hacer un programa en Lenguaje C++ que calcule el rea de un trapecio, introduciendo por teclado los
valores de las bases y su altura. Si se sabe que:
A = (B + b) * a / 2
17 Hacer un programa en Lenguaje C++ que calcule el inters simple (tiempo en das) si se ingresa por teclado
el capital, el rdito y el tiempo. Si se sabe que:
c*r*t
i * 36000 = c*r*t entonces i = ----36000
18 Escribir un programa en Lenguaje C++ que lea el valor correspondiente a una distancia en millas marinas y la
escriba expresada en metros. Si se sabe que:
1 Milla, equivale a 1.852 metros
19 Hacer un programa en Lenguaje C++ que calcule y muestre en pantalla el porcentaje descontado en una
compra, si se ingresa por teclado:
a) El precio de la tarifa
b) El precio pagado.
20 Escribir un programa en Lenguaje C++ que calcule la velocidad de una pelota de tenis en Km/hora, si se
ingresa por teclado:
a) La distancia recorrida en metros.
b) El tiempo empleado en segundos para recorrer dicha distancia.
21 Hacer un programa en Lenguaje C++ que permita la lectura de tres nmeros enteros, calcule la suma de
estos nmeros por pares y muestre en pantalla la suma mayor y la suma menor.
22 Escribir un programa en Lenguaje C++ que permita la lectura de un carcter c y muestre en pantalla el
comentario siguiente:
a) c Es una vocal, si el carcter es una vocal.
b) c Es un nmero, si el carcter es un nmero.
c) c Es una consonante, si el carcter es una consonante.
d) c Es un smbolo, si el carcter no es una vocal, no es un nmero y tampoco es una consonante.

23 Hacer un programa en Lenguaje C++ que permita la lectura de un nmero n, entero positivo y muestre en
pantalla lo siguiente:
a) La sumatoria del cuadrado de los tres nmeros siguientes a n.
b) La sumatoria del cubo de los dos nmeros anteriores a n.
24 Escribir un programa que permita la lectura de dos nmeros y muestre en pantalla la relacin entre estos
nmeros, de la siguiente forma:
a) El primer nmero es mayor que el segundo.
b) Los dos nmeros son iguales.
c) El segundo nmero es mayor que el primero.

SEMANA 06

Estructuras Lgicas de Control Repetitivas - mientras


1

Hacer un programa en Lenguaje C++, que permita calcular el promedio de un alumno que tiene n
calificaciones en la materia de Introduccin a la Informtica. Guardar el programa con el nombre de L06E01.

Disear un programa en Lenguaje C++, que permita calcular la sumatoria de los primeros 10 nmeros pares
y el producto de los 10 primeros nmeros impares, a partir de un nmero n, ingresado por teclado. Mostrar
el resultado en pantalla. Guardar el programa con el nombre de L06E02.

Escribir un programa en Lenguaje C++ que a partir de un nmero n, ingresado por teclado, encuentre la
sumatoria de los n primeros nmeros enteros. Mostrar el resultado en pantalla. Guardar el programa con el
nombre de P06E03.

Implementar un programa en Lenguaje C++ que genere por pantalla la tabla de multiplicar de 1 a 20, para un
nmero ingresado por teclado. Mostrar el resultado en pantalla. Guardar el programa con el nombre de
L06E04.

Implementar un programa en Lenguaje C++ que lean n nmeros enteros largos y muestre por pantalla el
nmero mayor, el nmero menor y el promedio de los nmeros ingresados. Mostrar el resultado en pantalla.
Guardar el programa con el nombre de L06E05.

Desarrolle el programa que permita implementar el siguiente men:

[1]

10

15

20

25

[2]

2/5,

-4/8,

6/11,

-8/14,

10/17 . (mostrar N trminos y la suma)

[5]

(mostrar 15 trminos y la suma)

Salir

Realice solo la validacin del nmero de opcin ingresada


7

Disee una solucin que permita generar y visualizar los n primeros trminos de la siguiente serie:
2/5,
-4/8, 6/11, -8/14, 10/17, -12/20,
Considere que el ltimo trmino no lleva coma.

Disee una solucin que permita generar y visualizar los 10n primeros trminos de la siguiente serie:
-15
-10
-5
0
5
10

Una empresa, les paga a cada uno de sus empleados un sueldo bruto igual a las horas trabajadas por su tarifa
horaria, este sueldo bruto esta afecto a un descuento de acuerdo a la tabla que se muestra a continuacin,
finalmente paga a sus empleados un sueldo neto igual a la diferencia del sueldo bruto menos el descuento.

Sueldo bruto

% de descuento

Hasta S/.1000

8.25%

Ms de S/1000 a S/.2000

15%

Ms de S/.2000 a S/.3000

20%

Ms de S/.3000

25%

Desarrolle una solucin que permita determinar y mostrar:


-

El sueldo neto de cada uno de los empleados


La cantidad de sueldos netos menores a S/.2000
La cantidad de sueldos netos entre S/.2000 y S/.3000
La cantidad de sueldos netos mayores a S/.3000
El mayor sueldo bruto
El menor sueldo neto
El sueldo neto promedio

10 Disee la solucin que permita calcular la suma de 5 nmeros ingresados por teclado.
11 Disee la solucin que permita mostrar el cuadrado y la suma de los 10 primeros nmeros impares.
12 Una universidad premia al mejor alumno crendole una cuenta bancaria con un monto de S./ 2000, el
alumno puede realizar transacciones como depsito y retiro, en total, slo puede realizar 7 transacciones.
Se sabe adems que el depsito no tiene lmite, mientras que el banco solo le permite retirar hasta un
monto de 200 soles (caso contrario mensaje de error y pierde una transaccin).
Disee la solucin que permita mostrar las transacciones realizadas y el monto final que le queda al alumno,
luego de realizar las 7 transacciones. Sabiendo que al final el banco abona un 8% sobre su saldo final por fin
de mes.
13 Disee la solucin que permita mostrar los 10 primeros nmeros enteros positivos.
14 Disee la solucin que permita mostrar los 10 primeros nmeros impares.
15 Disee la solucin que permita mostrar la suma de una lista de N nmeros enteros ingresados por el usuario.
16 Disee una solucin que permita generar y visualizar los 10 primeros trminos de la siguiente serie:
2/5, 5/9, 8/13, 11/17, 14/21
Considere que el ltimo trmino lleva un punto
17 Disee la solucin que permita generar 50 nmeros aleatorios de 2 cifras y en base a estos calcular y mostrar:
- La cantidad de nmeros generados que son pares
- La cantidad de nmeros entre los siguientes rangos:

- Menores a 30
- De 30 a 60
- Mas de 60
- El promedio de los nmeros generados
- El mayor nmero generado
- El menor nmero generado.
18 Disee la solucin que en base a las hora de ingreso y de salida de un personal de seguridad, que trabaj
durante 1 mes (30 das) y considerando que le pagan S/.5.00 la hora de trabajo, permita calcular y mostrar el
monto a cobrar por un trabajador y el tiempo total que labor (en horas y minutos).
19 Desarrolle un programa que permita simular un juego de mesa. El juego consiste en completar una pista de
carrera conformada por casilleros numerados del 1 al 100. (1 Inicio, 100 Fin) a travs del lanzamiento de
dados.
Se tomarn en cuenta dos competidores (A y B), el programa deber realizar un sorteo para determinar cul
es el competidor que inicia el juego, seguidamente cada uno de los competidores lanzar un dado y avanzar
en la pista el nmero de casilleros correspondientes segn el valor del dado, repitindose ste proceso hasta
que uno de ellos sea el primero en alcanzar o pasar la meta.
Al finalizar el juego el programa deber mostrar el siguiente reporte:
a) El nombre del competidor ganador (A B).
b) El nmero de lanzamientos realizados entre los dos competidores durante todo el proceso.
20 Disee la solucin que permita calcular y mostrar el promedio de horas que demora un proceso industrial, se
sabe adems que existen 8 procesos
Siendo n la cantidad de segundos de demora y es un valor aleatorio segn cada proceso:
Proceso 1 y 2: n en el rango [2500 y 3600]
Proceso 3 y 4: n en el rango [3700 y 4700]
Otros procesos: n en el rango [4800 y 5900]
Se sabe adems que se generan 10 muestras.
21 Hacer un diagrama de flujo para generar la serie:
-4 / a, 8 / a, -12 / a, 16 / a

n trminos,

donde: a=valor aleatorio de 1 cifra, mayor a 1.


Nota: El denominador de cada trmino de la serie debe expresarse en valores reales.
22 Disear el Diagrama de Flujo que permita generar y mostrar la serie:
55, 44, 33, 22
n trminos

23 Disear la solucin que permita generar la serie conformada por los nmeros enteros positivos mltiplos de
5 que se encuentran comprendidos entre los nmeros 1000 y 1100 (incluyendo estos valores). Mostrar:

- La serie
- El producto de los trminos pares
24 Desarrolle un programa que permita generar nmeros aleatorios de tres cifras, hasta encontrar un nmero
comprendido entre los valores 300 y 400 (incluidos estos valores) y en base a esto mostrar:
- Los nmeros generados
- Un mensaje indicando si el numero encontrado es un nmero capica
- El mayor nmero generado
- La cantidad de trminos generados
25 Disear la solucin que permita generar 10 nmeros enteros positivos de dos cifras y en base a estos:
- Mostrar la serie
- Si hay ms de 6 nmeros mltiplos de 3 en los esta serie generada, sumar todos los nmeros de la
serie, en caso contrario multiplicar por 10 el nmero mayor.
26 Implementar un programa en Lenguaje C++ que permita encontrar el cuadrado de un nmero n, ingresado
por teclado. Mostrar el resultado en pantalla. Guardar el programa con el nombre de L06E26. El algoritmo
que se debe usar, para resolver este ejercicio, debe considerar los siguientes ejemplos:
El cuadrado de 2 es 1 + 3 = 4
El cuadrado de 3 es 1 + 3 + 5 = 9
El cuadrado de 4 es 1 + 3 + 5 + 7 = 16
El cuadrado de 5 es 1 + 3 + 5 + 7 + 9 = 25

SEMANA 07

Estructuras Lgicas de Control Anidadas


1

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de un nmero entero positivo
menor o igual 127, y muestre en pantalla, el mismo nmero en forma binaria o base 2. Guardar el programa
con el nombre de L07E01.
Los dgitos binarios se obtienen de la siguiente forma:
Se divide el nmero por 2 y se guarda el resto.
Se divide el cociente obtenido por 2 y se guarda el resto.
As sucesivamente hasta obtener el cociente cero.
El nmero binario de obtiene de los restos, se imprimen en forma inversa.

Escriba un programa en Lenguaje C++, que permita el ingreso de un n nmeros enteros positivos por
teclado, si se ingresa el nmero cero, el programa termina. El programa debe mostrar en pantalla, para cada
nmero ingresado el total acumulado, hasta ese momento. Guardar el programa con el nombre de L07E02.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de dos nmeros enteros positivos
y muestre en pantalla la multiplicacin a la rusa de estos nmeros. Guardar el programa con el nombre de
L07E03.
El mtodo de la multiplicacin a la rusa, consiste en formar dos columnas, una por cada operando. Las
columnas se forman aplicando repetidamente los siguientes pasos:
Dividir por dos el multiplicando y colocar el cociente debajo.
Duplicar el multiplicador y poner el resultado debajo.
Cuando la columna del multiplicando llegue a 1 se termina.
El producto es la sumatoria de los valores del multiplicador, que correspondan a valores impares de la
columna del multiplicando.

Escriba un programa en Lenguaje C++, que muestre en pantalla la potencia de un nmero. La base real y el
exponente deben ser ingresado por teclado, y corresponden a nmeros enteros positivos. Guardar el
programa con el nombre de L07E04.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de dos nmeros M y N, enteros
positivos y muestre en pantalla la multiplicacin de estos nmeros, pero usando solo el operador + para
obtener el producto. Guardar el programa con el nombre de L07E05.

Escriba un programa en Lenguaje C++, que muestre en pantalla los nmeros primos que se encuentran entre
2 y 100. Guardar el programa con el nombre de L07E06.

Escriba un programa en Lenguaje C++, que calcule el promedio de notas de un estudiante. Guardar el
programa con el nombre de L07E07.
El programa debe considerar lo siguiente:
Que pregunte como mnimo una nota.

Que pregunte si desea ingresar una nueva nota.


Contar el nmero de notas que se ingresaron.
Contar el nmero de notas aprobatorias.
Que muestre el promedio de las notas.
8

Escriba un programa en Lenguaje C++, que permita el ingreso de N nmeros entero por teclado, si el
nmero no es negativo, debe mostrar por pantalla el factorial del nmero ingresado, si el nmero es negativo,
termina el programa. Guardar el programa con el nombre de L07E08.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de dos nmeros enteros
positivos, y muestre por pantalla el Mximo Comn Divisor de ambos nmeros, utilizando el algoritmo de
Euclides de forma recursiva. Guardar el programa con el nombre de L07E09.

10 Hacer un programa en Lenguaje C++, que permita el ingreso de un nmero entero positivo y Muestre en
pantalla el nmero ingresado, en forma invertida. Guardar el programa con el nombre de L07E10.
Ejemplo: Si se ingresa el nmero 12345, el resultado debe ser 54321.

SEMANA 08

Funciones pre Definidas


1

Escriba un programa que utilice funciones matemticas pre-definidas, que simule una calculadora cientfica.
El programa debe presentar una lista de operaciones disponible, y preguntar qu operacin desea realizar el
usuario.
Segn la operacin seleccionada, debe solicitar los parmetros que se requieren para el clculo.
Finalmente debe mostrar el resultado de la operacin.
Por ejemplo:
Calculadora Cientfica de Perico de los Palotes
1. Suma
2. Resta
3. Multiplicacin
4. Divisin
5. Raz Cuadrada
6. Potencia
7. Operacin 7
8. Operacin 8
9. Etc.
Seleccione la Operacin: 1
Operacin Suma:
Ingrese los nmeros a sumar (0 para terminar)
6
5
7
0
El resultado es 18

Escriba un programa que utilice funciones de cadena pre-definidas, que simule un conversor de maysculas y
minscula.
El programa debe solicitar el ingreso de una cadena de texto.
Luego, presentar una lista de opciones de conversin y preguntar que conversin desea seleccionar el usuario.
Finalmente debe presentar la cadena de texto, convertida de acuerdo a lo solicitado por el usuario.

Por ejemplo:
Conversor de Mayscula / Minscula de Perico de los Palotes
Ingrese la cadena de texto:
abracadabra
1.
2.
3.
4.
5.

minsculas
MAYUSCULAS
Tipo operacin
Nombre Propio
Alternar MNSCULA/mayscula

Seleccione la Operacin: 2
El resultado es:
ABRACADABRA

SEMANA 09

Funciones Definidas por el Usuario


1

Escriba un programa que utilice la funcin ComparaNumeros, la cual recibe un nmero entero y hace lo
siguiente: si el primer dgito y el ltimo dgito son iguales devuelve 0, si el primer dgito es mayor que el
ltimo dgito devuelve 1 y -1 si el ltimo dgito es mayor que el primer dgito.

Escriba un programa que utilice la funcin IntercambiaNumero; la cual recibe un numero entero n, y luego
devuelve el entero m que resulta de haber intercambiado el primer dgito por el ltimo dgito y viceversa.

Escriba un programa que utilice la funcin CuentaDigitos; la cual recibe un nmero entero y procede a
imprimir el nmero de dgitos que posee dicho nmero.

Escriba un programa que utilice la funcin CuentaPar y CuentImpar; la cual recibe en n la cantidad de
nmeros a leer uno a uno desde el teclado para finalmente imprimir la cantidad de nmeros pares e impares
ingresados.

Averige todas las formulas involucradas en los clculos de un cilindro circular recto (rea total, rea lateral,
volumen, rea de la base) y proceda a escribir un programa que utilice estas funciones para encontrar las
dimensiones de cualquier cilindro. Ingrese los valores necesarios por teclado.

Respecto a las medias existen las medias siguientes: Media Aritmtica, Media Geomtrica y Media Armnica.
Escriba un programa que utilice estas funciones, para encontrar las medias para un conjunto n de datos,
ingresados por teclado.

Escriba un programa que utilice la funcin proceso(n, m) del siguiente modo:


a) Si n y m son enteros (entre 1 y cuatro dgitos) devuelve la diferencia de los dgitos mayor y menor de n y
m respectivamente.
b) Si n y m son reales devuelve la suma de las partes fraccionarias de n y m.
c) Si no cumple ninguna de las condiciones anteriores, devuelve el producto de todos los dgitos.

SEMANA 10

Funciones Anidadas
1

Escribe un algoritmo y su correspondiente programa en C, que implemente y haga uso de una funcin,
llamada Factorial, que calcule el factorial de un nmero entero positivo, para determinar los posibles podios o
lugares que pueden darse en una carrera entre 8 corredores. Puedes utilizar la frmula de variacin:

Escribe un algoritmo y su correspondiente programa en C, que permita calcular la probabilidad, de que


aparezcan las figuras al escoger tres cartas, de entre las series o palo, de las cartas de la baraja. Implementa y
usa la funcin Factorial. Puedes utilizar la frmula de combinacin:

Escribe un algoritmo y su correspondiente programa en C, que calcule el Mximo Comn Divisor (MCD) de
dos nmeros ledos por teclado utilizando la funcin siguienteprimo(num,comienzo) que devuelva el
siguiente divisor primo de un nmero (num) mayor que un valor inicial (comienzo).
Ejemplo: Para los nmeros 120 y 144

Escribe un algoritmo y su correspondiente programa en C, que calcule el Mnimo Comn Mltiplo (MCM)
de dos nmeros ledos por teclado utilizando la funcin siguienteprimo(num,comienzo) que devuelva el
siguiente divisor primo de un nmero (num) mayor que un valor inicial (comienzo).
Ejemplo: Para los nmeros 120 y 144

Escribe un algoritmo y su correspondiente programa en C, que utilice la funcin Encuentra(cadena, letra),


que dada una cadena de caracteres y un carcter (letra), devuelva el nmero de apariciones de dicho carcter
en la cadena.

Escribe un algoritmo y su correspondiente programa en C, que utilice la funcin CuentaVocal(cadena), que


reciba una cadena de caracteres, ingresado por teclado y escriba por pantalla el nmero de apariciones en la
cadena de cada una de las vocales. Puede hacer uso d funciones predefinidas en C.

Escribe un algoritmo y su correspondiente programa en C, que implemente y utilice la funcin


PosNeg(numero), para determinar si un nmero es positivo o negativo. Lee un nmero entero por teclado e
imprime por pantalla si el nmero ledo es positivo o negativo. Puedo hacer uso de funciones predefinidas en
C.

SEMANA 11

Arreglos
1

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de diez nmeros enteros
positivos, el programa debe guardar el ltimo nmero y mostrar en pantalla, la sumatoria de los nmeros
menores al ltimo nmero ingresado. Guardar el programa con el nombre de P11E01.

Escriba un programa en Lenguaje C++, que permita el ingreso de dos vectores de 10 posiciones y que
imprima por pantalla, la diferencia de los nmeros de ambos vectores, desde la posicin 3 a la posicin 8. El
programa debe mostrar en pantalla, la posicin de cada diferencia. Guardar el programa con el nombre de
P11E02.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de diez nmeros enteros
positivos y muestre en pantalla el nmero menor de la serie y el nmero mayor de la serie. Guardar el
programa con el nombre de P11E03.

Escriba un programa en Lenguaje C++, que permita el ingreso del nombre de la persona, la carrera que
estudia y el ciclo en el que se encuentra. Luego el programa debe mostrar en un texto; el nombre, el ciclo y la
carrera que ingres. Por ejemplo Gonzalito, ests en el I ciclo de la carrera de Ingeniera.. Guardar el
programa con el nombre de P11E04.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado, de una palabra, y muestre en
pantalla, la cantidad de letras que tiene la palabra. Guardar el programa con el nombre de P11E05.

Escriba un programa en Lenguaje C++, que permita el ingreso de un nombre, luego el programa debe
mostrar en pantalla, el nombre escrito en forma invertida. Por ejemplo, si se ingresa GONZALITO, se
debe imprimir en pantalla OTILAZNOG. Guardar el programa con el nombre de P11E06.

Escriba un programa en Lenguaje C++, que permita el ingreso por teclado de una palabra, luego muestre las
vocales que se ingresaron, en pantalla. Por ejemplo, si se ingresa ADACADABRA, se debe imprimir en
pantalla AAAAA, 5 LETRAS. Guardar el programa con el nombre de P11E07.

Escriba un programa en Lenguaje C++, que permita el ingreso de una cadena de caracteres, luego el
programa debe mostrar la cadena de caracteres, pero cambiando las letra minsculas por maysculas y las
maysculas en minsculas. Guardar el programa con el nombre de P11E08.

Escriba un programa en Lenguaje C++, que imprima una tabla, vector o arreglo, de todos los nmeros
primos menores que 1000, utilizando el mtodo que Ud. desee. Aqu se describe el mtodo del tamiz:
El objetivo es crear un arreglo Numeros tal que si Nmeros[i] == PRIMO entonces y es un nmero
primo.
Primero se asume que todos son primos.
Luego, tome sucesivamente el menor nmero primo no considerado hasta el momento y marque todos sus
mltiplos como no primos.
Finalmente imprima los nmeros primos. Guardar el programa con el nombre de P11E09.

10 Escriba un programa en Lenguaje C++, que permita cargar un arreglo con 10 enteros, como mximo,
calcule el promedio de dichos nmeros y muestre el resultado por pantalla. Guardar el programa con el
nombre de P11E10.
11. Desarrolle una solucin que permita almacenar en un vector, las cifras invertidas de cada uno de 15
nmeros de tres cifras generados aleatoriamente. Mostrar los nmeros aleatorios generados y el vector
obtenido.
12. Desarrollar una solucin que permita ingresar y almacenar en un vector las notas de todas las prcticas de
un alumno y en base a estas calcular y mostrar el promedio de las prcticas sabiendo que se elimina la
prctica con la nota ms baja. Adicionalmente mostrar:
- La nota ms alta
- La nota ms baja
13. Una institucin financiera que tiene capacidad de atender hasta 50 socios, tiene actualmente los ahorros de 5
de ellos, los cuales son S/.1000, S/.800, S/.3500, S/.1800 y S/.3000, si se sabe que gracias a una sper
promocin en los intereses, espera poder captar el ahorro del total de socios faltantes, desarrolle una
solucin que permita almacenar los ahorros de los socios adicionales (considerando que estos sern valores
aleatorios entre 1000 y 9000 soles) y en base a estos calcular y mostrar:
- Cada uno de los montos ahorrados
o Inicialmente
o Adicional a los iniciales
o Totales
- El promedio de montos ahorrados.
- La suma de los montos de los ahorros mayores a S/.5000 y la suma de los montos ahorrados menores a
este monto.
14. A los vendedores de una empresa, se les calcula su sueldo neto en base a un sueldo base igual a S/.500 ms
una comisin que es igual a un porcentaje del monto vendido segn la tabla mostrada. Considerando que
los montos vendidos se hallarn aleatoriamente entre S/.700 y S/.7000 (Considerando estos valores) y que
la empresa tiene como mximo 30 vendedores.
Desarrolle una solucin que permita almacenar en un vector los montos vendidos de todos los trabajadores
de la empresa y en base a estos calcular y mostrar:
Por cada vendedor:
El sueldo base, el monto de la venta, el monto de aumento y el sueldo neto a cobrar.

En general:
El menor aumento que se obtuvo.
El promedio de sueldos netos.
La cantidad de vendedores que ganaron finalmente ms de S/.1500 de sueldo neto.
MONTO VENDIDO

COMISION

Menos de 2000

5%

De 2000 a 3000

7.50%

Ms de 3000 a 4000

10%

Ms de 4000

15%

15. Disee la solucin que mostrar la cantidad de nmeros mltiplos de 5, y de 7 pero no de 70, almacenados
en un vector que fue poblado con n 20 nmeros aleatorios de 4 cifras. Mostrar tambin el contenido del
vector
16. Disee una solucin que permita almacenar en un vector los sueldos netos de cada uno de los trabajadores
de una empresa, sabiendo este se calcula en funcin de un sueldo base, al cual se le tiene que incrementar
un porcentaje de comisin generado aleatoriamente (las comisiones estn entre el 15% y 40%). Mostrar el
vector.
17. Disee el algoritmo que permita poblar un vector con los valores obtenidos luego de sumar los dgitos, de
cada uno de los nmeros de tres cifras obtenidos aleatoriamente, siempre que estos nmeros sean capica.
18. Disee una solucin que permita ingresar y almacenar en un vector las notas de las 5 prcticas de un
alumno, y en base a estas determinar su promedio final. El promedio final se obtiene de la suma de las cinco
prcticas, eliminando la nota ms baja y duplicando la ms alta.
Mostrar por cada alumno:
El promedio final de cada alumno
La nota ms alta
La nota ms baja
19. Disee una solucin que permita ingresar y almacenar el sueldo (sueldos[]) de todos los trabajadores de una
empresa. Calcular y mostrar el sueldo neto (sueldoNeto) de cada trabajador, sabiendo que se tienen que
descontar el 12% por impuestos y el 3% por seguro. Validar el ingreso de datos.
20. Disee un men con las siguientes opciones (emplee vectores para las opciones 1 y 2)
Opcin 1: Poblar un vector con los segundos que demora un proceso en cada uno de los das de una
semana y en base a estos poblar un vector con los montos a pagar por da, si se sabe que el costo por
minuto es de S/.450.99. Mostrar tambin el costo total de la semana.
Opcin 2: A los vendedores de una empresa, se les calcula su sueldo neto en base a un sueldo base igual a
450 soles y al monto vendido. Si el monto vendido es mayor a 1000 pero menor de 2000 se considerara un
aumento del 5%, si es de 2000 a 3000 el aumento es del 7.5%, si es de ms de 3000 a 4000 el aumento es del
10%, si es de ms de 4000 el aumento es del 15%. Desarrolle una solucin que permita mostrar el monto de
la venta, el monto de aumento y el sueldo neto a cobrar por cada uno de los vendedores de la empresa.

Considere que los montos vendidos estn comprendidos entre 500 y 10000 soles y que la empresa tiene
como mximo 30 vendedores.
Opcin 3: Salir
21. Disee a solucin que permita almacenar en un vector 200 nmeros aleatorios enteros entre 10 y 50
incluidos estos valores y en base al vector mostrar la suma de los n primeros nmeros almacenados
considere que n es un nmero aleatorio.

SEMANA 12

Ordenacin de Arreglos
1

Desarrolle un programa que declare un arreglo de tamao 10 y con el uso de la estructura de control iterativa
FOR, efectu lo siguiente:
a) Solicitar al usuario que teclee cada uno de los 10 valores y los vaya almacenando en su respectiva casilla
en el arreglo.
b) Ordenar el arreglo en forma ascendente.
c) Enviar a imprimir el contenido del arreglo, es decir, que escriba el contenido de cada una de las casillas.
d) Guardar el programa con el nombre de P12E01. Compile y ejecute el programa para los nmeros 20, 10,
5, 1, 15, 8, 3, 18, 12, 6.

Desarrolle un programa que realice lo siguiente:


a) Leer todos los enteros de acuerdo a una constante definida por el programador. La constante determina
el fin de la lectura.
b) Imprimir el contenido ordenado del arreglo para verificar que se hayan almacenado adecuadamente los
valores.
c) Se tiene que determinar cul es el valor ms grande y cul es el valor ms pequeo de los enteros
almacenados en el arreglo.
d) Utilice la estructura Do While.
e) Guardar el programa con el nombre de P12E03. Compile y ejecute el programa para los nmeros 20, 10,
5, 1, 15, 8, 3, 18, 12, 6.

Escribir un programa que cargue un arreglo de n enteros (donde n es <= 100). El algoritmo debe permitir la
lectura de todos los nmeros enteros, ingresados por teclado, entre 20 y 80, hasta que se ingrese el valor -1.
a) Mostrar en pantalla la media de los nmeros que estn en posiciones pares.
b) Mostrar en pantalla todos los nmeros que estn en posiciones pares, ordenados descendentemente.
c) Guardar el programa con el nombre de P12E05. Compile y ejecute el programa para los nmeros 20, 10,
5, 1, 15, 8, 3, 18, 12, 6, 22, 22, 24, 24.
4. Disee a solucin que permita poblar un vector de tamao 9, que almacena los Cdigos de Barras de los
medicamentos de una farmacia.
La farmacia ya ha generado el Cdigo de Barras de sus medicamentos top que son los siguientes:
NOMBRE DEL MEDICAMENTO

CDIGO DE BARRAS

Panadol

1347

RhinoB

2256

Corilin

3347

El cdigo de barras es un nmero de 4 dgitos que se genera de la siguiente forma:


1er dgito: el nmero de orden del medicamento.
2do dgito: la cantidad de vocales del nombre del medicamento.
3er dgito: la cantidad de consonantes del nombre del medicamento.

4to dgito: tamao del nombre del medicamento, considerar que los nombres de los medicamentos
cuentan con un mnimo de 5 caracteres.
Mostrar los Cdigos de Barras iniciales y los adicionales. Considere que los nombres estn en minsculas
5. Disear la solucin que permita ingresar y almacenar en una matriz: el precio de compra y el precio de venta
de 10 artculos de una bodega. En base a esta matriz calcular y mostrar
La utilidad que se obtiene por la venta de cada artculo redondeado a dos decimales
La mayor utilidad obtenida
6. Disee la solucin que permita poblar el vector1 de tamao 15 con nmeros de un dgito ingresados por
teclado. Poblar el vector2 con los siguientes valores obtenidos del vector1:
El producto de los valores comprendidos entre el ndice 5 al 11 incluyendo estos.
La suma de los valores desde el ndice 3 hasta el ltimo ndice.
El nmero menor.
El nmero mayor.
7.

La empresa automotriz Gildemeister tiene 2 agencias (Camacho y Lima) y tiene almacenados en dos
vectores (Uno por cada agencia), la cantidad de autos vendidos (nmeros aleatorios entre 4 y 20) en cada
una de ellas durante los ltimos 12 meses:
Camacho

Lima

Disee la solucin que en base a los datos almacenados en ambos vectores permita calcular y mostrar:
a) El total de ventas de la agencia Camacho
b) Cual fue la agencia que ms vendi y que porcentaje representa su venta del total de las ventas de la
empresa
8.

Disee la solucin que permita crear y mostrar un vector con N nmeros (aleatorios 0 1).
El valor de N es una cantidad entera entre [10 100] y debe ser ingresada por teclado .Posteriormente,
la aplicacin deber almacenar en un nuevo vector, los valores comprendidos entre una posicin a y b
del vector original, estas posiciones debern ser ingresadas por teclado y estar correctamente validadas.
Para el nuevo vector mostrar:
- Los datos del vector.
- El tamao del vector.
- El porcentaje de unos y ceros presentes.

SEMANA 13

Bsqueda en Arreglos
1

Desarrolle un programa que defina un arreglo de tamao 8 con valores enteros y especificados dentro del
cdigo fuente. Posteriormente el usuario introducir un nmero entero y el programa debe de indicar si dicho
nmero est dentro del arreglo y en qu posicin se encuentra, en caso contrario se indica que el nmero no
se encuentra y cul es el valor ms cercano.
a) Los nmeros considerados en el cdigo fuente son: 20, 10, 5, 1, 15, 8, 3, 18.
b) Utilice la estructura While.
c) Ordene el arreglo antes de iniciar la bsqueda
d) Guardar el programa con el nombre de P13E01.
e) Compile y ejecute el programa.

Desarrolle un programa que declare un arreglo de caracteres de un tamao determinado por una constante.
Los pasos que debe desarrollar son los siguientes:
a) Leer todos los caracteres utilizando la estructura iterativa FOR.
b) Imprimir los caracteres contenidos dentro del arreglo previamente llenado.
c) Recorrer el arreglo carcter a carcter, para determinar si es una vocal (considerar las vocales minsculas y
maysculas) e ir contando las vocales maysculas y minsculas.
d) Utilice las estructuras FOR y la estructura SWITCH.
e) Guardar el programa con el nombre de P13E02. Compile y ejecute el programa para la cadena de
caracteres; AuReLiO, RAPIDOS y furiosos, NaCiDo PaRa MaTaR.

Escribir un programa para leer una fecha en formato da-mes-ao (una cadena de caracteres de 8 posiciones
+ 1), averiguar si es correcta e indicar el da siguiente.
a) De forma general, un ao se considerar bisiesto si es mltiplo de 4.
b) Guardar el programa con el nombre de P13E03. Compile y ejecute el programa para las siguientes fechas:
29-02-2000, 15-03-1992 y 17-03-2006.
4. Disee la solucin que permita que permita poblar un vector de tamao 10 con nmeros aleatorios de dos
dgitos. Luego debe permitir ingresar un nmero, si este nmero se encuentra en el vector, cambiar cada
una de las coincidencias en el vector por un nuevo nmero de un digito generado aleatoriamente. Si el
nmero ingresado no se encontrar en el vector, se debe mostrar el mensaje El nmero no se encuentra.
Finalmente mostrar el vector resultante. (No realice validaciones).
5. Disee la solucin que permita poblar un vector de tamao 10, con nmeros enteros positivos aleatorios
de tres cifras (no validar estos nmeros), posteriormente crear y poblar una matriz que contenga como
elementos de cada una de sus columnas, el dgito de las centenas, de las decenas y de las unidades, de cada
uno de los nmeros almacenados en el vector. Mostrar la matriz resultante

SEMANA 14

Arreglos Bidimensionales - Cadenas


1

Disee un programa que llene una matriz de 3 * 3. Calcular la suma de cada fila y almacenarla en un vector, e
imprimir que fila tuvo la mxima suma y la suma de esa fila.
Ejemplo:
Considerando la matriz:
10
15
5
6
18
12
16
4
24
La suma de las filas es:
30
36
44
La sumatoria mayor es 44 de la fila 3.

Un plomero necesita hacer n reparaciones urgentes, y sabe de antemano el tiempo que le va a llevar cada una
de ellas: en la tarea i-sima tardar ti minutos. Como en su empresa le pagan dependiendo de la satisfaccin
del cliente, necesita decidir el orden en el que atender los avisos para minimizar el tiempo medio de espera
de los clientes. En otras palabras, si llamamos Ei a lo que espera el cliente i-simo hasta ver reparada su avera
por completo, necesita minimizar la expresin:
E(n) = Ei

para i desde 1 hasta n

Deseamos disear un programa que encuentre el tiempo promedio de atencin.


Por ejemplo:
Visitas Tiempo horas
1
5
3
2
2
3
4
1
2
4
El promedio ser:
1 x 5 mas 3 x 2 mas 2 x 3 mas 4 x 1 mas 2 x 4.
La sumatoria entre 5.
3

Desarrolle un programa, que permita encontrar un nmero, en cada columna de una matriz 5 x 3. El
programa debe permitir el ingreso de los nmeros que componen la matriz por teclado, guardando estos
nmeros en una matriz 5 x 3. Luego debe mostrar en pantalla, si el nmero buscado se encuentra en la
columna 1, 2 o 3.

Por ejemplo, para la matriz;


1 2
3
4 5
6
2 7
8
9 10
11
12 13
2
Si buscamos el nmero 2, la respuesta sera:
El nmero 2 se encuentra en la Fila 1 Columna 2, Fila 3 Columna 1 y Fila 5 Columna 3.
4

Desarrolle un programa, que permita encontrar la distancia ms corta entre tres puntos. El programa debe
permitir el ingreso de los puntos por teclado, guardando estos puntos en una matriz 3 x 2. Luego debe
mostrar en pantalla, la distancia ms corta y entre qu puntos se encuentra esta distancia.
Por ejemplo, para los puntos;
Punto 1 (9, 0)
Punto 2 (10, 1)
Punto 3 (1, 10)
El mensaje en pantalla sera; Entre el punto 1 y el punto 2, est la menor distancia entre los puntos.

5.

Disee la solucin que permita que permita ingresar el nombre de dos alumnos y mostrarlos ordenados
alfabticamente

6.

Disee la solucin que permita que permita ingresar para cada uno de los socios de una cooperativa:
El nombre,
El apellido paterno y
Cdigo de socio (4 dgitos)
Y en base a estos datos, generar la cuenta de correo de los mismos, sabiendo que esta se obtiene de la
concatenacin de las dos primeras letras del nombre, seguidas de las tres ltimas letras del apellido,
seguido de la suma de los dgitos de su cdigo, y finalmente seguido de uno de estos tres dominios:
@hotmail.com, @gmail.com; @yahoo.com.
Mostrar las cuentas de correo de cada uno de los socios.

7.

Disee la solucin que permita ingresar los nombres de los alumnos de un saln de clases y mostrar:
- El nmero de vocales del nombre.
- Cuantos nombres contienen ms de 3 vocales.
- Cuantos nombres contienen ms de 3 vocales diferentes
- Cual fue el nombre con el mayor cantidad de caracteres ingresado

8.

Disee la solucin que permita ingresar el nombre de un empleado (cuya longitud mnima es 9) y
autogenerar un nmero de dos dgitos, y en base a estos dos datos generar y mostrar el cdigo de usuario
que le corresponde, sabiendo que este consta de seis caracteres:
- 1er y 2do caracter
- 3er caracter

: igual a las dos primeras letras del nombre.


: igual al primer dgito del nmero de 2 dgitos autogenerado.

- 4to y 5to caracter


- 6to carcter

: igual a las dos ltimas letras del nombre.


: igual al segundo dgito del nmero de 2 dgitos autogenerado.

9.

Disee la solucin que permita ingresar los nombres de N personas, mostrar la longitud de cada nombre
ingresado, el nombre que tiene la mayor longitud y el nombre que tiene la menor longitud.

10.

Disee la solucin que permita ingresar los nombres de N personas, mostrar la longitud de cada nombre
ingresado, el primer nombre que tiene la mayor longitud y ltimo nombre que tiene la menor longitud.

11.

Disee la solucin que permita ingresar los nombres de los alumnos de un saln de clases y mostrar:
El nmero vocales que tiene cada nombre.
El nmero de consonantes que tiene cada nombre.
Cuantos nombres contienen ms de 3 vocales.
Cuantos nombres contienen ms de 3 vocales diferentes.
Cual fue el nombre con el mayor cantidad de caracteres ingresado.

12.

Disee la solucin que permita ingresar los nombres de los miembros de una asociacin deportiva y en base
a estos mostrar :
Los nombres que sean Palndromos (se leen igual de derecha a izquierda que de izquierda a derecha).
El porcentaje de nombres que fueron Palndromos.

13.

Disee la solucin que permita ingresar nombres de los miembros de un club y en base a este vector calcular
y mostrar:
El nmero de consonantes de cada nombre.
El nombre ms largo.
El nombre que tiene ms consonantes.
Los nombres que finalizan con la consonante n o m.

14.

Disee la solucin que permita ingresar los nombres de 10 alumnos de una clase, sabiendo que sus nombres
tienen como mnimo 2 caracteres (validar). En base a ello calcular y mostrar:
El nmero de consonantes que tiene cada nombre que termine en o. (considere que los nombres solo
contienen letras y que todas estn en maysculas)
El nombre ms largo.

15.

Disee la solucin que permita ingresar el nombre (cuya longitud mnima es 5) y el apellido paterno (cuya
longitud mnima es 10) de N auditores de la empresa AuditoresPer S.A. A y mostrar:
Nombres y apellidos.
El nmero de vocales que tiene el nombre completo (nombre y apellido paterno) de cada auditor.
El nombre de usuario de cada auditor que consiste en: las dos primeras letras del nombre y la ltima letra
del apellido paterno. (8 puntos)
Nota: no valide la cantidad de auditores.

16.

Un almacn codifica todos sus equipos con 8 caracteres (ejemplo MSAE *E4).
La ubicacin de los equipos en el almacn depender del cdigo ingresado.

El valor absoluto de la diferencia entre: la cantidad de vocales y, los otros tipos de caracteres (incluye las
consonantes, espacios en blanco y caracteres especiales) indicar en que piso se encuentra el equipo:
siendo el valor 0 (cero) el stano, el valor 1 primer piso y as sucesivamente.
La cantidad de caracteres A determina el depsito donde se encuentra el equipo.
Si el cdigo no contiene ningn carcter A significa que no se encuentra en este local, y se tiene que
mostrar el mensaje de equipo no encontrado en este local.
Por ejemplo para un equipo con cdigo: MSAE *E4
| 3 (vocales) 5 (otros caracteres) | = |-2 | = 2 = entonces se encuentra en el segundo piso.
1 caracteres A por lo tanto se encuentran en el depsito 1
Mensaje: El equipo se encuentra en el segundo piso, deposito 1
Disear la solucin que permita determinar la ubicacin del equipo ingresando el cdigo de 8 caracteres, se
tiene que validar que no contenga espacios en blanco a los extremos y que sean exactamente 8 caracteres.
Considere que el mensaje de salida debe estar en una sola variable de salida.
17.

Disear la solucin que permita implementar el siguiente men de opciones.


******************************Men*****************************
[1] ingresar 2 nombres.
[2] mostrar ambos nombres ingresados.
[3] mostrar el nombre con ms caracteres.
[4] ingresar un ndice y mostrar los caracteres de cada nombre concatenados.
[5] compara ambos textos y mostrar si son iguales o diferentes.
[6] salir
****************************************************************
Realizar todas las validaciones necesarias

18. Disee la solucin que permita almacenar en un vector los nombres de los miembros de una asociacin
deportiva y en base a este vector mostrar:
Los nombres que sean palndromos (se leen igual de derecha a izquierda que de izquierda a
derecha)
El porcentaje de nombres que fueron "palndromos".
Realice todas las validaciones necesarias.
19. Disee una solucin que permita ingresar en un vector, los nombres de los empleados de una fbrica, y
posteriormente mostrar:
Por cada uno de los empleados:
La cantidad de consonantes que tiene el nombre.
Los caracteres del nombre que se encuentren en los ndices impares
El caracter que se encuentra en el ndice dado por un nmero aleatorio entero generado previamente.

En general:
El ltimo nombre ms largo

Вам также может понравиться