FACULTAD DE INGENIERIA INDUSTRIAL, SISTEMAS E INFORMATICA
ESCUELA PROFESIONAL: INGENIERIA ELECTRONICA
ASIGNATURA: FUNDAMENTOS Y METODOLOGIA DE LA PROGRAMACION
CICLO: II SEMESTRE ACADEMICO: 2024- I
PRACTICA PROCESOS CONDICIONALES (IF –ELSE)
1. Escribir un programa que solicite el ingreso de un número y determinar si es par o impar. Si el número es par
se debe calcular el cuadrado del número en caso contrario se debe calcular el cubo del número.
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int numero;
cout <<
"Ingrese un numero: ";
cin >> numero;
if (numero % 2 == 0) {
// Es par
int cuadrado = pow(numero, 2);
cout << "El numero es par." << endl;
cout << "El cuadrado del numero es: " << cuadrado << endl;
} else {
// Es impar
int cubo = pow(numero, 3);
cout << "El numero es impar." << endl;
cout << "El cubo del numero es: " << cubo << endl;
return 0;
}
2. Escribir un programa que pida al usuario que ingrese 5 notas, y determine la mayor y menor nota.
#include <iostream>
#include <limits>
using namespace std;
int main() {
const int num_notas = 5;
float notas[num_notas];
// Pedir al usuario que ingrese las notas
cout << "Ingrese las 5 notas:" << endl;
for (int i = 0; i < num_notas; ++i) {
cout << "Nota " << i + 1 << ": ";
cin >> notas[i];
// Validar la entrada
while (cin.fail()) {
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout << "Entrada invalida. Por favor, ingrese un numero valido: ";
cin >> notas[i];
// Determinar la mayor y menor nota
float mayor = notas[0];
float menor = notas[0];
for (int i = 1; i < num_notas; ++i) {
if (notas[i] > mayor) {
mayor = notas[i];
if (notas[i] < menor) {
menor = notas[i];
// Mostrar resultados
cout << "La mayor nota es: " << mayor << endl;
cout << "La menor nota es: " << menor << endl;
return 0;
}
3. Escribir un programa que pida al usuario que ingrese 6 notas y calcule el promedio considerando las 5
mayores notas (eliminando la menor).
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
const int num_notas = 6;
float notas[num_notas];
// Pedir al usuario que ingrese las notas
cout << "Ingrese las 6 notas:" << endl;
for (int i = 0; i < num_notas; ++i) {
cout << "Nota " << i + 1 << ": ";
cin >> notas[i];
// Validar la entrada
while (cin.fail()) {
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout << "Entrada invalida. Por favor, ingrese un numero valido: ";
cin >> notas[i];
// Ordenar las notas de mayor a menor
sort(notas, notas + num_notas, greater<float>());
// Calcular el promedio de las 5 mayores notas
float promedio = 0;
for (int i = 0; i < num_notas - 1; ++i) {
promedio += notas[i];
promedio /= (num_notas - 1);
// Mostrar el promedio
cout << "El promedio considerando las 5 mayores notas es: " << promedio << endl;
return 0;
}
4. Escribir un programa que ordene de mayor a menor 3 números ingresado por teclado
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
// Declaración de variables
float num1, num2, num3;
// Pedir al usuario que ingrese los tres números
cout << "Ingrese el primer numero: ";
cin >> num1;
cout << "Ingrese el segundo numero: ";
cin >> num2;
cout << "Ingrese el tercer numero: ";
cin >> num3;
// Ordenar los números de mayor a menor
float numeros[] = {num1, num2, num3};
sort(numeros, numeros + 3, greater<float>());
// Mostrar los números ordenados
cout << "Los numeros ordenados de mayor a menor son: ";
for (int i = 0; i < 3; ++i) {
cout << numeros[i] << " ";
cout << endl;
return 0;
}
5. Escribir un programa que determine si 3 longitudes ingresadas por teclado forman un triángulo y luego
clasifique el triángulo según sus lados.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float lado1, lado2, lado3;
// Pedir al usuario que ingrese las longitudes de los lados
cout << "Ingrese la longitud del primer lado: ";
cin >> lado1;
cout << "Ingrese la longitud del segundo lado: ";
cin >> lado2;
cout << "Ingrese la longitud del tercer lado: ";
cin >> lado3;
// Comprobar si las longitudes ingresadas forman un triángulo
if (lado1 + lado2 > lado3 && lado1 + lado3 > lado2 && lado2 + lado3 > lado1) {
// Determinar el tipo de triángulo
if (lado1 == lado2 && lado2 == lado3) {
cout << "El triángulo es equilátero." << endl;
} else if (lado1 == lado2 || lado1 == lado3 || lado2 == lado3) {
cout << "El triángulo es isósceles." << endl;
} else {
cout << "El triángulo es escaleno." << endl;
} else {
cout << "Las longitudes ingresadas no forman un triángulo." << endl;
return 0;
}
6. Una empresa ofrece sus ofertas de acuerdo a las siguientes escalas de consumo:
Consumo Descuento (%)
Mayor a 1000 30
Mayor a 600 20
Mayor a 300 15
Hasta 300 10
Si en todos los casos aplica un impuesto del 15%. Determinar el importe a pagar por lo consumido. Mostrando
todos los importes.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float consumo, importe_sin_descuento, descuento, impuesto, importe_final;
// Pedir al usuario que ingrese el consumo
cout << "Ingrese el monto del consumo: $";
cin >> consumo;
// Calcular el importe sin descuento
importe_sin_descuento = consumo;
// Calcular el descuento según la escala de consumo
if (consumo > 1000) {
descuento = consumo * 0.3;
} else if (consumo > 600) {
descuento = consumo * 0.2;
} else if (consumo > 300) {
descuento = consumo * 0.15;
} else {
descuento = consumo * 0.1;
}
// Calcular el impuesto del 15%
impuesto = consumo * 0.15;
// Calcular el importe final
importe_final = consumo - descuento + impuesto;
// Mostrar los importes
cout << "Importe sin descuento: $" << importe_sin_descuento << endl;
cout << "Descuento aplicado: $" << descuento << endl;
cout << "Impuesto aplicado: $" << impuesto << endl;
cout << "Importe final a pagar: $" << importe_final << endl;
return 0;
}
7. Escribir un programa que permita calcular el pago semanal de un trabajador. Los datos a ingresar son: horas
trabajadas y el pago por hora.
Si el número de horas totales trabajadas es mayor a 48 la diferencia se considera como horas extras y se
remuneran un 50% más que una hora normal.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float horas_trabajadas, pago_por_hora, pago_semanal;
// Pedir al usuario que ingrese las horas trabajadas y el pago por hora
cout << "Ingrese las horas trabajadas en la semana: ";
cin >> horas_trabajadas;
cout << "Ingrese el pago por hora: $";
cin >> pago_por_hora;
// Calcular el pago semanal
if (horas_trabajadas > 48) {
// Calcular el pago por las primeras 48 horas
float pago_normal = 48 * pago_por_hora;
// Calcular el pago por las horas extras
float horas_extras = horas_trabajadas - 48;
float pago_horas_extras = horas_extras * (pago_por_hora * 1.5);
// Calcular el pago total
pago_semanal = pago_normal + pago_horas_extras;
} else {
// Si no hay horas extras, calcular el pago semanal normal
pago_semanal = horas_trabajadas * pago_por_hora;
}
// Mostrar el pago semanal
cout << "El pago semanal del trabajador es: $" << pago_semanal << endl;
return 0;
}
8. Escribir un programa que pida el ingreso de 2 números y a continuación ingrese un operador (+, -, *, /) el
programa debe presentar el resultado de la operación. Si el operador no es válido se debe presentar un mensaje
operador no valido.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float num1, num2, resultado;
char operador;
// Pedir al usuario que ingrese los dos números y el operador
cout << "Ingrese el primer numero: ";
cin >> num1;
cout << "Ingrese el segundo numero: ";
cin >> num2;
cout << "Ingrese el operador (+, -, *, /): ";
cin >> operador;
// Realizar la operación según el operador ingresado
switch (operador) {
case '+':
resultado = num1 + num2;
cout << "El resultado de la suma es: " << resultado << endl;
break;
case '-':
resultado = num1 - num2;
cout << "El resultado de la resta es: " << resultado << endl;
break;
case '*':
resultado = num1 * num2;
cout << "El resultado de la multiplicacion es: " << resultado << endl;
break;
case '/':
if (num2 != 0) {
resultado = num1 / num2;
cout << "El resultado de la division es: " << resultado << endl;
} else {
cout << "No se puede dividir por cero." << endl;
}
break;
Default:
cout << "Operador no valido." << endl;
return 0;
9. El gobierno ha implementado como parte de su programa social, un subsidio familiar bajo la siguiente
reglamentación.
Las familias que tienen hasta 2 hijos reciben S/. 70.00 las que tiene entre 3 y 5 hijos reciben S/. 90.00 y las
que tienen 6 hijos o más reciben S/. 120.00 mensual.
Por cada hijo en edad escolar reciben S/.10.00 adicionales. Se considera la edad escolar entre 6 y 18 años.
Si la madre fuera viuda, la familia recibe S/. 20.00 adicionales.
Determinar el monto mensual que recibirán una familia de acuerdo a su propia realidad familiar.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
int num_hijos, edad_hijos, monto_mensual;
char estado_civil;
// Pedir al usuario que ingrese el número de hijos y la edad de los hijos
cout << "Ingrese el numero de hijos de la familia: ";
cin >> num_hijos;
cout << "Ingrese la edad de los hijos (separadas por espacio): ";
int suma_edades = 0;
for (int i = 0; i < num_hijos; ++i) {
cin >> edad_hijos;
suma_edades += edad_hijos;
}
// Pedir al usuario que ingrese el estado civil de la madre
cout << "La madre es viuda? (S/N): ";
cin >> estado_civil;
// Calcular el monto mensual
if (num_hijos <= 2) {
monto_mensual = 70;
} else if (num_hijos >= 3 && num_hijos <= 5) {
monto_mensual = 90;
} else {
monto_mensual = 120;
}
// Sumar S/. 10.00 adicionales por cada hijo en edad escolar
for (int i = 0; i < num_hijos; ++i) {
if (edad_hijos >= 6 && edad_hijos <= 18) {
monto_mensual += 10;
}
}
// Agregar S/. 20.00 adicionales si la madre es viuda
if (estado_civil == 'S' || estado_civil == 's') {
monto_mensual += 20;
}
// Mostrar el monto mensual
cout << "El monto mensual que recibirá la familia es: S/. " << monto_mensual << endl;
return 0;
}
10. Si el sueldo de un empleado es S/. 1000.00 o menos se le descuenta el 10% Si esta entre S/. 100.00 y S/.
2000.00 sobre el adicional, si está arriba de S/. 2000.00 el 3% sobre el adicional. Escriba un programa que lea
el sueldo y muestre el salario neto y el impuesto.
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float sueldo, salario_neto, impuesto;
// Pedir al usuario que ingrese el sueldo
cout << "Ingrese el sueldo del empleado: S/. ";
cin >> sueldo;
// Calcular el impuesto y el salario neto según las reglas dadas
if (sueldo <= 1000) {
impuesto = 0.10 * sueldo;
} else if (sueldo > 1000 && sueldo <= 2000) {
impuesto = (0.10 * 1000) + (0.03 * (sueldo - 1000));
} else {
impuesto = (0.10 * 1000) + (0.03 * 1000) + (0.03 * (sueldo - 2000));
salario_neto = sueldo - impuesto;
// Mostrar el salario neto y el impuesto
cout << "El salario neto del empleado es: S/. " << salario_neto << endl;
cout << "El impuesto aplicado es: S/. " << impuesto << endl;
return 0;
}
11. Escribir un programa que pida el ingreso de 5 temperaturas y luego calcule la temperatura promedio. El
programa debe determinar el tipo de clima de acuerdo a la siguiente tabla:
temperatura promedio (tPromedio) Tipo de clima
(tPromedio)<= 10 Frio
10<(tPromedio)<=20 Nublado
20<(tPromedio)<=30 Caluroso
(tPromedio)>30 Tropical
#include <iostream>
using namespace std;
int main() {
// Declaración de variables
float temperatura, suma_temperaturas = 0, temperatura_promedio;
int num_temperaturas = 5;
// Pedir al usuario que ingrese las 5 temperaturas
cout << "Ingrese las 5 temperaturas:" << endl;
for (int i = 0; i < num_temperaturas; ++i) {
cout << "Temperatura " << i + 1 << ": ";
cin >> temperatura;
suma_temperaturas += temperatura;
// Calcular la temperatura promedio
temperatura_promedio = suma_temperaturas / num_temperaturas;
// Determinar el tipo de clima según la temperatura promedio
string tipo_clima;
if (temperatura_promedio <= 10) {
tipo_clima = "Frio";
} else if (temperatura_promedio <= 20) {
tipo_clima = "Nublado";
} else if (temperatura_promedio <= 30) {
tipo_clima = "Caluroso";
} else {
tipo_clima = "Tropical";
// Mostrar la temperatura promedio y el tipo de clima
cout << "La temperatura promedio es: " << temperatura_promedio << " grados" << endl;
cout << "El tipo de clima es: " << tipo_clima << endl;
return 0;