1 er informe
Post on 11-Jul-2015
843 Views
Preview:
TRANSCRIPT
ESCUELA DE INGENIERÍA INDUSTRIAL
UNT
1ER
INFORME PROGRAMACION C++
SENTENCIAS BÁSICAS
Probl. 01:
Al principio de un viaje en automóvil, el conductor se asegura de que el tanque de
combustible esté lleno y anota la lectura del cuenta-kilómetros. Al terminar su viaje,
anota la nueva lectura y la cantidad de combustible que se requiere para volver a
llenar el tanque. Editar el programa, que calcula el consumo de combustible (por cada
100 Km.), a partir de esta información.
Codificación:
#include<math.h>
#include<conio.h>
#include<iostream.h>
main () {
int a,b,c,d;
float p;
cout<<"kilometraje registrado ";cin>>a;
cout<<"combustible en tanque lleno(L) ";cin>>b;
cout<<"nuevo kilometraje registrado ";cin>>c;
cout<<" combustible restante en el tanque ";cin>>d;
clrscr();
p=(float)(b-d)/(c-a)*100;
cout<<"el consumo de combustible "<<p<<" (L) por cada 100 km recorrido";
getch () ;
}
Probl. 02:
6. Editar un programa que lea el lado de un cubo y calcule el área lateral y
el volumen del mismo.
Codificación:
#include<math.h>
#include<conio.h>
#include<iostream.h>
main () {
int L, Al, V;
cout<<"ingresar lado del cubo ";cin>>L;
clrscr();
Al=pow(L,2);
V=Al*L;
cout<<"el area lateral es "<<Al<<endl;
cout<<"el volumen es "<< V ;
getch () ;
}
Probl. 03:
7. Editar un programa para calcular el salario bruto semanal de un
empleado, pidiendo por teclado la tarifa que se le paga por hora por su trabajo y el
número de horas normales y extra trabajadas durante la semana. Las horas normales
se pagan según la tarifa estándar y cualquier tiempo extra se paga a 1,5 veces la tarifa
estándar por hora.
Codificación:
#include<math.h>
#include<conio.h>
#include<iostream.h>
main () {
int Hd,He,T;
float S;
cout<<"tarifa por hora ";cin>>T;
cout<<"horas de trabajo estandar ";cin>>Hd;
cout<<"horas extras de trabajo ";cin>>He;
clrscr();
S=(float)Hd*T+He*1.5*T;
cout<<"el salario es "<<S;
getch () ;
}
FUNCIONES ESTANDAR
Probl. 04:
7. Ingresar el lado de la base cuadrangular de la torre Eiffel y la estatura
de un hombre que está observando la torre desde exactamente el centro de uno de los
lados de la base, luego determinar la altura de la torre si dicha persona al mirar la
punta mide e ingresa el ángulo de elevación (probar el programa ingresando una base
que mida 50 metros de lado, una estatura del hombre de 1.80 m y un ángulo de
elevación de 85.4°).
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
main () {
float L, Hh, a;
float Ht;
float pi=4*atan(1.0);
cout<<"ingresar lado de la base de la torre ";cin>>L;
cout<<"ingresar altura del hombre ";cin>>Hh;
cout<<"ingresar angulo de elevacion "; cin>>a;
clrscr();
Ht=(float)L/2*tan(pi*a/180)+Hh;
cout<<"la altura de la torre es "<<Ht;
getch () ;
}
Probl. 05:
8. Un globo aerostático se eleva verticalmente desde el punto P (en el
suelo), su ángulo de elevación desde el punto Q (en el suelo también) situado a 250 m
del punto P, cambia de 23° a 35°. Determine que tanto se eleva el globo durante este
cambio.
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
main () {
float a,x,b,y,V,L;
float pi=4*atan(1.0);
cout<<"longitud del observador al punto de despegue del globo ";cin>>L;
cout<<"ingresar 1er angulo de elevacion hacia el globo "; cin>>a;
cout<<"ingresar 2do angulo de elevacion hacia el globo "; cin>>b;
x=(float)pi*a/180;
y=(float)pi*b/180;
clrscr();
V=(float)(tan(y)-tan(x))*250;
cout<<"varia de la altura del globo "<<V;
getch () ;
}
SENTENCIAS SELECTIVAS
Probl. 06:
9. Dado la hora, minutos y segundos, determinar la nueva hora después de n
segundos.
Codificación:
#include<iostream.h>
#include<conio.h>
#include<time.h>
main () {
int h,m,s,n;
cout<<"ingrese horas, minutos, segundos: ";
cin>>h>>m>>s;
cout<<"ingrese los segundos transcurridos: ";cin>>n;
s=s+n;
while (s>=60) { s = s-60; m=m+1;
while (m>=60) { m=m-60; h=h+1;
while (h>=24) h=h-24;
}
}
cout<<"la hora despues de "<<n<<" segundos sera "<<h<<":"<<m<<":"<<s;
getch();
}
Probl. 07:
13. Realizar un programa que permita realizar la preselección de los integrantes
del equipo de baloncesto, cuyo requisito es tener más de 1.80 m de estatura y pesar
menos de 100 Kg.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
float p,e;
cout<<"ingresar estatura: ";cin>>e;
cout<<"ingresar peso: ";cin>>p;
if (e>1.80 && p<100) cout<<"Ingresa al equipo de baloncesto";
else cout<<"no cumple las condiciones, no queda seleccionado";
getch () ;
}
Probl. 08:
14. Determinar la cantidad de dinero que recibirá un trabajador a la semana por
concepto de las horas extras trabajadas en una empresa. Se sabe que cuando las horas
de trabajo exceden de 40 horas, al resto se consideran horas extras y que éstas se
pagan al doble de una hora normal cuando no exceden de 8; si las horas extras
exceden de 8 se pagan las primeras 8 al doble de lo que se paga por una hora normal y
el resto al triple.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
int h,t,S;
cout<<"ingresar tarifa por hora ";cin>>t;
cout<<"ingresar horas de trabajo semanal ";cin>>h;
clrscr();
if(h<=40) S=h*t;
if(h>40 && h<=48) S=40*t+2*t*(h-40);
if(h>48) S=40*t+8*2*t+3*t*(h-48);
cout<<"el salario semanal sera "<<S<< endl;
getch();
}
Probl. 09:
17. Calcular el promedio de calificaciones de un alumno de la Escuela de
Postgrado. Las dos primeras notas tienen un peso del 30% cada una y la tercera un
peso de 40%. Si el promedio ponderado es mayor o igual a 14 imprimir “Aprobado” y
un mensaje de felicitaciones, de lo contrario reportar “Reprobado” y un mensaje de
aviso. Si el promedio es igual a 20, reportará el mensaje “alumno excelente”. Se desea
imprimir el nombre del alumno, código del curso y el promedio obtenido.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
float p,s,t,N;
char n[20],c[20],Ap[20],Am[20];
gotoxy(5,1);cout<<"ingresar datos de alumno ";
gotoxy(2,3);cout<<" Nombre y Apellidos";
gotoxy(30,3);cin>>n>>Ap>>Am;
gotoxy(2,5);cout<<"ingresar codigo de curso ";
gotoxy(30,5);cin>>c;
gotoxy(2,7);cout<<"1er parcial ";
gotoxy(30,7);cin>>p;
gotoxy(2,9);cout<<"2do parcial ";
gotoxy(30,9);cin>>s;
gotoxy(2,11);cout<<"3ero parcial ";
gotoxy(30,11);cin>>t;
clrscr();
N = (float) 0.3*p+0.3*s+0.4*t;
cout<<"Alunmo: "<<n<<" "<<Ap<<" "<<Am<<endl;
cout<<"codigo de curso: "<<c<<endl;
cout<<"Promedio :"<<N<<endl;
if(N==20) cout<<"excelente alumno \n";
if(N>=14) cout<<"Aprobado";
else cout<<"Reprobado";
getch();
}
Probl. 10:
18. Asignar una letra para representar la calificación de un alumno, las calificaciones son
notas entre 0 y 20; usar los siguientes parámetros: A para calificaciones mayores o iguales a
18, B para calificaciones mayores o iguales a 16, C para calificaciones mayores o iguales a 14, D
para calificaciones mayores o iguales a 12, F para todas las demás calificaciones.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
int N;
do {
cout<<"ingresar calificacion: ";cin>>N;
clrscr();
if (N<12 && N>=0) cout<<"la calificacion es: F ";
if (N<14 && N>=12) cout<<"la calificacion es: D ";
if (N<16 && N>=14) cout<<"la calificacion es: C ";
if (N<18 && N>=16) cout<<"la calificacion es: B ";
if (N<=20 && N>=18) cout<<"la calificacion es: A "; }
while (N<0 || N>20);;
getch();
}
SENTENCIAS REPETITIVAS
Probl. 11:
Calcular el acumulado de las edades de un grupo de N personas siempre y cuando
dichas edades sean mayores a 18 y no pasen los 45.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
int n,e,i,s=0;
cout<<"ingresar numero de persona: ";cin>>n;
clrscr();
gotoxy(2,1);cout<<"ingresar edades: ";
for (i=1;i<=n;i++){
gotoxy(2,4+i); cin>>e;
if (e>18 && e<45)s=s+e;
}
cout<<"\n el acumulado de edades entre 18 y 45 es: "<<s;
getch();
}
Probl. 12:
9. Hacer un programa que solicite un valor entero positivo en base decimal e
imprima su equivalente en base binaria, por ejemplo: 13 en base decimal es
equivalente a 1101 en base binaria.
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
main () {
float m;
int i=0,n;
long int b=0,C;
cout<<"ingrese valor entero positivo base decimal: ";cin>>m;
n=m;
while(n>0){
b=b+pow(10,i)*(n%2);
n=n/2;
i=i+1;}
C=b+n*pow(10,i);
cout<<"el numero en base binomial es: "<<C<<endl;
getch();
}
Probl. 13:
15. Escribir un programa que solicite un valor entero positivo k y en base a ese
valor realice lo siguiente: escribir los números desde 1 hasta el valor k, cada uno tantas
veces como indique su propio valor; y calcule la suma y la multiplicación de ellos. Por
ejemplo, si k = 4, debe obtenerse la salida:
1= 1, 1 = 1
2 + 2 = 4, 2 x 2 = 4
3 + 3 + 3 = 9, 3 x 3 x 3 = 27
4 + 4 + 4 + 4 = 16, 4 x 4 x 4 x 4 = 256
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
main () {
int k,i,s,j;
long int p;
cout<<"ingresar un valor k: ";cin>>k;
clrscr();
cout<<" sumas ";
for(j=1;j<=k;j++){
s=pow(j,2);
for (i=1;i<=j;i++){
gotoxy(1+2*i,3+j);cout<<j;}
gotoxy(5+2*j,3+j);cout<<"="<<s;}
getch();
clrscr();
cout<<" productos ";
for(j=1;j<=k;j++){
p=pow(j,j);
for (i=1;i<=j;i++){
gotoxy(1+2*i,3+j);cout<<j;}
gotoxy(5+2*j,3+j);cout<<"="<<p;}
getch () ;
}
Probl. 14:
16. Implemente el siguiente juego: el programa seleccionará un número aleatorio
entre 0 y 100 y el jugador debe acertarlo. En cada intento el jugador propondrá una
solución y se le informará si el número a acertar es menor o mayor que el propuesto.
El juego termina cuando se acierte la cifra o haya realizado un máximo de 12 intentos
en cuyo caso se le mostrará al jugador la calificación obtenida según la siguiente tabla:
Número de intentos Categoría
1-3
4-6
Suertudo
Genio
7
8
>= 9
No está mal
Se puede mejorar
Que pasa amigo
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
main () {
int n,r,i;
randomize();
r=rand()%101;
for(i=1;i<=12;i++){
cout<<"\n ingrese un numero ";cin>>n;
clrscr();
if(r>n)cout<<"el numero aleatorio es mayor\n\n";
if(r<n)cout<<"el numero aleatorio es menor\n\n";
if(r==n) {
if(i>=1 && i<=3) cout<<" suertudo ";
if(i>=4 && i<=6) cout<<" genio ";
if(i==7) cout<<" no esta mal ";
if(i==8) cout<<" se puede mejorar ";
if(i>=9 && i<=12) cout<<" ¡que pasa amigo! "; goto etiqueta;
}
}
etiqueta:
getch () ;
}
Probl. 15:
18. A una fiesta asistieron personas de diferentes edades y sexos. Hacer un
programa en el cual se ingrese las edades y sexos de las personas? Calcular:
Cuantas personas asistieron a la fiesta
Cuantos hombres y cuantas mujeres
Promedio de edades por sexo
La edad de la persona más joven que asistió
No se permiten menores de edad a la fiesta
Ingresar datos hasta que se ingrese una edad a cero
Codificación:
#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
main () {
int M,E,F,i=0,c;
int Sf,Sm,menor=10000;
float Pm,Pf;
char sexo[3][3]={'m','f'};
char sex[5];
cout<<"ingrese datos \n";
cout<<" edad sexo [ m , f ]\n";
do {
gotoxy(2,3+2*i);cin>>E;
gotoxy(10,3+2*i);gets(sex);
i=i+1 ;
if(E>=18){
F=0; Sf=0; M=0;Sm=0;
if(strcmp(sexo[1],sex)==0) M=M+1; Sm=Sm+E;
if(strcmp(sexo[2],sex)==0) F=F+1; Sf=Sf+E;
if(E<menor) menor=E; }
else cout<<"no se permiten menores de edad";
}
while(E!=0);
clrscr();
c=F+M;
cout<<"asistieron "<<c<<" personas ";
cout<<M<<" hombres y "<<F<<" mujeres";
getch();
clrscr();
Pm = (float)Sm/M;
Pf = (float) Sf/F;
gotoxy(10,1);cout<<" promedio de edades por sexo \n";
gotoxy(1,3);cout<<"promedio en hombres";
gotoxy(1,5);cout<<Pm;
gotoxy(25,3);cout<<"promedio en mujeres";
gotoxy(25,5);cout<<Pf;
getch();
clrscr();
cout<<"edad del mas joven en la fiesta "<<menor;
getch();
}
ARREGLOS
Probl. 16:
2. Elaborar un programa que sume los primeros 10 números enteros guardados
en un vector que tiene por tamaño a un valor mayor a 20. Se desea imprimir la lista de
números sumados y al final la suma de los mismos.
Codificación:
#include<iostream.h>
#include<conio.h>
main () {
int i, x[20], s=0;
cout<<"ingresar numeros para guardar en vector ";
for (i=1;i<=20;i++) {
gotoxy (3,2+i);cin>>x[i]; }
clrscr();
for (i=1;i<=20;i++) {
s=s+x[i]; }
for(i=1;i<=10;i++) {
gotoxy(3,1+i);cout<<x[i]<<endl; }
cout<<"\n\nla suma de los 10 primeros numeros es: "<<s;
getch();
}
Probl. 17:
11. Hacer un programa que calcule la nota de N alumnos en una prueba de 10
preguntas de opciones múltiples ('A', ‘B’, ‘C’, ‘D’ o 'E'). Cada pregunta correcta se
evalúa con dos puntos. Se deberá inicializar un arreglo con las respuestas correctas. El
programa debe mostrar el nombre, el arreglo de respuestas correctas y el arreglo de
respuestas del alumno y la nota de los alumnos.
Codificación:
#include<iostream.h>
#include<conio.h>
main(){
int i,N,n[2],j;
char x[10]={'a','b','e','a','d','c','b','a','e','b'};
char y[10][10],A[20][20];
cout<<"ingrese el numero de alumnos: ";cin>>N;
clrscr();
for(j=1;j<=N;j++){
cout<<" nombre del alumno: ";cin>>A[j];
cout<<"\n ingresar respuestas del alumno \n";
for(i=1;i<=10;i++) cin>>y[j][i];
clrscr(); }
for(j=1;j<=N;j++){
gotoxy(1+15*j,1);cout<<A[j];
for(i=1;i<=10;i++){
gotoxy(1+15*j,1+i);cout<<"[";gotoxy(9+15*j,1+i);cout<<"]";
gotoxy(5+15*j,1+i); cout<<y[j][i];}}
for(j=1;j<=N;j++){
n[j]=0;
for(i=1;i<=10;i++){
if(x[i]=y[j][i]) n[j]=n[j]+2; }
gotoxy(1+15*j,15);cout<<" nota "<<n[j]; }
getch();
}
top related