revista de logica de programación
DESCRIPTION
Problemas de C++TRANSCRIPT
Universidad Interamericana de Panamá
Trabajo final de Lógica de Programación
Nombre: Brandon Pinto
8-889-2024
La programación es el pro-ceso de diseñar, codificar, depurar y mantener el có-digo fuente de programas
computacionales. El código fuente es escrito en un len-
guaje de programación. El propósito de la programa-ción es crear programas
que exhiban un comporta-miento deseado.
1. Dada las horas trabajadas de una persona y el valor por hora.
Calcular su salario e imprimirlo.
Programa:
#include <iostream>
using namespace std;
int main()
{
float horario = 0, salario = 0, valor = 0;
cout<<"Introduzca por favor las Horas Trabajadas: "<< endl;
cin>> horario;
cout<<"Introduzca por favor el Salario: "<< endl;
cin>> valor;
salario= horario*valor;
cout<<"El Salario Total es: "<<endl << salario <<endl;
system("pause");
return 0;
Laboratorio 4
2.A un trabajador le pagan según sus horas trabajadas y la tarifa está a
un valor por hora. Si la cantidad de horas trabajadas es mayor a 40 ho-
ras, la tarifa por hora se incrementa en un 50% para las horas extras.
Calcular el salario del trabajador dadas las horas trabajadas y la tarifa.
Programa
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
float horas_trabajadas=0, tarifa=0, horas_extras=0, salario=0, tari-
fa_extra=0;
cout<<"Introduzca la cantidad de horas trabajadas: "<<endl;
cin>> horas_trabajadas;
cout<<"Introduzca su tarifa por hora: "<<endl;
cin>> tarifa;
if (horas_trabajadas <=40)
salario= horas_trabajadas * tarifa;
else
{
if (horas_trabajadas > 40)
{
tarifa_extra = (tarifa + (0.50 * tarifa));
horas_extras = (horas_trabajadas - 40);
salario = ((horas_extras * tarifa_extra) + (40 *tarifa));
}
}
cout<<"Su salario es: " <<endl <<salario <<endl;
cout<<endl;
system("pause");
return 0;
}
3. Modificar el ejercicio anterior para obtener la suma de los salarios de todos los
trabajadores.
Programa:
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
float n=0, x=0, s=0, h=0, t=0, suma=0;
cout<<"Introduzca valor de las veces que desea rea-
lizar la suma: "<<endl;
cin>> n;
x=1;
suma=0;
while (x<=n){
cout<<"introduzca valor de h: "<<endl;
cin>> h;
cout<<"introduzca valor de t: "<<endl <<endl;
cin>>t;
s=(h*t);
cout<<"el valor de s: "<<endl <<s <<endl;
suma=(suma+s);
x=x+1;
}
4. A un trabajador le descuentan de su sueldo el
10% si su sueldo es menor o igual a 1000, por
encima de 1000 y hasta 2000 el 5% del adicional,
y por encima de 2000 el 3% del adicional. Calcu-
lar el descuento y sueldo neto que recibe el traba-
jador dado su sueldo. Programa:
#include <iostream>
using namespace std;
int main(){
double d,monto,s;
cout<<"Ingresa sueldo: "<<endl;
cin>>s;
if(s>2000){
d=100+(s-1000)*0.03;
monto=s-d;
}else{
if(s>1000 && s<=2000){
d=100+(s-1000)*0.05;
monto=s-d;
}else{
d=s*0.1;
monto=s-d;
}
}
cout<<"El sueldo percibido es: "<<endl <<monto <<endl;
cout<< " y su descuento fue: "<<endl << d <<endl;
cout<<endl;
system ("pause");
return 0;
}
5. Dado un monto calcular el des-
cuento considerando que por encima
de 100 el descuento es el 10% y por
debajo de 100 el descuento es el 2%. Programa :
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
float monto=0, descuento=0;
cout<<"Introduzca Monto: "<<endl;
cin>> monto;
if(monto>100){
descuento= ((monto*10)/100);
}else{
descuento=((monto*2)/100);
}
cout<<"su monto total es: "<<monto
<<endl;
cout<<"su descuento es: "<<descuento
<<endl;
system ("pause");
return 0;
}
6. Dado un tiempo en segundos, calcular los
segundos restantes que le correspondan para
convertirse exactamente en minutos.
#include <iostream>
#include <cstlib>
using namespace std;
int main()
{
int tiempo=0, min=0, tseg=0, seg=0;
cout<<"introduzca el tiempo en segun-
dos";
cin>>tseg;
if (min=tiempo/60){
seg=tiempo%60;
tseg=60-seg;}
cout<<("\nEl tiempo es: ", min,seg);
cout<<("\nEl tiempo en segundos que fal-
ta para completar los minutos exactos es: ",
tseg);
system("pause");
return 0;
}
7. Dado un tiempo en minutos, calcular los días, horas y minutos quele corresponden. -#include <stdio.h> #include <stdlib.h> int main () { int tiempo_en_minutos, dias, horas, minu-tos; printf ("Ingrese el valor de tiempo en minu-tos: scanf ("%d", &tiempo_en_minutos); dias=tiempo_en_minutos/1440; minutos=tiempo_en_minutos%1440; horas=minutos/60; minutos=minutos%60; printf ("Valor de dias: %d\n", dias); printf ("Valor de horas: %d\n", horas); printf ("Valor de minutos: %d\n", minutos); printf ("\n"); system ("pause"); return0; }
8. Calcular mediante un algoritmo repetitivo
la suma de los N primeros números naturales.
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int i,n,s=0;
printf("\nHasta donde sumar: ");
scanf("%d", &n);
for(i=1;i<=n;i++)
{
s=s+i;
}
printf("\nLa suma es: %d\n\n",s);
system("pause");
return 0;
}
9. Dado N notas de un estudiante calcular:
a) Cuantas notas tiene reprobadas.
b) Cuantas notas aprobadas.
c) El promedio de notas.
d) El promedio de notas aprobadas y reprobadas. #include<iostream>
#include <cstdlib>
using namespace std ;
int main()
{
float a,b,c,d,e,f,g,h,i,j,k,p1,p2,p3,ac,lb, df;
cout<< "primer parcial, nota teorica\n"; cin>>a;
cout<< "nota practica del primer parcial\n"; cin>>b;
cout<< "nota del segundo parcial\n"; cin>>c;
cout<< "nota del tercer parcial\n"; cin>>d;
cout<<"notas de actividades, nota del quiz\n"; cin>>e;
cout<< "segunda actividad\n"; cin>>f;
cout<< "tercera actividad\n"; cin>>g;
cout<< "cuarta actividad\n"; cin>>h;
cout<< "notas de laboratorios, primera nota\n"; cin>>i;
cout<< "segunda nota de laboratorio\n"; cin>>j;
cout<< "tercera nota de laboratorio\n"; cin>>k;
p1=((a*0.8)+(b*0.2))*0.2;
p2=(c*0.2);
p3=(d*0.1);
ac=(((2*e)+f+g+h)/5)*0.3;
lb=((i+j+k+b)/4)*0.2;
df= p1+p2+p3+ac+lb;
cout<< "la nota del estudiante es\n";
cout<<DF;
system(“pause”);
return 0;
}
10. Dado un número determinar la su-
ma de sus dígitos.
. #include<iostream>
#include<cstdlib>
int main()
{
int a,dig,s=0;
cout<<"Ingrese un numero:\n";
cin>>a;
while(a>0)
{
d=a%10;
s+=d;
a/=10;
}
cout<<"La suma de los dígitos es: "<<
int a,dig,s=0;
cout<<"Ingrese un numero:\n";
cin>>a;
while(a>0)
{
d=a%10;
s+=d;
a/=10;
}
cout<<"La suma de los dígitos es: "<<
system(“pause”)
return 0;
}
11. Se trata de escribir el algoritmo que permita emitir la
factura correspondiente a una compra de un articulo de-
terminado, del que se adquieren una o varias unidades. El
IVA es del 19% y si el precio bruto ( precio venta mas
IVA) es mayor de $13000 se debe realizar un descuento
del 5%.
#include<iostream>
#include<cstdlib>
using namespace std;
int main ()
{
char art;
float pa,ta,d;
int nu;
const float iva=0.19;
cout<<("articulo: ");
cin>>("%s",&art);
cout<<("precio del articulo");
cout<<("%f",&pa);
cout<<("cuantas unidades son: ");
cin>>("%d",&nu);
if (nu>1)
pa=pa*nu;
else
pa=pa;
ta=(iva*pa)+pa;
if (ta>13000){
d=ta*0.5;
cout<<("\ndescuento del total:%f",d);}
else{
ta=ta;
cout<<("total:%f",ta);
system(“pause”)
return 0;
}
12. Realizar un algoritmo que permita pedir 50 números naturales
y determine e imprima cuantos son pares, impares, positivos y ne-
gativos.
#include<iostream >
#include<cstdlib >
using name space std;
int main(){
//Captura de datos en un arreglo de 50 elementos
for (i=0;i<50;i++){
cout<< ("Introduce Numero Num[%d]= ",i+1);
cin>> ("%d",&num[i]);}
//inicializar el numero de pares y de positivos como 0 pues aún no
empieza la cuenta
n_pares=0;
n_positivos=0;
//recorrer el archivo para contar
for (i=0;i<50;i++){
//si el modulo es 0 (el residuo de la división entre 2) es par
//y se aumenta el contador n_pares cada que esto pase
if (num[i]%2==0){
n_pares++;}
//si es mayor o igual a 0, es positivo y se aumenta el contador
n_positivos
if (num[i]>=0){
n_positivos++;}
}
//impresion de resultados
cout<< ("\n\n\tHay %d numeros pares ", n_pares);
cout<< ("\n\tHay %d numeros impares ", 50-n_pares);
cout<< ("\n\tHay %d numeros positivos ", n_positivos);
cout<<("\n\tHay %d numeros negativos ", 50-n_positivos);
cout<<("\n\n\n\tPulse cualquier enter para salir");
system(“pause”);
return 0;
}
13. Desarrollar un algoritmo para
calcular e imprimir el factorial de
un número.
#include<iostream>
#include<cstdlib>
using name space std;
int main()
{
if (n<=1)
{return 1;}
else
}
void main()
{
int n;
cout<<"Escriba el numero";
cin>>n;
factorial(n);
system(“pause”)
return 0;
}
14. Calcular la media de 100 números e
imprimir su resultado.
#include<iostream>
#include<cstdlib>
using name space std;
int main()
int s = 0, x = 1, n;
double media;
Scanner leer = new Scanner(System.in);
while (x <= 10)
cout<< ("Ingrese el " + x + " numero: ");
n = leer.nextInt();
s = s + n;
x = x + 1;
}
media = s / 10.;
cout<< ("Media: " + media);
system(“pause”)
return 0;
}
15. Calcular y visualizar la suma los números pares
comprendidos entre20 y N(ambos
incluídos).
. #include<iostream >
#include<cstdlib >
using name space std;
int main()
{
clrscr();
int N=50;
int i;
cout<<"Los Numeros Pares Comprendidos entre 1 y 50
son:";
for (i=2;i<N;i++)
{
system(“pause”)
return 0;
}
1) Calcular la nota definitiva de 25
estudiantes del Lógica de progra-
mación y Algoritmos, sabiendo a
cada estudiante se le sacan 3 notas
(una del 25%, otra del 35% y la
otra del 40%).
Laboratorio 2
2) Una persona desea viajar a una ciudad de Colombia. Las
opciones que tiene son las siguientes: 01-Medellín, 02-
Bogotá, 03-Cali, 04-Bucaramanga, 05-Cartagena, 06-San An-
drés y Providencias y 07-Santamarta. Leer el código de una
de esas ciudades e imprimir el nombre de la ciudad.
#include <iostream>
#include <estdlib>
using namespace std;
int main ()
{
int ciudad;
cout<<"Introduzca el codigo";
cin>>ciudad;
switch (ciudad)
{
case1: cout<<"Medelin";
break;
case2: cout<<"Bogota";
break;
case3: cout<<"Cali";
break;
case4: cout<<"Bucaramanga";
break;
case5: cout<<"Cartagena";
break;
case6: cout<<"San Andres";
break;
case7: cout<<"Santamarta";
break
default: cout<<"opcion invalida";
}
system("pause");
return 0;
1. Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea
saber cuántas calorías consume su cuerpo durante todo el tiempo que
realice una misma actividad. Las actividades que tiene permitido realizar
son únicamente dormir o estar sentado en reposo. Los datos que tiene son
que estando dormido consume 1.08 calorías por minuto y estando sentado
en reposo consume 1.66 calorías por minuto.
#include <iostream>
#include <estdlib>
using namespace std;
int main ()
{
int Act, time; Float caloria;
cout<<"Introduscalaactividad";
cin>>Act;
cout<<"Introduscatiempo";
cin>>time;
switch (act)
{
case1: caloria=(1.8)*(tieme);
break;
case2: caloria=(1.66)*(time);
break;
dersutt: cout<<"opcion invalida" <<endl;
}
cout<<"la caloria consumidas son"; <<caloria;
system("pause");
return 0;
}
2. Una empresa quiere hacer una compra de varias piezas de la misma clase a una fábrica de refacciones. La em-
presa, dependiendo del monto total de la compra, decidirá qué hacer para pagar al fabricante. Si el monto total de la
compra excede de $500 000 la empresa tendrá la capacidad de invertir de su propio dinero un 55% del monto de la
compra, pedir prestado al banco un 30% y el resto lo pagara solicitando un crédito al fabricante. Si el monto total
de la compra no excede de $500 000 la empresa tendrá capacidad de invertir de su propio dinero un 70% y el res-
tante 30% lo pagara solicitando crédito al fabricante. El fabricante cobra por concepto de intereses un 20% sobre la
cantidad que se le pague a crédito.
PROGRAMA
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
main()
{
float costpza,numpzas,interesfab,montotot,invprop,Pmobanco,ctofab;
const double ctoint=.20;
printf("valor de cada pieza:");
scanf("%f",&costpza);
printf("cantidad de piezas compradas:");
scanf("%f",&numpzas);
montotot=costpza * numpzas;
if (montotot>500000)
{
invprop=montotot*0.55;
Pmobanco=montotot*0.30;
interesfab=((montotot*.15)*0.20);
ctofab=montotot*.15+interesfab;
}
else//sino es mayor a 500000
{
invprop=montotot*.70;
interesfab=((montotot*.30)*0.20);
ctofab=montotot*0.30+interesfab;
}
printf("montototal de la compra: %.2f\n",montotot);
printf( "inversion efectivo: %.2f \n",invprop);
printf("el banco le prestara: %.2f \n",Pmobanco);
printf("compra a credito: %.2f \n",ctofab);
system("pause");
return 0;
}