You are on page 1of 105

Programacin C++ Maria Elena Ruiz Rivera

1.
Lea un numero entero y determine si el numero es positivo ,negativo o
nulo Para cada caso escriba un mensaje .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Num;
cout<<"Ingrese el numero : "<<endl;
cin>>Num;
if(Num>0){
cout<<"Es positivo : "<<Num<<endl;
}else{
if(Num<0)
cout<<"Es negativo : "<<Num<<endl;
else
cout<<Num<<" Es nulo "<<endl; }
return 0;
system("PAUSE");
}

Ingrese el numero : 56
Es positivo : 56
Press any key to continue

2.
Imagnate que estas de paso por una provincia , y sus limites de
velocidad son :
-Menor a 60 Km/h Velocidad permitida
-De 60 a 65 Km/h Peligro , en el limite de velocidad
-Mas de 65 Km/h Ha superado los limites de velocidad permitida
Realice un programa que lea la velocidad y escriba un mensaje en cada caso de la
velocidad y la multa.
Debe tener en cuenta , que si la velocidad es mayor a 65 Km./h , se le aplicara una
multa de :
-65 a 75 Km./h S/.300.00
-76 a 85 Km./h S/.750.00
-86 a 100 Km./h S/.1500.00
-Mas de 100 Km./h S/.3700.00

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Vel;
cout<<"Ingrese la velocidad : "<<endl;
cin>>Vel ;
if(Vel<60){
cout<<"Velocidad permitida "<<endl;
cout<<"No paga multa "<<endl;
}else
if(Vel<=65){
cout<<"Peligro en el limite de velocidad"<<endl;
cout<<"No paga multa "<<endl;
}else
if(Vel<=75){

1
Programacin C++ Maria Elena Ruiz Rivera

cout<<"Ha superado los lmt. de vel. permitida"<<endl;


cout<<"La multa a pagar es de S/. 300.00 "<<endl;
}else
if(Vel<=85){
cout<<"Ha superado los lmt. de vel. permitida"<<endl;
cout<<"La multa a pagar es de S/. 750.00 "<<endl;
}else
if(Vel<=100){
cout<<"Ha superado los lmt. de vel. permitida"<<endl;
cout<<"La multa a pagar es de S/. 1500.00 "<<endl;
}else{
cout<<"Ha superado los lmt. de vel. permitida"<<endl;
cout<<"La multa a pagar es de S/. 3700.00 "<<endl;}
return 0;
system("PAUSE");
}

Ingrese la velocidad :
75
Ha superado los lmt. de vel. permitida
La multa a pagar es de S/. 300.00
Press any key to continue

3.
Una compaa alquila autos de 3 clases : chicos , medianos y grandes .El
alquiler por da de los autos es el siguiente :
Autos chicos $15 por da
Autos medianos $20 por da
Autos grandes $30 por da
Adems la compaa cobra 20 ctvos. de $ por Km. recorrido en auto chico ,30 ctvos.
de $ por Km. recorrido en el auto mediano y 40 ctvos. de $ por Km. recorrido en
auto grande .
Lea el tipo de auto alquilado ,# de das alquilado y los Km. recorridos ,y valide ,para
que sino se ingresa cualquier de los tres tipos de autos ,imprima un mensaje
diciendo que se ingrese bien el tipo de auto .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Dia,Kilometros,Monto ;
char Tipo;
cout<<"Ingrese la inicial del tipo de auto : "<<endl;
cin>>Tipo ;
cout<<"Ingrese el numero de dias: "<<endl;
cin>>Dia;
cout<<"Ingrese el numero de kilometros : "<<endl;
cin>>Kilometros ;
Monto=0;
if(Tipo='c')
Monto=(15*Dia)+(20*Kilometros);
else{
if(Tipo='m')
Monto=(20*Dia)+(30*Kilometros);
else
if(Tipo='g')

2
Programacin C++ Maria Elena Ruiz Rivera

Monto=(30*Dia)+(40*Kilometros);
else
cout<<"Ingrese bien el tipo de auto"<<endl; }
cout<<"El monto del alquiler es : "<<Monto<<endl;
return 0;
system("PAUSE");
}

Ingrese la inicial del tipo de auto :


G
Ingrese el numero de dias:
15
Ingrese el numero de kilometros :
56
El monto del alquiler es : 1345
Press any key to continue

4.
Determine el mayor de tres nmeros enteros .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int A,B,C;
cout<<"Ingrese el primer numero : "<<endl;
cin>>A ;
cout<<"Ingrese el segundo numero : "<<endl;
cin>>B;
cout<<"Ingrese el tercer numero : "<<endl;
cin>>C;
if(A>B)
if(A>C)
cout<<"El mayor es : "<<A<<endl;
else
cout<<"El mayor es : "<<C<<endl;
else
if(B>C)
cout<<"El mayor es : "<<B<<endl;
else
cout<<"El mayor es : "<<C<<endl;
return 0;
system("PAUSE");
}

Ingrese el primer numero :


45
Ingrese el segundo numero :
62
Ingrese el tercer numero :
8
El mayor es : 62
Press any key to continue

5.
Calcule las tres Alturas de un triangulo cualquiera en funcin de sus tres
lados .
Semiperimetro

3
Programacin C++ Maria Elena Ruiz Rivera

P=(a+b+c
)/2
Teorema de Heron

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<math.h>
int main(){
int A,B,C;
double h1,h2,h3,P,D;
cout<<"Ingrese el primer lado : ";
cin>>A ;
cout<<"Ingrese el segundo lado: ";
cin>>B;
cout<<"Ingrese el tercer lado : ";
cin>>C;
P=(A+B+C)/2;
D= P*(P-A)*(P-B)*(P-C);
if(D>0){
h1=2*sqrt(D)/A;
h2=2*sqrt(D)/B;
h3=2*sqrt(D)/C;
cout<<"Las alturas del triangulo son : "<<endl;
cout<<h1<<" ; "<<h2<<" y "<<h3<<endl;
}else
cout<<"Los lados ingresados no determinan un triangulo "<<endl;
return 0;
system("PAUSE");
}

Ingrese el primer lado : 15


Ingrese el segundo lado: 12
Ingrese el tercer lado : 9
Las alturas del triangulo son :
7.2 ; 9 y 12
Press any key to continue

6.
Calcule el rea , la longitud y el radio de la circunferencia circunscrita a
un triangulo cualquiera .Ingresan los lados .
Longitud
L=2
r
Area
Radio de la circunferencia

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<math.h>
#define PI 3.1416
int main(){
int A,B,C;
double Radio ,Longitud , Area,P,D;

4
Programacin C++ Maria Elena Ruiz Rivera

cout<<"Ingrese el primer lado : "<<endl;


cin>>A ;
cout<<"Ingrese el segundo lado: "<<endl;
cin>>B;
cout<<"Ingrese el tercer lado : "<<endl;
cin>>C;
P=(A+B+C)/2;
D= P*(P-A)*(P-B)*(P-C);
if(D>0){
Radio=(A*B*C)/(4*sqrt(D));
Longitud=2*(PI)*Radio;
Area =PI*(Radio)*Radio;
}else {
cout<<"Ingrese nuevamente los lados "<<endl; }
cout<<"\nEl Radio de la circunferencia es :"<<Radio<<endl;
cout<<"La longitud la circunferencia es :"<<Longitud<<endl;
cout<<"El Area de la circunferencia es :"<<Area<<endl;
return 0;
system("PAUSE");
}

Ingrese el primer lado :


9
Ingrese el segundo lado:
15
Ingrese el tercer lado :
12
El Radio de la circunferencia es :7.5
La longitud la circunferencia es :47.124
El Area de la circunferencia es :176.715
Press any key to continue

7.
Dado el sueldo de un trabajador ,calcule e imprima el sueldo ,el aumento
y el Nuevo sueldo ,sabiendo que si el sueldo actual es inferior a S/. 1000
recibir un aumento del 15% y el 10% en caso contrario .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<math.h>
#define PI 3.1416
int main(){
int sueldo;
double aumento,nuevo_s;
cout<<"Ingrese el sueldo del trabajador : ";
cin>>sueldo ;
if(sueldo<1000){
aumento=(sueldo*15)/100;
nuevo_s=sueldo+aumento;
}else{
aumento=(sueldo*10)/100;
nuevo_s=sueldo+aumento; }
cout<<"El nuevo sueldo del trabajador es : "<<nuevo_s<<endl;
cout<<"El aumento del trabajador es : "<<aumento<<endl;
return 0;
system("PAUSE");
}

5
Programacin C++ Maria Elena Ruiz Rivera

Ingrese el sueldo del trabajador : 150


El nuevo sueldo del trabajador es : 172
El aumento del trabajador es : 22
Press any key to continue

8.
Por estos das el Ejercito Peruano ,esta realizando la Leva ,para
incorporar nuevos reclutas a sus filas .Para ello ,El ultimo fin de semana
levo un buen numero de jvenes varones .Los requisitos para se enrolado
son :edad mxima 21 aos, estatura mnima 1.58 mt. Y peso mximo ,
90 Kilos .
El programa debe leer la identificacin ,edad ,estatura y peso de los posibles
reclutas. Verifique que cada uno de ellos cumpla con las condiciones de
enrolamiento ;si es as ,imprimase la identificacin ,edad ,estatura y peso ;como
tambin un mensaje de bienvenida a nuestro Glorioso Ejercito.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int DNI,edad,peso;
double estatura;
cout<<"Ingese el numero de DNI : "<<endl;
cin>>DNI;
cout<<"Ingese edad : "<<endl;
cin>>edad;
cout<<"Ingese la estatura : "<<endl;
cin>>estatura;
cout<<"Ingese el peso : "<<endl;
cin>>peso;
if(18<=edad && edad<=21){
if(estatura>=1.58){
if(peso<=90){
cout<<"\n Los Datos del Recluta Son : "<<endl;
cout<<"DNI : "<<DNI<<endl;
cout<<"Edad: "<<edad<<endl;
cout<<"Estatura : "<<estatura<<endl;
cout<<"Peso : "<<peso<<endl;
cout<< "Bienvenido al Ejercito Peruano " <<endl;
}else
cout<<"No apto por el peso "<<endl;
}else
cout<<"No apto por la estatura "<<endl;
}else
cout<<"No apto por la edad "<<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de DNI :


43106480
Ingrese edad :
20
Ingrese la estatura :
1.78
Ingrese el peso :
56
Los Datos del Recluta Son :
DNI : 43106480

6
Programacin C++ Maria Elena Ruiz Rivera

Edad: 20
Estatura : 1.78
Peso : 56
Bienvenido al Ejercito Peruano
Press any key to continue

9.
Un Molino agrcola produce alimentos para vacas .Esto se hace
mezclando los siguientes ingredientes principales : maz , piedra caliza
,frjol de soya y comida de pescado, en forma equitativa .
Se hace un pedido al molino de una cierta cantidad de toneladas (mtricas) de
alimento para vacas ,teniendo en cuenta que el molino produce como mximo 100
toneladas de alimento.
Se desea obtener el total a pagar por dicho pedido, si se sabe que el precio por
cada Kilogramo de ingrediente es $ 0.20, $ 0.12, $ 0.24, $ 0.14 respectivamente.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Cant_ton,Kilog;
double Ing_maiz,Ing_piedra_c,Kilo_ton, Ing_c_pes,Ing_frijol,total_pag_alimento;
cout<<"Ingrese la cantidad de pedido en toneladas : "<<endl;
cin>>Cant_ton;
Kilog=1000;
if(Cant_ton<=100){
Kilo_ton=Cant_ton*Kilog;
Ing_maiz=(Kilo_ton/4)*0.20;
Ing_piedra_c=(Kilo_ton/4)*0.12;
Ing_c_pes=(Kilo_ton/4)*0.14;
Ing_frijol=(Kilo_ton/4)*0.24;
total_pag_alimento=Ing_maiz+Ing_piedra_c+ Ing_c_pes+Ing_frijol;
cout<<"El total de dicho pedido es : "<< total_pag_alimento<<endl;
}else
cout<<"La cantidad de pedido supera la cantidad de produccion del molino
"<<endl;
return 0;
system("PAUSE");
}

Ingrese la cantidad de pedido en toneladas :


50
El total de dicho pedido es : 8750
Press any key to continue

10.
En una llantera se ha establecido una promocin de las llantas marca
GOODYEAR, dicha promocin consiste en lo siguiente :
Si la compran menos de cinco llantas el precio es de $150 cada una , de $120 si se
compran de 5 a 10 y de $90 si se compran mas de 10 .
Obtener la cantidad de dinero que pagara por cada una de las llantas que compran
y el pago general por el total de la compra.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){

7
Programacin C++ Maria Elena Ruiz Rivera

int C_comp;
double Monto_llan,Valor_comp;
cout<<"Ingrese la cantidad de compra : "<<endl;
cin>>C_comp;
if(C_comp<5){
Monto_llan=150;
Valor_comp=C_comp*Monto_llan;
}else
if(C_comp>=10){
Monto_llan=120;
Valor_comp=C_comp*Monto_llan;
}else{
Monto_llan=90;
Valor_comp=C_comp*Monto_llan;}
cout<<"Se paga por cada llanta : "<<Monto_llan<<endl;
cout<<"El pago general por el total de la compra es : "<<Valor_comp<<endl;
return 0;
system("PAUSE");
}

Ingrese la cantidad de compra :


156
Se paga por cada llanta : 120
El pago general por el total de la compra es : 18720
Press any key to continue

11.
Escriba un programa que utilice estructuras condicionales y ciclos for
para que despliegue patrones ,de manera independiente uno de otro
.Todas las (A) deben imprimirse mediante una sola instruccin de la
forma cout<<`A` , cout<<endl
y cout<< .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int lineas,i,j;
cout<<"Ingrese el numero de lineas :"<<endl;
cin>>lineas;
for( i=0;i<=lineas-1 ;i++){
for( j=1;j<=lineas ;j++){
if(i>=j)
cout<<" ";
else
cout<<"A"; }
cout<<endl; }
return 0;
system("PAUSE");
}

Ingrese el numero de lineas :


10
AAAAAAAAAA
AAAAAAAAA
AAAAAAAA
AAAAAAA
AAAAAA
AAAAA

8
Programacin C++ Maria Elena Ruiz Rivera

AAAA
AAA
AA
A
Press any key to continue

12.
Escriba un programa que lea el tamao del lado de un triangulo issceles
y que despus despliegue el contorno y el rea del triangulo de ese
tamao , con (& ) y espacios en blancos .Su programa debe funcionar
para tringulos de todos los tamaos, entre 1 y 20.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int lineas,i,j;
cout<<"Ingrese la dimension del lado entre 0 y 20 :"<<endl;
cin>>lineas;
if(0<=lineas && lineas <=20){
for( i=1;i<=lineas ;i++){
for( j=1;j<=lineas ;j++){
if(j>=i)
cout<<"& ";
else
cout<<" "; }
cout<<endl;}
}else
cout<<"El numero debe estar entre 0 y 20 "<<endl;
return 0;
system("PAUSE");
}

Ingrese la dimension del lado entre 0 y 20 :


10
&&&&&&&&&&
&&&&&&&&&
&&&&&&&&
&&&&&&&
&&&&&&
&&&&&
&&&&
&&&
&&
&
Press any key to continue

//Instruccion for
13.
Calcule la siguiente secuencia :
3 +5 +72+...+N2
2 2

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int N,suma,I;
cout<<"Ingrese el valor de N : "<<endl;
cin>>N;

9
Programacin C++ Maria Elena Ruiz Rivera

suma=0;
for( I=0;I<N;I++)
suma=suma+(2*I+1)*(2*I+1);
cout<<"El resultado es : "<<suma<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N :
8
El resultado es : 680
Press any key to continue

14.
Se tiene N calificaciones de un grupo de alumnos que se presentaron a
un examen de matemticas .Calcule e imprima cuantas calificaciones
hay en cada uno de los siguientes rangos :
-0...5
-6...10
-11...15
-16...20

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int N_cal,cal,rango1,rango2,rango3,rango4,I;
cout<<"Ingrese el numero de calificacines : "<<endl;
cin>>N_cal;
rango1=0;
rango2=0;
rango3=0;
rango4=0;
for( I=0;I<N_cal;I++){
cout<<"Ingrese la calificacion: "<<endl;
cin>>cal;
if(cal>=0)
if(cal<=5)
rango1=rango1+1;
else
if(cal<=10)
rango2=rango2+1;
else
if(cal<=15)
rango3=rango3+1;
else
if(cal<=20)
rango4=rango4+1;
else
cout<<"Ingrese una nueva calificacion"<<endl;}
cout<<"\nEl numero de calificaciones en el rango1 es : "<<rango1<<endl;
cout<<"El numero de calificaciones en el rango2 es : "<<rango2<<endl;
cout<<"El numero de calificaciones en el rango3 es : "<<rango3<<endl;
cout<<"El numero de calificaciones en el rango4 es : "<<rango4<<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de calificacines :

10
Programacin C++ Maria Elena Ruiz Rivera

6
Ingrese la calificacion:
15
Ingrese la calificacion:
13
Ingrese la calificacion:
69
Ingrese una nueva calificacion
Ingrese la calificacion:
14
Ingrese la calificacion:
10
Ingrese la calificacion:
El numero de calificaciones en el rango1 es : 1
El numero de calificaciones en el rango2 es : 1
El numero de calificaciones en el rango3 es : 3
El numero de calificaciones en el rango4 es : 0
Press any key to continue

15.
Sume independientemente los nmeros pares y los nmeros impares de
los nmeros comprendidos entre 1 y 100 .Ambos inclusive.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Par,Impar,I;
Par=0;
Impar=0;
for( I=1;I<100;I++){
if(I%2==0)
Par=Par+I;
else
Impar=Impar+I;}
cout<<"\nSuma de Pares es : "<<Par<<endl;
cout<<"Suma de Impares es: "<<Impar<<endl;
return 0;
system("PAUSE");
}

Suma de Pares es : 2450


Suma de Impares es: 2500
Press any key to continue

//correcciones de . y , y justificado
Determine si un numero es perfecto. Un nmero
16.

es perfecto cuando la suma de todos los


nmeros menores y divisibles por l, es igual al
mismo nmero (incluido el uno y excluido el
propio nmero).
Por ejemplo:
28 es un nmero perfecto porque 28=1+2+4+7+14

11
Programacin C++ Maria Elena Ruiz Rivera

6 es un numero perfecto porque 6 = 1+2+3


Programa en C++

12
Programacin C++ Maria Elena Ruiz Rivera

#include<iostream.h>
#include<stdlib.h>
int main()
{
int num,I,suma;
cout<<"Ingrese un numero : ";
cin>>num;
suma=1;
for( I=2;I<=num/2;I++)
{
if(num%I==0)
suma=suma+I;
}
if(suma==num)
{
cout<<"\n"<<num<<" es
perfecto"<<endl;
}
else
{
cout<<"\n"<<num<<" no es perfecto
"<<endl;
}
return 0;
system("PAUSE");
}

Ingrese un numero : 28
28 es perfecto
Press any key to continue
17.
Calcule el resultado de la siguiente serie :
1+1/2+1/3+1/4+...+1/N

Programa en C++

13
Programacin C++ Maria Elena Ruiz Rivera

#include<iostream.h>
#include<stdlib.h>
int main(){
int N;
double suma,I;
cout<<"Ingrese el valor de N : "<<endl;
cin>>N;
suma=0.0;
for( I=1;I<=N;I++){
suma=suma+(1/I);
}
cout<<"\nEl resultado es : "<<suma<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N :
5
El resultado es : 2.28333
Press any key to continue

18.
Dado el ingreso de : La tasa , capital, nmero de das , nombre de mes
.Calcule el inters simple y el Inters acumulado diario generado por el
capital y dicha tasa .Como salida debe dar el nuevo capital , el inters
simple y el inters acumulado.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double Capital,Interes,Inte_acumu,tasa,I,dias,meses;
cout<<"Ingrese la tasa: "<<endl;
cin>>tasa;
cout<<"Ingrese el Capital: "<<endl;
cin>>Capital;
cout<<"Ingrese el numero de dias: "<<endl;
cin>>dias;
cout<<"Ingrese el numeros de meses: "<<endl;
cin>>meses;
Interes=0;
Inte_acumu=0;
for( I=1;I<dias;I++){
Interes=Capital*(tasa/100);
Inte_acumu=Inte_acumu+Interes;
Capital=Capital+Interes;
}
cout<<"\nEl Capital es : "<<Capital<<endl;
cout<<"\nEl Interes simple es : "<<Interes<<endl;
cout<<"\nEl Interes acumulado es : "<<Inte_acumu<<endl;
return 0;
system("PAUSE");
}

Ingrese la tasa:
15
Ingrese el Capital:
250
Ingrese el numero de dias:

14
Programacin C++ Maria Elena Ruiz Rivera

30
Ingrese el numeros de meses:
6
El Capital es : 14393.9
El Interes simple es : 1877.46
El Interes acumulado es : 14143.9
Press any key to continue
19.
1/21+2/22+3/23++N/2N

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double suma,potencia,I,N;
cout<<"Ingrese el valor de N: "<<endl;
cin>>N;
suma=0;
potencia=1;
for( I=1;I<N;I++){
potencia=potencia*2;
suma=suma+(I/potencia);}
cout<<"\nEl resultado de la serie es : "<<suma<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N:
6
El resultado de la serie es : 1.78125
Press any key to continue

20.
En un estudio sobre la contaminacin del aire efectuado por una estacin
experimental , las siguientes cantidades de benceno soluble suspendido
en materia orgnica (en microorganismos por metro cbico) fueron
obtenidos en 6 diferentes muestras de aire 2.2 ; 1.8 ; 3.1 ;2.0;2.1;1.2 .Se
desea obtener la desviacin estndar.
Formula de
Desviacin para una muestra
X I = Valor muestra
X = El promedio de las 6 muestras
N = Cantidad de muestras

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<math.h>
int main(){
double suma,prom,I,Desv,muestra,temp;
suma=0;
for( I=1;I<=6;I++){
cout<<"Ingrese una de las muestras : "<<endl;
cin>>muestra;
suma=suma+muestra; }
prom=suma/6;
temp=(sqrt(2.2-prom)+sqrt(1.8-prom)+sqrt(3.1-prom)+sqrt(2.0-prom)+sqrt(1.2-
prom))/5;

15
Programacin C++ Maria Elena Ruiz Rivera

Desv=sqrt(temp);
cout<<"\nLa desviacion tomada de las 6 muestras es : "<<Desv<<endl;
return 0;
system("PAUSE");
}

Ingrese una de las muestras :


0.2
Ingrese una de las muestras :
0.3
Ingrese una de las muestras :
0.1
Ingrese una de las muestras :
0.5
Ingrese una de las muestras :
0.35
Ingrese una de las muestras :
0.12
La desviacin tomada de las 6 muestras es : 1.1493
Press any key to continue

21.
La empresa de transporte Angamos S.A. realizar una revisin tcnica de
sus unidades vehiculares ,dicha revisin servir para verificar el estado
de conservacin de dichos vehculos.
Los estados son: bueno, regular y ,malo.
Imprime el total de vehculos y el total de vehculos por estado de conservacin
.Debe leer el estado y la placa , y consistenciar para que si ingresa la placa
RO2378 ,escriba un mensaje diciendo Unidad con orden de captura.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<math.h>
int main(){
int N,placa,conser,C1,C2,C3,T,I;
cout<<"Ingrese los N vehiculos : "<<endl;
cin>>N;
cout<<"Ingrese 1 si el vehiculo esta en buen estado ";
cout<<"2 si el vehiculo esta en estado "<<endl;
cout<<"regular y cualquien numero si esta en mal estado . "<<endl;
C1=0;
C2=0;
C3=0;
for( I=1;I<=N;I++){
cout<<"Ingrese placa : "<<endl;
cin>>placa;
if(placa!=2378){
cout<<"Ingrese estado de conservacion del vehiculo: "<<endl;
cin>>conser;
if(conser==1)
C1=C1+1;
else
if(conser==2)
C2=C2+1;
else

16
Programacin C++ Maria Elena Ruiz Rivera

C3=C3+1;
}else
cout<<"Unidad con orden de captura"<<endl;
}

T=C1+C2+C3;
cout<<"\nEl total de vehiculos es : "<<T<<endl;
cout<<"El total de vehiculos en buen estado es : "<<C1<<endl;
cout<<"El total de vehiculos en estado regular es : "<<C2<<endl;
cout<<"El total de vehiculos en mal estado es : "<<C3<<endl;
return 0;
system("PAUSE");
}

Ingrese los N vehiculos :


5
Ingrese 1 si el vehiculo esta en buen estado 2 si el vehiculo esta en estado
regular y cualquier numero si esta en mal estado .
Ingrese placa :
1425
Ingrese estado de conservacion del vehiculo:
1
Ingrese placa :
1456
Ingrese estado de conservacion del vehiculo:
2
Ingrese placa :
2378
Unidad con orden de captura
Ingrese placa :
1894
Ingrese estado de conservacion del vehiculo:
6
Ingrese placa :
1564
Ingrese estado de conservacion del vehiculo:
2
El total de vehiculos es : 4
El total de vehiculos en buen estado es : 1
El total de vehiculos en estado regular es : 2
El total de vehiculos en mal estado es : 1
Press any key to continue

22.
Para un grupo de alumnos que llevan el curso de Mat. II ,pida el ingreso
de 5 notas y valide para que las notas ingresadas, sean mayor que cero y
menor o igual que 20 .
Obtener el promedio de sus 5 notas por cada alumno y el promedio general de los N
alumnos.

Programa en C++

#include <iostream.h>
#include <stdlib.h>
int main(){
double Suma_notas,nota, promedio,Suma_prom,Prom_gen,Num_alum,I,J;
cout<<"Ingrese el numero de alumnos : "<<endl;
cin>>Num_alum;

17
Programacin C++ Maria Elena Ruiz Rivera

Suma_prom=0;
for(I=1 ;I<=Num_alum;I++){
Suma_notas=0;
for(J=1 ;J<6;J++){
cout<<"Ingrese nota : "<<J<<endl;
cin>>nota;
if(0<=nota && nota<=20)
Suma_notas=Suma_notas+nota;
}
promedio=Suma_notas/5;
Suma_prom=Suma_prom+promedio;
cout<<"El promedio del alumno es :"<<promedio<<endl;
}
Prom_gen=Suma_prom/Num_alum;
cout<<"El promedio general de los "<< Num_alum <<" alumnos
es :"<<Prom_gen<<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de alumnos :


2
Ingrese nota : 1
14
Ingrese nota : 2
15
Ingrese nota : 3
16
Ingrese nota : 4
14
Ingrese nota : 5
15
El promedio del alumno es :14.8
Ingrese nota : 1
14
Ingrese nota : 2
10
Ingrese nota : 3
11
Ingrese nota : 4
10
Ingrese nota : 5
12
El promedio del alumno es :11.4
El promedio general de los 2 alumnos es :13.1
Press any key to continue

23.
Escriba un programa que utilice estructuras for para que despliegue patrones
,de manera independiente uno de bajo de otro. Utilice ciclos for para generar los
patrones. Todos los (&) deben imprimirse mediante una sola instruccin de la
forma cout<<`&`.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int i,j,lineas;
cout<<"Ingrese el numero de lineas :"<<endl;

18
Programacin C++ Maria Elena Ruiz Rivera

cin>>lineas;
for(i=0;i<=lineas;i++){
for(j =1 ;j<=i;j++){
cout<<"&";}
cout<<endl;
}
return 0;
system("PAUSE");
}

Ingrese el numero de lineas :


10

&
&&
&&&
&&&&
&&&&&
&&&&&&
&&&&&&&
&&&&&&&&
&&&&&&&&&
&&&&&&&&&&
Press any key to continue

24.
Escriba un programa que lea el tamao del lado de un cuadrado y que
despus despliegue el contorno de un cuadrado de ese tamao , con
asteriscos y espacios en blancos .Su programa debe funcionar para
cuadrados de todos los tamaos , entre 1 y 20.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int j,i,lados;
cout<<"Ingrese la dimension del lado :"<<endl;
cin>>lados;
if(0<=lados && lados <=20){
for(i=1;i<=lados;i++)
cout<<"*";
cout<<endl;
for(i=1;i<=lados-2;i++){
cout<<"*";
for(j=1;j<=lados-2;j++)
cout<<" ";
cout<<"*"<<endl ;}
for(i=1;i<=lados;i++)
cout<<"*";
}else
cout<<"El numero ingresado no esta en el rango [0-20]"<<endl;
cout<<endl;
return 0;
system("PAUSE");
}

Ingrese la dimension del lado :


10

19
Programacin C++ Maria Elena Ruiz Rivera

**********
* *
* *
* *
* *
* *
* *
* *
* *
* * * * * * * * **
Press any key to continue

//while
25.
Calcule la suma de los nmeros pares comprendidos entre 10 y 50.

Programa en C++

#include <iostream.h>
#include <stdlib.h>
int main(){
int Suma,Num;
Suma=0;
Num=12;
while(Num<50){
if(Num %2==0)
Suma=Suma+Num;
else
cout<<"No es un numero par "<<endl;
Num=Num+2;
}
cout<<"\n12+14+16+...+48 "<<endl;
cout<<"La suma de # pares es : "<<Suma<<endl;
return 0;
system("PAUSE");
}

12+14+16+...+48
La suma de # pares es : 570
Press any key to continue

26.
Dado como datos N nmeros enteros , determine cuntos de ellos son
pares y cuntos son impares.

Programa en C++

#include <iostream.h>
#include <stdlib.h>
int main(){
int Contpar,Contimpar,N,Num,R;
cout<<"Ingrese el valor de N : "<<endl;
cin>>N;
Contpar=0;
Contimpar=0;
R=1;
while(R<=N){
cout<<"Ingrese el numero: "<<R<<endl;
cin>>Num;
if(Num %2==0)

20
Programacin C++ Maria Elena Ruiz Rivera

Contpar= Contpar+1;
else
Contimpar= Contimpar+1;
R=R+1;
}
cout<<"\nLa cantidad de # pares es :"<<Contpar<<endl;
cout<<"La cantidad de # impares es : "<<Contimpar<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N :
6
Ingrese el numero 1 es :
15
Ingrese el numero 2 es :
23
Ingrese el numero 3 es :
28
Ingrese el numero 4 es :
24
Ingrese el numero 5 es :
56
Ingrese el numero 6 es :
24
La cantidad de # pares es :4
La cantidad de # impares es : 2
Press any key to continue

27.
En una encuesta de hogares se consideran los siguientes datos :
cdigo del hogar y el tipo de vivienda , ambos numricos .El tipo de vivienda es :
1. Vivienda propia
2. Vivienda alquilada
3. Vivienda prestada
Obtener e imprimir el total de viviendas por tipo de vivienda .Los datos son ledos
desde el teclado y para finalizar el proceso se leer un cdigo con el nmero nueve
(9).

Programa en C++

#include <iostream.h>
#include <stdlib.h>
int main(){
int total,Cont_va,Cont_vpro,Cont_vpre,Tipo,Codigo;
cout<< "El tipo de vivienda es :"<<endl;
cout<< "1.) Vivienda propia"<<endl;
cout<< "2.) Vivienda alquilada"<<endl;
cout<< "3.) Vivienda prestada"<<endl;
cout<<"Ingrese el Codigo : "<<endl;
cin>>Codigo;
Cont_va=0;

Cont_vpro=0;
Cont_vpre=0;
while(Codigo!=9){
cout<<"Ingrese el tipo de vivienda : "<<endl;
cin>>Tipo;

21
Programacin C++ Maria Elena Ruiz Rivera

if(Tipo ==1)
Cont_vpro=Cont_vpro+1;
else
if(Tipo ==2)
Cont_va= Cont_va+1;
else
Cont_vpre= Cont_vpre+1;
cout<<"\nIngrese codigo :"<<endl;
cin>>Codigo;
}
total=Cont_va+Cont_vpro+Cont_vpre;
cout<<"El total de viviendas propias es : "<<Cont_vpro<<endl;
cout<<"El total de viviendas alquiladas es : "<<Cont_va<<endl;
cout<<"El total de viviendas prestadas es : "<<Cont_vpre<<endl;
cout<<"El total de viviendas es : "<<total<<endl;
return 0;
system("PAUSE");
}

El tipo de vivienda es :
1.) Vivienda propia
2.) Vivienda alquilada
3.) Vivienda prestada
Ingrese el Codigo :
1
Ingrese el tipo de vivienda :
3
Ingrese codigo :
25
Ingrese el tipo de vivienda :
3
Ingrese codigo :
56
Ingrese el tipo de vivienda :
1
Ingrese codigo :
45
Ingrese el tipo de vivienda :
3
Ingrese codigo :
457
Ingrese el tipo de vivienda :
1

Ingrese codigo :
56
Ingrese el tipo de vivienda :
1
Ingrese codigo :
45
Ingrese el tipo de vivienda :
2
Ingrese codigo :
14
Ingrese el tipo de vivienda :
2
Ingrese codigo :
14
Ingrese el tipo de vivienda :
4

22
Programacin C++ Maria Elena Ruiz Rivera

Ingrese codigo :
9
El total de viviendas propias es : 3
El total de viviendas alquiladas es : 2
El total de viviendas prestadas es : 4
El total de viviendas es : 9
Press any key to continue

28.Calcule la suma de los # pares y la suma de los impares comprendidos


entre el 3 y 999. Debe calcular tambin el promedio de los # pares e
impares. Incluido el 3 y excluyendo el 999.

Programa en C++

#include <iostream.h>
#include <stdlib.h>
int main(){
int sumapar,sumaimpar,contaI,contaP,promI,promP,N;
sumapar=0;
sumaimpar=0;
contaI=0;
contaP=0;
promI=0;
promP=0;
N=3;
while(N<999){
if(N%2 ==0){
sumapar=sumapar+N;
contaP=contaP+1;}
else{
sumaimpar=sumaimpar+N;
contaI=contaI+1;}
N++;
}
promI=sumaimpar/contaI;
promP=sumapar/contaP;
cout<<"La suma de los # pares es : "<<sumapar<<endl;
cout<<"La suma de los # impares es: "<<sumaimpar<<endl;
cout<<"El promedio de los # pares es : "<<promP<<endl;
cout<<"El promedio de los # impares es : "<<promI<<endl;
return 0;
system("PAUSE");
}

La suma de los # pares es : 249498


La suma de los # impares es: 249000
El promedio de los # pares es : 501
El promedio de los # impares es : 500
Press any key to continue
29.Para un grupo de N calificaciones .Calcule e imprima cuntas
calificaciones existen en cada uno de los siguientes rangos, y el
promedio general de dichas calificaciones :
-0...5
-6...10
-11...15

23
Programacin C++ Maria Elena Ruiz Rivera

-16...20

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int N_cal,cal,rango1,rango2,rango3,rango4,I;
cout<<"Ingrese el numero de calificacines : ";
cin>>N_cal;
rango1=0;
rango2=0;
rango3=0;
rango4=0;
I=0;
while( I<N_cal){
cout<<"Ingrese la calificacion: ";
cin>>cal;
if(cal>=0)
if(cal<=5)
rango1=rango1+1;
else
if(cal<=10)
rango2=rango2+1;
else
if(cal<=15)
rango3=rango3+1;
else
if(cal<=20)
rango4=rango4+1;
else
cout<<"Ingrese una nueva calificacion"<<endl;
I++;
}
cout<<"\nEl numero de calificaciones en el rango1 es : "<<rango1<<endl;
cout<<"El numero de calificaciones en el rango2 es : "<<rango2<<endl;
cout<<"El numero de calificaciones en el rango3 es : "<<rango3<<endl;
cout<<"El numero de calificaciones en el rango4 es : "<<rango4<<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de calificacines : 7


Ingrese la calificacion: 14
Ingrese la calificacion: 19
Ingrese la calificacion: 3
Ingrese la calificacion: 15
Ingrese la calificacion: 8
Ingrese la calificacion: 17
Ingrese la calificacion: 16
El numero de calificaciones en el rango1 es : 1
El numero de calificaciones en el rango2 es : 1
El numero de calificaciones en el rango3 es : 2
El numero de calificaciones en el rango4 es : 3
Press any key to continue

30.Se tiene N alumnos , y se desea ayudar a todos aquellos que estn


desaprobados en el promedio final aumentndoles 2 puntos (a su

24
Programacin C++ Maria Elena Ruiz Rivera

promedio), siempre y cuando hayan entregado su respectivo trabajo .De


no cumplirse con estas condiciones , el promedio debe permanecer igual.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int promf,N_alumnos,N;
char trab;
cout<<"Ingrese el numero de alumnos : " <<endl;
cin>>N_alumnos;
N=1;
promf=0;
while(N<=N_alumnos){
cout<<"Ingrese el promedio final : " <<endl;
cin>>promf;
if(promf >= 10.5)
cout<<"El alumno esta aprobado " <<endl;
else{
cout<<"Entrego trabajo S/N: " <<endl;
cin>>trab;
if(trab=='s')
promf=promf+2;
else
promf=promf+0;}
N=N+1;
cout<<"El promedio final es : " <<promf <<endl; }
return 0;
system("PAUSE");
}

Ingrese el numero de alumnos :


3
Ingrese el promedio final :
10
Entrego trabajo S/N:
N
El promedio final es : 10
Ingrese el promedio final :
12
El alumno esta aprobado
El promedio final es : 12
Ingrese el promedio final :
9
Entrego trabajo S/N:
s
El promedio final es : 11
Press any key to continue

31.Calcule el aumento de sueldos , para N trabajadores de una empresa ,


bajo el siguiente criterio :
Si el sueldo es menor igual a S/. 1000 el aumento es de 12% .
Si el sueldo esta comprendido entre S/. 1000 y S/. 2500 el aumento es de
10%
Si el sueldo es mayor igual a S/. 2500 el aumento es de 8% .
Imprima el nuevo sueldo del trabajador y el monto total de la planilla de los N
trabajadores considerando el aumento.

25
Programacin C++ Maria Elena Ruiz Rivera

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double aumento,nuevo_s,planilla,trab,sueldo,N;
cout<<"Ingrese el numero de trabajadores : " <<endl;
cin>>trab;
N=1;
planilla=0;
while(N<=trab){
cout<<"Ingrese el sueldo : " <<endl;
cin>>sueldo;
if(sueldo <= 1000)
aumento=sueldo*(0.12);
else{
if(sueldo<2500)
aumento=sueldo*(0.10);
else
aumento=sueldo*(0.08);
}
nuevo_s=sueldo+aumento;
cout<<"El sueldo nuevo sueldo es : " <<nuevo_s <<endl;
planilla=planilla+nuevo_s;
N=N+1;
}
cout<<"El total de la planilla es : " <<planilla <<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de trabajadores :


3
Ingrese el sueldo :
900
El sueldo nuevo sueldo es : 1008
Ingrese el sueldo :
2400
El sueldo nuevo sueldo es : 2640
Ingrese el sueldo :
3600
El sueldo nuevo sueldo es : 3888
El total de la planilla es : 7536
Press any key to continue

32.Calcular la media aritmtica de un conjunto de notas del examen final de


los alumnos del curso de informtica II, averiguar tambin cuntos
aprobaron y cuntos desaprobaron dicho examen , sabiendo que la nota
aprobatoria es a partir de 10.5 .

Programa en C++
#include<stdlib.h>
int main(){
int conta1,conta2,Num;
double med_a,c_notas,nota,conta;
cout<<"Ingrese la cantidad de notas : " <<endl;
cin>>c_notas;
conta1=0;
conta2=0;

26
Programacin C++ Maria Elena Ruiz Rivera

conta=0;
Num=1;
while(Num<=c_notas){
cout<<"Ingrese la nota: " <<endl;
cin>>nota;
if(nota >=10.5)
conta1=conta1+1;
else
conta2=conta2+1;
conta=conta+nota;
Num=Num+1;
}
med_a=conta/c_notas;
cout<<"La media aritmetica es : " <<med_a <<endl;
cout<<"El numero de alumnos aprobados es : " <<conta1<<endl;
cout<<"El numero de alumnos dsaprobados es : " <<conta2<<endl;
return 0;
system("PAUSE");
}

Ingrese la cantidad de notas :


5
Ingrese la nota:
12
Ingrese la nota:
9
Ingrese la nota:
16
Ingrese la nota:
8
Ingrese la nota:
10
La media aritmetica es : 11
El numero de alumnos aprobados es : 2
El numero de alumnos desaprobados es : 3
Press any key to continue

33.Calcule el resultado de la siguiente serie :


32+52+72+...+N2

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Num,suma,N;
cout<<"Ingrese el numero de sumandos N : "<<endl;
cin>>N;
suma=0;
Num=1;
while(Num<=N){
suma=suma+((2*Num+1)*(2*Num+1));
Num=Num+1;
}
cout<<"\nEl resultado de la serie es : "<<suma <<endl;
return 0;
system("PAUSE");
}

27
Programacin C++ Maria Elena Ruiz Rivera

Ingrese el numero de sumandos N :


3
El resultado de la serie es : 83
Press any key to continue

34.Calcule la suma de la siguiente expresin :


1/2+2/3+3/4+...+100+101

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double I,exp;
I=0;
exp=0;
while(I<=100){
exp=exp+((I)/(I+1));
I=I+1;
}
cout<<"\nEl resultado de la expresion es : "<<exp <<endl;
return 0;
system("PAUSE");
}

El resultado de la expresion es : 95.8027


Press any key to continue

35.Lea N nmeros naturales y obtenga , cuntos de ellos son menores


iguales de 20 , mayores iguales de 55,cuntos estn comprendidos entre
20 y 55 .Debe imprimir cuntos nmeros existen por cada intervalo ,
cuantos nmeros son pares , cuntos son impares , la suma de los
nmeros por cada intervalo y la suma general de todos los nmeros.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int
R,N,Num,Conta1,Conta2,Conta3,Conta_par,Conta_impar,suma1,suma2,suma3,suma
gen;
cout<<"Ingrese el valor de N :"<<endl;
cin>>N;
R=1;
Conta1=0;
Conta2=0;
Conta3=0;
Conta_par=0;
Conta_impar=0;
suma2=0;
suma1=0;
suma3=0;
while(R<=N){
cout<<"Ingrese el numero "<<R<<" :"<<endl;
cin>>Num;

28
Programacin C++ Maria Elena Ruiz Rivera

if(Num<=20){
Conta1= Conta1+1;
suma1=suma1+Num;
}else{
if(Num>20 && Num <55){
Conta2= Conta2+1;
suma2=suma2+Num;}
else{
if(Num>=55)
Conta3= Conta3+1;
suma3=suma3+Num;}
}
R++;
if(Num%2==0)
Conta_par= Conta_par+1;
else
Conta_impar= Conta_impar+1;
}
sumagen=suma1+suma2+suma3;
cout<<"\nExisten "<<Conta1<<" numeros menores igual a 20"<<endl;
cout<<"Existen "<<Conta2<<" numeros comprendidos entre 20 y 55 "<<endl;
cout<<"Existen "<<Conta3<<" numeros mayores iguales a 55 "<<endl;
cout<<"El total de numeros pares es :"<<Conta_par <<endl;
cout<<"El total de numeros impares es :"<<Conta_impar <<endl;
cout<<"La suma de los numeros menores iguales a 20 es :"<<suma1<<endl;
cout<<"La suma de los numeros comprendidos entre 20 y 55
es :"<<suma2<<endl;
cout<<"La suma de los numeros mayores iguales a 55 es :"<<suma3<<endl;
cout<<"La suma general de los numeros es :"<<sumagen<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N :
6
Ingrese el numero 1 :
14
Ingrese el numero 2 :
15
Ingrese el numero 3 :
56
Ingrese el numero 4 :
39
Ingrese el numero 5 :
258
Ingrese el numero 6 :
126
Existen 2 numeros menores igual a 20
Existen 1 numeros comprendidos entre 20 y 55
Existen 3 numeros mayores iguales a 55
El total de numeros pares es :4
El total de numeros impares es :2
La suma de los numeros menores iguales a 20 es :29
La suma de los numeros comprendidos entre 20 y 55 es :39
La suma de los numeros mayores iguales a 55 es :440
La suma general de los numeros es :508
Press any key to continue

29
Programacin C++ Maria Elena Ruiz Rivera

36.Determine si un nmero es perfecto .Un nmero es perfecto cuando la


suma de todos los nmeros menores y divisibles por l , es igual al
mismo nmero (incluido el uno ).
Ejemplo :
6 e s un nmero perfecto porque 6=1+2+3

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int R,Num,suma;
cout<<"Ingrese un numero :"<<endl;
cin>>Num;
suma=1;
R=2;
while(R<=(Num/2)){
if(Num % R==0)
suma=suma+R;
R++;
}
if(suma=Num)
cout<<"\nEl numero "<<Num<<" es perfecto "<<endl;
else
cout<<"\nEl numero "<<Num<<" no es perfecto "<<endl;
return 0;
system("PAUSE");
}

Ingrese un numero :
28
El numero 28 es perfecto
Press any key to continue

37.Una empresa vende N casas al contado y al crdito, en caso de crdito


depende del tiempo que demore el cliente en pagar para aplicarle un
determinado inters .
Para el pago al contado se realiza un descuento del 10% y al crdito se le aplicara
un inters de la siguiente manera :
Menor igual a 1 ao Inters 5%.
Entre 1 ao y 3 aos Inters 10%
Mayor igual a 3ao Inters 15%
Costo de cada casa: $ 100 mil dlares
Luego de conocer las condiciones se desea imprimir el costo ms el inters o
descuento de cada casa, la cantidad de compradores (Clientes ) por crdito y por
contado ; como tambin la cantidad de casa vendidas y el total de dinero que
obtendr por las N casa vendidas.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double
n_casas,costo,tiempo,m_contado,R,t_comcred,t_dinero,m_credito,n_costo,t_comcont
;
char Tipo;
cout<<"Ingrese el valor de N casas :"<<endl;
cin>>n_casas;

30
Programacin C++ Maria Elena Ruiz Rivera

t_comcred=0;
t_dinero=0;
costo=100.00;
t_comcont=0;
R=1;
while(R<=n_casas){
cout<<"Ingrese el tipo de venta C si es al contado y cualquier otra si es al
credito :"<<endl;
cin>>Tipo;
if(Tipo=='c'){
t_comcont=t_comcont+1;
m_contado=costo*0.10;
n_costo=costo+m_contado;
}else{
cout<<"Ingrese el tiempo en el cual va a pagar:"<<endl;
cin>>tiempo;
if(tiempo<=01)
m_credito= (costo*0.05);
else
if(tiempo<03)
m_credito= (costo*0.10);
else
m_credito= (costo*0.15);
n_costo=costo+m_credito;
t_comcred=t_comcred+1;
}
cout<<"El nuevo costo mas interes o descuento es : "<<n_costo<<endl;
t_dinero=t_dinero+n_costo;
R++;
}
cout<<"La cantidad de compradores al contado es :"<<t_comcont<<endl;
cout<<"La cantidad de compradores al credito es :"<<t_comcred<<endl;
cout<<"La cantidad de casas vendidas es :"<<t_comcont+t_comcred<<endl;
cout<<"El total de dinero que obtendran por las casas vendidas
es :"<<t_dinero<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor de N casas :


2
Ingrese el tipo de venta C si es al contado y cualquier otra si es al credito :
c
El nuevo costo mas interes o descuento es : 110
Ingrese el tipo de venta C si es al contado y cualquier otra si es al credito :
g
Ingrese el tiempo en el cual va a pagar:
30
El nuevo costo mas interes o descuento es : 115
La cantidad de compradores al contado es :1
La cantidad de compradores al credito es :1
La cantidad de casas vendidas es :2
El total de dinero que obtendran por las casas vendidas es :225
Press any key to continue

38.La municipalidad de Magdalena desea saber cuntos contribuyentes


poseen casas de 1,2 o ms de 3 pisos. Para ello la oficina de catastro
verifica a N contribuyentes , y muestra al final la cantidad de

31
Programacin C++ Maria Elena Ruiz Rivera

contribuyentes con 1,2 o mas de 3 pisos , como tambin el total de


contribuyentes .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int Conta1,Conta2,Conta3,N_contrib,total_gen,pisos,R;
cout<<"Ingrese el numero de contribuyentes :"<<endl;
cin>>N_contrib;
Conta1=0;
Conta2=0;
Conta3=0;
R=1;
while(R<=N_contrib){
cout<<"Ingrese el de pisos de su casa :"<<endl;
cin>>pisos;
if(pisos==1)
Conta1= Conta1+1;
else
if(pisos==2)
Conta2= Conta2+1;
else
if(pisos>=3)
Conta3= Conta3+1;
else
cout<<"Ingrese correctamente el nuemro de pisos : "<<endl;
R++;
}
total_gen= Conta1+ Conta2+ Conta3;
cout<<"La cantidad de contribuyentes con 1 piso es :"<< Conta1<<endl;
cout<<"La cantidad de contribuyentes con 2 pisos es :"<< Conta2<<endl;
cout<<"La cantidad de contribuyentes con mas de 3 pisos es :"<< Conta3<<endl;
cout<<"El total de contribuyentes es :"<<total_gen<<endl;
return 0;
system("PAUSE");
}

Ingrese el numero de contribuyentes :


5
Ingrese el de pisos de su casa :
1
Ingrese el de pisos de su casa :
2
Ingrese el de pisos de su casa :
3
Ingrese el de pisos de su casa :
5
Ingrese el de pisos de su casa :
9
La cantidad de contribuyentes con 1 piso es :1
La cantidad de contribuyentes con 2 pisos es :1
La cantidad de contribuyentes con mas de 3 pisos es :3
El total de contribuyentes es :5
Press any key to continue

32
Programacin C++ Maria Elena Ruiz Rivera

39.La empresa IBM S.A. desea obtener el pago total por horas extras y el
sueldo neto de cada trabajador , sabiendo que por cada hora extra
trabajada se le paga 2 veces el valor de una hora normal.
Tambin , se quiere contar con el monto total de todos los trabajadores , para ver el
monto general de la planilla a pagar .
Se leen los siguientes datos correspondientes a 120 empleados : nombre ,apellido,
sueldo bsico ,nmero de horas extras trabajadas y el pago por cada hora.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double T_planilla, pt_horas_E,sueldo_N,sueldo,horas_E,pago_H,R;
R=1;
T_planilla=0;
while(R<=120){
cout<<"Ingrese el sueldo basico " <<R<< ": "<<endl;
cin>>sueldo;
cout<<"Ingrese el numero de horas extras trabajadas " <<R<< ": "<<endl;
cin>>horas_E;
cout<<"Ingrese el pago por cada hora " <<R<< ": "<<endl;
cin>>pago_H;
pt_horas_E=horas_E*(pago_H*2);
sueldo_N=sueldo+pt_horas_E;
T_planilla=T_planilla+sueldo_N;
R++;
}
cout<<"El sueldo neto del trabajador es : " <<sueldo_N<<endl;
cout<<"El pago total por horas extras es : " <<pt_horas_E<<endl;
return 0;
system("PAUSE");
}

Ingrese el sueldo basico 1:


150
Ingrese el numero de horas extras trabajadas 1:
12
Ingrese el pago por cada hora 1:
3
Ingrese el sueldo basico 2:
140
Ingrese el numero de horas extras trabajadas 2:
45
Ingrese el pago por cada hora 2:
16
Ingrese el sueldo basico 3:
180
Ingrese el numero de horas extras trabajadas 3:
14
Ingrese el pago por cada hora 3:
4
Ingrese el sueldo basico 4:
150
Ingrese el numero de horas extras trabajadas 4:
16
Ingrese el pago por cada hora 4:
8
Ingrese el sueldo basico 5:

33
Programacin C++ Maria Elena Ruiz Rivera

142
Ingrese el numero de horas extras trabajadas 5:
15
Ingrese el pago por cada hora 5:
5
El sueldo neto del trabajador es : 292
El pago total por horas extras es : 150
Press any key to continue

40.Dado un conjunto de nmeros positivos y negativos , sumar todos los


nmeros positivos .El nmero para finalizar es el cero .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int val_Num,total;
cout<<"Ingrese el valor del numero : "<<endl;
cin>>val_Num;
total=0;
while(val_Num!=0){
if(val_Num>0)
total=total+val_Num;
cout<<"Ingrese el valor el numero "<<endl;
cin>>val_Num; }
cout<<"El total de numeros positivos es : "<<total<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor del numero :


1456
Ingrese el valor el numero
-58
Ingrese el valor el numero
-36
Ingrese el valor el numero
-89
Ingrese el valor el numero
12
Ingrese el valor el numero
136
Ingrese el valor el numero
-96
Ingrese el valor el numero
0
El total de numeros positivos es : 1604
Press any key to continue

41.Visualice los nmeros de la serie de Fibonacci.


La serie es : 0,1,1,2,3,5,8,13,21,...

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int n1,n2,n3;

34
Programacin C++ Maria Elena Ruiz Rivera

n1=0;
n2=1;
cout<<"La serie es : "<<endl;
cout<<n1<<endl;
cout<<n2 <<endl;
n3=n1+n2;
while(n3<=1000){
cout<<n3<<endl;
n1=n2;
n2=n3;
n3=n1+n2; }
return 0;
system("PAUSE");
}

La serie es :
0
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
Press any key to continue

42.Escriba un programa que utilice estructuras for y while para que


despliegue patrones ,de manera independiente uno de bajo de otro.
Utilice ciclos for para generar los patrones. Todos los (@) deben
imprimirse mediante una sola instruccin de la forma cout<<`@`.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int i,lineas;
cout<<"Ingrese el numero de lineas :"<<endl;
cin>>lineas;
while(lineas >=1){
for(i=1;i<=lineas;i++){
cout<<" @";}
cout<<endl;
lineas--;
}
return 0;
system("PAUSE");
}

Ingrese el numero de lineas :

35
Programacin C++ Maria Elena Ruiz Rivera

10
@@@@@@@@@@
@@@@@@@@@
@@@@@@@@
@@@@@@@
@@@@@@
@@@@@
@@@@
@@@
@@
@
Press any key to continue

43.Escriba un programa que utilice estructuras for y while para que


despliegue patrones, de manera independiente uno de bajo de otro.
Utilice ciclos for para generar los patrones. Todos los (X) deben
imprimirse mediante una sola instruccin de la forma cout<<`X`.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int i,k,p,lineas;
cout<<"Ingrese el numero de lineas :"<<endl;
cin>>lineas;
k=lineas;
while(lineas >=1){
for(i=1;i<=lineas-1;i++){
cout<<" ";}
for(p=lineas-1;p<=k-1;p++){
cout<<"X";}
cout<<endl;
lineas--;
}
return 0;
system("PAUSE");
}

Ingrese el numero de lineas :


10
X
XX
XXX
XXXX
XXXXX
XXXXXX
XXXXXXX
XXXXXXXX
XXXXXXXXX
XXXXXXXXXX
Press any key to continue

//do while
44.Calcule la suma de todos los nmeros comprendidos entre 1 y 100
;ambos inclusive.

Programa en C++

36
Programacin C++ Maria Elena Ruiz Rivera

#include<iostream.h>
#include<stdlib.h>
int main(){
int suma,R;
R=1;
suma=0;
do{
suma=suma+R;
R=R+1;}
while(R<=100);
cout<<"La suma es : " <<suma <<endl;
return 0;
system("PAUSE");
}

La suma es : 5050
Press any key to continue

45.Calcule el promedio de los nmeros entre 15 y 49 , ambos inclusive.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
double suma,R,promedio;
R=15;
suma=0;
do{
suma=suma+R;
R=R+1;}
while(R<=49);
promedio=suma/35;
cout<<"El promedio es : " <<promedio<<endl;
return 0;
system("PAUSE");
}

El promedio es : 32
Press any key to continue

46.Ingrese cuatro notas y vlida para que las notas ingresadas sean
mayores que 0 y menores o iguales que 20 , al final debe imprimir el
promedio .
Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int C,prom,nota,acu;
C=1;
acu=0;
do{
cout<<"Ingrese la nota " <<C<<": "<< endl;
cin>>nota;
if(0<=nota && nota <=20){
C=C+1;
acu=acu+nota;
prom=acu / C;

37
Programacin C++ Maria Elena Ruiz Rivera

}else{
cout<<"nota no valida " <<endl;}
}while(C<=4);
cout<<"El promedio es "<<prom <<endl;
return 0;
system("PAUSE");
}

Ingrese la nota 1:
14
Ingrese la nota 2:
14
Ingrese la nota 3:
20
Ingrese la nota 4:
26
nota no valida
Ingrese la nota 4:
14
El promedio es 12
Press any key to continue

47.Visualice los cuadrados de los nmeros pares del 2 a 40 , ambos


inclusive.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int x,y;
x=2;
y=0;
do{
y=x*x;
cout<<" El cuadrado de " <<x<< "\tes : "<< y<< endl;
x=x+2;
}while(x<=40);
return 0;
system("PAUSE");
}

El cuadrado de 2 es : 4
El cuadrado de 4 es : 16
El cuadrado de 6 es : 36
El cuadrado de 8 es : 64
El cuadrado de 10 es : 100
El cuadrado de 12 es : 144
El cuadrado de 14 es : 196
El cuadrado de 16 es : 256
El cuadrado de 18 es : 324
El cuadrado de 20 es : 400
El cuadrado de 22 es : 484
El cuadrado de 24 es : 576
El cuadrado de 26 es : 676
El cuadrado de 28 es : 784
El cuadrado de 30 es : 900
El cuadrado de 32 es : 1024
El cuadrado de 34 es : 1156

38
Programacin C++ Maria Elena Ruiz Rivera

El cuadrado de 36 es : 1296
El cuadrado de 38 es : 1444
El cuadrado de 40 es : 1600
Press any key to continue

48.Pida el ingreso de N nmeros y finalice , cuando se ingrese un nmero


negativo e imprima el promedio de los ingresados.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int val_Num,total,cont;
cont=0;
cout<<"Ingrese el valor del numero : "<<endl;
cin>>val_Num;
total=0;
while(val_Num>=0){
if(val_Num>0)
total=total+val_Num;
cont=cont+1;
cout<<"Ingrese el valor el numero "<<endl;
cin>>val_Num; }
cout<<"El total de numeros positivos es : "<<total/cont<<endl;
return 0;
system("PAUSE");
}

Ingrese el valor del numero :


18
Ingrese el valor el numero
56
Ingrese el valor el numero
48
Ingrese el valor el numero
-2
El total de numeros positivos es : 40
Press any key to continue
//Case
49.De acuerdo a la siguiente tabla , ingrese una nota e imprima un
calificativo .

Rango Calificacion
nota es
0-10 Deficiente
11-14 Regular
15-18 Bueno
19-20 Excelente

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
int nota;
cout<<"Introduzca la nota :\n\n";
cin>>nota;
switch(nota)

39
Programacin C++ Maria Elena Ruiz Rivera

{
case 0: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 1: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 2: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 3: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 4: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 5: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 6: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 7: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 8: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 9: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 10: if(0<=nota && nota<=10)
cout<<"nota deficiente "<<endl;
break;
case 11 : if(11<=nota && nota<=14)
cout<<"nota regular "<<endl;
break;
case 12 : if(11<=nota && nota<=14)
cout<<"nota regular "<<endl;
break;
case 13 : if(11<=nota && nota<=14)
cout<<"nota regular "<<endl;
break;
case 14 : if(11<=nota && nota<=14)
cout<<"nota regular "<<endl;
break;
case 15: if(15<=nota && nota<=18)
cout<<"nota bueno "<<endl;
break;
case 16: if(15<=nota && nota<=18)
cout<<"nota bueno "<<endl;
break;
case 17: if(15<=nota && nota<=18)
cout<<"nota bueno "<<endl;
break;
case 18: if(15<=nota && nota<=18)
cout<<"nota bueno "<<endl;
break;
case 19: if(19<=nota && nota<=20)
cout<<"nota excelente "<<endl;

40
Programacin C++ Maria Elena Ruiz Rivera

break;
case 20: if(19<=nota && nota<=20)
cout<<"nota excelente "<<endl;
break;
default: cout<<"nota no valida "<<endl;
break;
}
return 0;
}

Introduzca la nota :
19
nota excelente
Press any key to continue

50.Lea una vocal , luego determine si el carcter est en mayscula o


minscula.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
char letra;
cout<<"Introduzca una vocal: ";
cin>>letra;
switch(letra)
{
case 'A': cout<<"La vocal es mayuscula"<<endl;
break;
case 'E': cout<<"La vocal es mayuscula"<<endl;
break;
case 'I': cout<<"La vocal es mayuscula"<<endl;
break;
case 'O' : cout<<"La vocal es mayuscula"<<endl;
break;
case 'U': cout<<"La vocal es mayuscula"<<endl;
break;
case 'a': cout<<"La vocal es minuscula"<<endl;
break;
case 'e': cout<<"La vocal es minuscula"<<endl;
break;
case 'i': cout<<"La vocal es minuscula"<<endl;
break;
case 'o': cout<<"La vocal es minuscula"<<endl;
break;
case 'u': cout<<"La vocal es minuscula"<<endl;
break;
default:cout<<"La letra ingresada no es una vocal "<<endl;
break;
}
return 0;
system("PAUSE");
}

Introduzca una vocal: A


La vocal es mayuscula
Press any key to continue

41
Programacin C++ Maria Elena Ruiz Rivera

51.Prepare un algoritmo para convertir medidas de longitud segn lo


siguiente :
a) De Pulgadas a Milmetros.
b) De Yardas a Metros.
c) De Millas a Kilmetros.
Si sabe que :
1 Pulgada equivale a 25.40 Milmetros.
1 Yarda equivale a 0.9144 Metros.
1 Milla equivale a 1.6093 Kilmetros.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
double medida,conver;
char opcion;
cout<<" A conversion de Pulgadas a Milimetros"<<endl;
cout<<" B conversion de Yardas a Metros"<<endl;
cout<<" C conversion de Millas a Kilometros"<<endl;
cout<<" Ingrese A,B,C"<<endl;
cin>>opcion;
switch(opcion)
{
case 'A': cout<<"Ingrese Pulgadas"<<endl;
cin>>medida;
conver=medida*25.40;
cout<<medida<<" Pulgadas equivale a :"<<conver<<" milimetros
"<<endl;
break;
case 'B':cout<<"Ingrese Yardas"<<endl;
cin>>medida;
conver=medida*0.9144;
cout<<medida<<" Yardas equivale a :"<<conver<<" metros
"<<endl;
break;
case 'C':cout<<"Ingrese Millas"<<endl;
cin>>medida;
conver=medida*1.6093;
cout<<medida<<" Millas equivale a :"<<conver<<" kilometros
"<<endl;
break;
default: break;
}
return 0;
system("PAUSE");
}

A conversion de Pulgadas a Milimetros


B conversion de Yardas a Metros
C conversion de Millas a Kilometros
Ingrese A,B,C
A
Ingrese Pulgadas
150
150 Pulgadas equivale a :3810 milimetros
Press any key to continue

42
Programacin C++ Maria Elena Ruiz Rivera

52.Se tiene dos opciones , una para el ingreso y la otra para la salida; donde
en la primera opcin se deber ingresar el cdigo de alumno y el de su
facultad . Luego , en la opcin dos se deber imprimir el promedio de
un numero N de notas ingresadas .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
int opcion;
cout<<"Elija una opcion: "<<endl;
cout<<"1) Ingresar datos"<<endl;
cout<<"2) mostrar promedio"<<endl;
cin>>opcion;
cout<<"La opcion escogida es : "<<opcion<<endl;
switch(opcion){
case 1: { long codigo;
long codigo_facultad;
cout<<"Ingrese el codigo del alumno y de su facultad:";
cin>>codigo>>codigo_facultad;
cout<<"Datos del alumno :"<<endl;
cout<<"codigo :" <<codigo<<endl;
cout<<"codigo de facultad : "<<codigo_facultad<<endl; }
break;
case 2: { int n,nota,suma,cont;
cout<<"Ingrese el numero de notas : ";
cin>>n;
suma=0;
cont=0;
for(int i=1;i<n;i++){
cout<<"Ingrese nota : " ;
cin>>nota;
if(nota>=0 && nota<=20){
suma=suma+nota;
cont=cont+1;}
else
cout<<"nota no valida"<<endl;}
cout<<"El promedio es : "<<suma/cont<<endl; }
break;
default:cout<<"La opcion escogida no es valida"<<endl;
break; }
return 0;
system("PAUSE");
}

Elija una opcion:


1) Ingresar datos
2) mostrar promedio
2
La opcion escogida es : 2
Ingrese el numero de notas : 5
Ingrese nota : 14
Ingrese nota : 16
Ingrese nota : 23
nota no valida
Ingrese nota : 16
El promedio es : 15
Press any key to continue

43
Programacin C++ Maria Elena Ruiz Rivera

53.Realiza un programa que calcule el area y el permetro de una figura


geomtrica .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
int opcion;
cout<<"Elija una opcion: "<<endl;
cout<<"1) rectangulo"<<endl;
cout<<"2) cuadrado"<<endl;
cout<<"3) circulo"<<endl;
cin>>opcion;
cout<<"La opcion escogida es : "<<opcion<<endl;
switch(opcion){
case 1: { int ancho,largo;
cout<<"Ingrese el largo y ancho del rectangulo : ";
cin>>ancho>>largo;
cout<<"El area es :"<<ancho*largo<<endl;
cout<<"El perimetro es :"<<2*(ancho+largo)<<endl;}
break;
case 2: { int lado;
cout<<"Ingrese el lado del cuadrado : ";
cin>>lado;
cout<<"El area es : "<<lado*lado<<endl;
cout<<"El perimetro es : "<<4*lado<<endl; }
break;
case 3: { double radio;
double PI =3.1415;
cout<<"Ingrese el radio de la circunferencia : "<<endl;
cin>> radio;
cout<<"El area es : "<<PI*radio*radio<<endl;
cout<<"La longitud es : "<<2*PI*radio<<endl; }
break;
default: cout<<"La opcion escogida no es valida"<<endl;
break; }
return 0;
system("PAUSE");
}

Programa en C++

Elija una opcion:


1) rectangulo
2) cuadrado
3) circulo
2
La opcion escogida es : 2
Ingrese el lado del cuadrado : 10
El area es : 100
El perimetro es : 40
Press any key to continue

54.Convertir los nmeros de 0 al 15 de decimal (base 10 ) a hexadecimal


(base 16 ).
Programa en C++

44
Programacin C++ Maria Elena Ruiz Rivera

#include<iostream.h>
#include<stdlib.h>
int main (){
int num;
cout<<"Ingrese un # del 0 al 15 :\n\n";
cin>>num;
switch(num)
{
case 0:cout<<"El # 0 en hexadecimal es : 0"<<endl;
break;
case 1:cout<<"El # 1 en hexadecimal es : 1"<<endl;
break;
case 2:cout<<"El # 2 en hexadecimal es : 2"<<endl;
break;
case 3:cout<<"El # 3 en hexadecimal es : 3"<<endl;
break;
case 4 :cout<<"El # 4 en hexadecimal es : 4"<<endl;
break;
case 5:cout<<"El # 5 en hexadecimal es : 5"<<endl;
break;
case 6:cout<<"El # 6 en hexadecimal es : 6"<<endl;
break;
case 7:cout<<"El # 7 en hexadecimal es : 7"<<endl;
break;
case 8:cout<<"El # 8 en hexadecimal es : 8"<<endl;
break;
case 9:cout<<"El # 9 en hexadecimal es : 9"<<endl;
break;
case 10:cout<<"El # 10 en hexadecimal es : A"<<endl;
break;
case 11:cout<<"El # 11 en hexadecimal es : B"<<endl;
break;
case 12:cout<<"El # 12 en hexadecimal es : C"<<endl;
break;
case 13:cout<<"El # 13 en hexadecimal es : D"<<endl;
break;
case 14:cout<<"El # 14 en hexadecimal es : E"<<endl;
break;
case 15:cout<<"El # 15 en hexadecimal es : F"<<endl;
break;
default: break;
}

return 0;
system("PAUSE");
}

Ingrese un # del 0 al 15 :
11
El # 11 en hexadecimal es : B
Press any key to continue

55.Lea un operador(+,-,*,/) y dos nmeros A ,B y realice una operacin .

Programa en C++

#include<iostream.h>

45
Programacin C++ Maria Elena Ruiz Rivera

#include<stdlib.h>
int main (){
int a ,b;
char oper;
cout<<"Introduzca dos numeros y la operacion a realizar +,-,*,/:\n\n";
cin>>a>>oper>>b;
switch(oper){
case'+': cout<<a<<oper<<b<<"="<<a+b<<endl;
break;
case'-': cout<<a<<oper<<b<<"="<<a-b<<endl;
break;
case'*': cout<<a<<oper<<b<<"="<<a*b<<endl;
break;
case'/': cout<<a<<oper<<b<<"="<<a/b<<endl;
break;
case'%': cout<<a<<oper<<b<<"="<<a%b<<endl;
break;
default: break;
}
return 0;
system("PAUSE");
}

Introduzca dos numeros y la operacion a realizar +,-,*,/:


45+46
45+46=91
Press any key to continue

56.Prepare un programa que pida el ingreso de un nmero correspondiente


a un mes y automticamente debe imprimir el nombre del mes.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main (){
int mes;
cout<<"Introduzca el numero de mes :\n\n";
cin>>mes;
switch(mes)
{
case 1: cout<<"El mes es : Enero"<<endl;
break;
case 2: cout<<"El mes es : Febrero"<<endl;
break;
case 3: cout<<"El mes es : Marzo"<<endl;
break;
case 4 : cout<<"El mes es : Abril"<<endl;
break;
case 5: cout<<"El mes es : Mayo"<<endl;
break;
case 6: cout<<"El mes es : Junio"<<endl;
break;
case 7: cout<<"El mes es : Julio"<<endl;
break;
case 8: cout<<"El mes es : Agosto"<<endl;
break;
case 9: cout<<"El mes es : Setiembre"<<endl;
break;
case 10: cout<<"El mes es : Octubre"<<endl;

46
Programacin C++ Maria Elena Ruiz Rivera

break;
case 11: cout<<"El mes es : Noviembre"<<endl;
break;
case 12: cout<<"El mes es : Diciembre"<<endl;
break;
default: break;
}
return 0;
system("PAUSE");
}

Introduzca el numero de mes :


11
El mes es : Noviembre
Press any key to continue

57.Utilizando la estructura case elabore un programa que muestre un men


en el que se pueda elegir calcular el volumen de un cubo, esfera , cono y
cilindro .

Programa en C++

#include<iostream.h>
#include<math.h>
int main(){
double V;
float l,r,h;
int op;
cout<<"1. volumen de un cubo"<<endl;
cout<<"2 . volumen de una esfera"<<endl;
cout<<"3 . volumen de un cilindro"<<endl;
cout<<"4 . volumen de un cono"<<endl;
cout<<"Escriba su opcion:";cin>>op;
switch(op){
case 1: cout<<"ingrese el lado del cubo:";cin>>l;
V=l*l*l;
break;
case 2: cout<<"Ingrese el radio de la esfera:";cin>>r;
V=3.141592*r*r*r*(4/3);
break;
case 3: cout<<"Ingrese el radio del cilindro:";cin>>r;
cout<<"Ingrese la altura del cilindro:";cin>>h;
V=r*r*3.141592*h;
break;
case 4: cout<<"Ingrese el radio del cono:";cin>>r;
cout<<"Ingrese la altura del cono:";cin>>h;
V=(r*r*h*3.141592)/3;
break;
default:cout<<"Numero Incorrecto"<<endl;}

cout<<"El volumen es:"<<V<<endl;


return 0;
}

1. volumen de un cubo
2. volumen de una esfera
3 . volumen de un cilindro
4 . volumen de un cono
Escriba su opcion: 3

47
Programacin C++ Maria Elena Ruiz Rivera

Ingrese el radio del cilindro:5


Ingrese la altura del cilindro:13
El volumen es:1021.02
Press any key to continue

58.Elabore un programa para simular 600 tiros de un dado e indicar la


frecuencia con la que aparece cada lado. sugerencia utilice la funcin
rand .

Programa en C++

#include<iostream>
#include<stdlib.h>//esta libreria contiene ala funcin rand
#include<iomanip>
using std::setw;
using namespace std;
int cuadrado(int);
int main(){
int frecuencia1=0;
int frecuencia2=0;
int frecuencia3=0;
int frecuencia4=0;
int frecuencia5=0;
int frecuencia6=0;
int cara;
for(int tiro=1;tiro<=600;tiro++){
cara=1+rand()%6;
switch(cara){
case 1:++frecuencia1;
break;
case 2:++frecuencia2;
break;
case 3:++frecuencia3;
break;
case 4:++frecuencia4;
break;
case 5:++frecuencia5;
break;
case 6:++frecuencia6;
break;
default:
cout<<"El programa nunca debe llegar hasta aqui "<<endl;}
}
cout<<"Cara"<<setw(13)<<"Frecuencia";
cout<<"\n 1"<<setw(13)<<frecuencia1 ;
cout<<"\n 2"<<setw(13)<<frecuencia2 ;
cout<<"\n 3"<<setw(13)<<frecuencia3 ;
cout<<"\n 4"<<setw(13)<<frecuencia4 ;
cout<<"\n 5"<<setw(13)<<frecuencia5 ;
cout<<"\n 6"<<setw(13)<<frecuencia6 <<endl;
return 0;
system("PAUSE");
}

Cara Frecuencia
1 92
2 100
3 117
4 89

48
Programacin C++ Maria Elena Ruiz Rivera

5 91
6 111
Press any key to continue
//Arreglos unidimensionales
Vector A:
2 6 4 8 1 1 8 6 4 3
2 0 9 8 5 7
0 1 2 3 4 5 6 7 8 9

2 4 6 8 1 1 3 4 6 8
0 2 7 5 8 9
0 1 2 3 4 5 6 7 8 9

Elabore un programa que ordene en forma ascendente los valores del siguiente
arreglo A[]={2,6,4,8,12,10,89,68,45,37}

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int main(){
int tamano=10;
int i,pasada,j;
int A[]={2,6,4,8,12,10,89,68,45,37};
int temporal;
cout<<"Elementos dados en el orden original :"<<endl;
for(i=0;i<tamano;i++){
cout<<A[i];
cout.width(5);}
for(pasada=0;pasada<tamano-1;pasada++)
for(j=0;j<tamano-1;j++)
if(A[j]>A[j+1]){
temporal=A[j];
A[j]=A[j+1];
A[j+1]=temporal;}
cout<<"\nElementos dados en el orden ascendente :"<<endl;
for(i=0;i<tamano;i++){
cout<<A[i];
cout.width(5);}
cout<<endl;
return 0;
system("PAUSE");
}

Elementos dados en el orden original :


2 6 4 8 12 10 89 68 45 37
Elementos dados en el orden ascendente :
2 4 6 8 10 12 37 45 68 89
Press any key to continue

59.Elabore un programa que cargue un array de enteros con los nmeros del
1 al 10.

Pseudocdigo

49
Programacin C++ Maria Elena Ruiz Rivera

Inicio{Pseudo_array 1}
Variables x[1,2.,10] , I
For I=0 to 9 do
x[I]=I+1
Endfor
Escribir ("El elemento ","valor")
For I=0 to 9
Escribir(I,x[I])
Endfor
Fin

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int X[10],i;
for(i=0;i<10;i++)
X[i]=i+1;
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<<" Valor"<<endl;
for(i=0;i<10;i++)
cout<<"\t"<<i<<"\t"<<X[i]<<endl;
return 0;
system("PAUSE");
}

Mtodo # 2

#include<iostream.h>
#include<stdlib.h>
int main(){
int X[10],i=0;
while(i<10){
X[i]=i+1;
i++;}
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<< " Valor"<<endl;
i=0;
while(i<10){
cout<<"\t"<<i<<"\t"<<X[i]<<endl;
i++;}
return 0;
system("PAUSE");
}

50
Programacin C++ Maria Elena Ruiz Rivera

El Arreglo es :
Elemento Valor
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
Press any key to continue

60.Dado el siguiente arreglo unidimensional obtener la suma de los valores


de dicho arreglo e imprima el arreglo .

Pseudocdigo

Inicio{Pseu_array 2}
Variables
A[1,2,...6],I ,suma
Suma=0; I=0
While I<= 5 do
suma=suma+A[I]
I++
Enddo
Escribir(El arreglo es :)
I=0
While I<= 5 do
Escribir(A[I])
I++
Enddo
Escribir(La suma de valores del arreglo es :,suma)
End

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int A[6]={12,25,15,32,28,14};
int i=0,suma=0;
while(i<=5){
suma=suma+A[i];
i=i+1; }
cout<<"El Arreglo es :"<<endl;
i=0;
while(i<=5){
cout<<A[i]<<endl;
i=i+1; }
cout<<"La Suma el Arreglo es : "<<suma<<endl;
return 0;
system ("PAUSE");
}

51
Programacin C++ Maria Elena Ruiz Rivera

Mtodo # 2

#include<iostream.h>
#include<stdlib.h>
int main(){
int A[6]={12,25,15,32,28,14};
int i=0,suma=0;
do{
suma=suma+A[i];
i++;}
while(i<=5);
cout<<"El arreglo es :"<<endl;
i=0;
do{
cout<<A[i]<<endl;
i=i+1;}
while(i<=5);
cout<<"La suma el Arreglo es : "<<suma<<endl;
return 0;
system ("PAUSE");
}

El arreglo es :
12
25
15
32
28
14
La suma el Arreglo es :126
Press any key to continue

Prepare un programa que inicialice los elementos de un arreglo T de 10 elementos a


los valores:2,4,6,,20 e imprima el arreglo .

Pseudocdigo

Inicio{Pseu_arrary 3}
Variables I ,T[1,2,...,10]
I=0
Do
T[I]=2*(I+1)
I++
While I<=9
Enddo
End

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int T[10],i=0;
do{

52
Programacin C++ Maria Elena Ruiz Rivera

T[i]=2*(i+1);
i++;}
while(i<10);
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<<" Valor"<<endl;
for(i=0;i<10;i++)
cout<<"\t"<<i<<"\t"<<T[i]<<endl;
return 0;
system("PAUSE");
}

Mtodo # 2

#include<iostream.h>
#include<stdlib.h>
int main(){
int T[10],i;
for(i=0;i<10;i++)
T[i]=2*(i+1);
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<<" Valor"<<endl;
for(i=0;i<10;i++)
cout<<"\t"<<i<<"\t"<<T[i]<<endl;
return 0;
system("PAUSE");
}

El Arreglo es :
Elemento Valor
0 2
1 4
2 6
3 8
4 10
5 12
6 14
7 16
8 18
9 20
Press any key to continue

63.Prepare un programa que ordene en forma creciente los datos de un arreglo


D con los siguientes valores :5,3,1,7,2
D[5]={5,3,1,7,2} .

Pseudocdigo

Inicio{Pseu_array}
Variables int D[5]={5,3,1,7,2},i,aux,j
For i=0 to 4 do
For j=1 to 4 do
If D[i]>D[j] them
aux=D[i]
D[i]=D[j]
D[j]=aux
Endif
Endfor
Endfor
Escribir("El arreglo ordenado es:")

53
Programacin C++ Maria Elena Ruiz Rivera

Escribir(Elemento,Valor)
Escribir(i, D[i])
For i=0 to 4 do
Escribir(i, D[i])
Endfor
End

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int D[5]={5,3,1,7,2};
int i,aux,j;
for(i=0;i<4;i++){
for(j=i+1;j<4;j++){
if(D[i]>D[j]){
aux=D[i];
D[i]=D[j];
D[j]=aux; }
}
}
cout<<"El arreglo Ordenado es :"<<endl;
cout<<"Elemento"<<" Valor "<<endl;
for(i=0;i<4;i++)
cout<<i<<"\t"<<D[i]<<endl;
return 0;
system("PAUSE");
}

Mtodo # 2

#include<iostream.h>
#include<stdlib.h>
int main(){
int D[5]={5,3,1,7,2};
int i=0,aux,j;
while(i<4){
for(j=i+1;j<4;j++){
if(D[i]>D[j]){
aux=D[i];
D[i]=D[j];
D[j]=aux;}
}
i++;
}
cout<<"El arreglo Ordenado es :"<<endl;
cout<<"Elemento"<<" Valor "<<endl;
for(i=0;i<4;i++)
cout<<i<<"\t"<<D[i]<<endl;
return 0;
system("PAUSE");
}

El arreglo Ordenado es :
Elemento Valor
0 1
1 3

54
Programacin C++ Maria Elena Ruiz Rivera

2 5
3 7
Press any key to continue

64.Prepare un algoritmo que determine cuantos nmeros son perfectos , dado un


arreglo A
de M elementos ,el arreglo esta compuesto por nmeros enteros y M esta
comprendido entre 1 y 100.

55
Programacin C++ Maria Elena Ruiz Rivera

Pseudocdigo

Inicio{Pseu _array 5}
Conts Max=100
Variables A[Max],i,suma,M,j
Escribir ( Ingrese el Valor de M )
Leer(M)
suma=1, i=0, j=0
while i<=M-1 do
Escribir(Ingrese el valor del elemento :)
Leer (A[i])
Enddo
For i< M-1 to
suma=1;
j=2;
While j<=A[i]/2 do
If A[i] mod j=0 then
suma=suma+j
Endif
If suma=A[i] then
Escribir(Es Perfecto )
Else
Escribir(No es Perfecto)
Endif
Enddo
Endfor
End

Programa en C++

Mtodo # 1

#include<iostream.h>
#define Max 100
int main(){
int A[Max];
int M,i, k suma;
cout<<"Ingrese el Orden del Arreglo :";
cin>>M;
cout<<"Ingrese los Valores del Arreglo: "<<endl;
for(i=0;i<M;i++)
cin>>A[i];
cout<<"El Numero :"<<endl;
int cont=0;
for(i=0;i<M;i++){
suma=1;
k=2;
while(k<=A[i]/2){
if(A[i]%k==0) {
suma=suma +k;}
k++ ;}
if(suma==A[i])
cout<<"\t"<<A[i]<< " es Perfecto"<<endl;
else
cout<<"\t"<<A[i]<< " no es Perfecto"<<endl; }
return 0;
}

56
Programacin C++ Maria Elena Ruiz Rivera

Mtodo # 2

#include<iostream.h>
#define Max 100
int main(){
int A[Max];
int M,i,k,suma;
cout<<"Ingrese el Orden del Arreglo :";
cin>>M;
cout<<"Ingrese los Valores del Arreglo: "<<endl;
i=0;
while(i<M){
cin>>A[i];
i++;}
cout<<"El Numero :"<<endl;
i=0;
while(i<M){
suma=1;
k=2;
while(k<=A[i]/2){
if(A[i]%k==0) {
suma=suma +k;}
k++ ;}
if(suma==A[i])
cout<<"\t"<<A[i]<< " es Perfecto"<<endl;
else
cout<<"\t"<<A[i]<< " no es Perfecto"<<endl;
i++; }
return 0;
}

Ingrese el Orden del Arreglo :


3
Ingrese los Valores del Arreglo:
15
28
36
El Numero :
15 No es Perfecto
28 es Perfecto
36 No es Perfecto
Press any key to continue

65. Desarrolle un programa que ingrese M pesos en un arreglo ,luego cuente e


imprima la cantidad de pesos que existe en cada rango :
-Menores iguales a 20.
-Entre 20 y 40.
-Mayores o igual a 40.

Pseudocdigo

Inicio{Pseu_array 6}
Const Max=100
Variables T[max ],M,Pesos,I,Cont1,Cont2,Cont3
Escribir(Ingrese el nmero de pesos)
Leer(M)
For I=0 to M-1 do
Escribir(Ingrese el valor del Peso )
Leer(Peso)
T[I]=Peso

57
Programacin C++ Maria Elena Ruiz Rivera

Endfor
For I=0 to M-1 do
If(T[I]<=20 ) then
Cont1=Cont+1
Else
If(20<T[I] and T[I]<40) then
Cont2=Cont2+1
Else
Cont3=Cont3+1
Endif
Endif
Endfor
Escribir(La cantidad de pesos menores igual a 20 es :,Cont1)
Escribir(La cantidad de pesos entre 20 y 40 es :,Cont1)
Escribir(La cantidad de pesos mayores igual a 40 es :,Cont1)
End

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
#define Max 100
int main(){
int T[Max];
int i,M,cont1,cont2,cont3,suma1,suma2,suma3;
double prom1,prom2,prom3;
cout<<"Ingese el numero de pesos :"<<endl;
cin>>M;
for(i=0;i<M;i++){
cout<<"Ingrese el valor del Peso :"<<endl;
cin>>T[i];
}
cont1=cont2=cont3=suma1=suma2=suma3=0;
for(i=0;i<M;i++){
if(T[i]<=20){
cont1=cont1+1;
suma1=suma1+T[i];}
else {
if(20<T[i]&&T[i]<40){
cont2=cont2+1;
suma2=suma2+T[i];}
else {
cont3=cont3+1;
suma3=suma3+T[i];}}
}
cout<<"\nLos pesos ingresados son :"<<endl;
for(i=0;i<M;i++){
cout<<T[i]<<"\t";}
cout<<"\nLa cantidad de pesos menores iguales a 20 es: "<<cont1<<endl;
cout<<"La cantidad de pesos entre 20 y 40 es: "<<cont2<<endl;
cout<<"La cantidad de pesos mayores iguales a 40 es: "<<cont3<<endl;
system("PAUSE");
return 0;
}

58
Programacin C++ Maria Elena Ruiz Rivera

Ingese el numero de pesos :


5
Ingrese el valor del Peso :
14
56
89
23
10
Los pesos ingresados son :
14 56 89 23 10
La cantidad de pesos menores iguales a 20 es: 2
La cantidad de pesos entre 20 y 40 es: 1
La cantidad de pesos mayores iguales a 40 es: 2
Press any key to continue

66.Dado un arreglo determine cuantos son nmeros pares y cuantos son impares
,el promedio de los nmeros pares , el promedio de los nmeros impares como
tambin calcular la cantidad de los nmeros primos .X:
[1,3,11,28,17,14,7,6,9,15,4,8,10].

Programa en C++

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int A[]={1,3,11,28,17,14,7,6,9,15,4,8,10};
int sumapar=0,sumaimpar=0,cont,contpar=0,contimpar=0;
int divisor,contprimos;
double prompar,promimpar;
for(int i=0;i<13;i++){
if(A[i]%2==0){
sumapar=sumapar+A[i];
contpar=contpar+1;
}else{
sumaimpar=sumaimpar+A[i];
contimpar=contimpar+1;
}
}
prompar=sumapar/contpar;
promimpar=sumaimpar/contimpar;
contprimos=0;
for( i=0;i<13;i++){
cont=0;
for( divisor=1;divisor<A[i];divisor ++){
if(A[i]%divisor==0)
cont=cont+1;}
if(cont==2)
contprimos=contprimos+1;
}
cout<<"El Arreglo es :"<<endl;
for( i=0;i<13;i++)
cout<<A[i]<<endl;
cout<<"\nLa Cantidad de Numeros Pares es : "<<contpar<<endl;
cout<<" y Su Promedio es :"<<prompar<<endl;
cout<<"La Cantidad de Numeros Impares es : "<<contimpar<<endl;
cout<<" y Su Promedio es :"<<promimpar<<endl;
cout<<"La Cantidad de Numeros Primos es : "<<contprimos<<endl;
return 0;

59
Programacin C++ Maria Elena Ruiz Rivera

system("PAUSE");
}

El Arreglo es :
1
3
11
28
17
14
7
6
9
15
4
8
10
La Cantidad de Numeros Pares es : 6
y Su Promedio es :11
La Cantidad de Numeros Impares es : 7
y Su Promedio es :9
La Cantidad de Numeros Primos es : 2
Press any key to continue

67.Utilizando la estructura case elabore un programa que cargue un arreglo con


5 nmeros y los ordene en forma ascendente o descendiente segn la
opcin escogida .

Programa en C++

#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
int main(){
int V[5];
int i,j,aux,f;
cout<<"Ingrese los valores del arreglo :"<<endl;
for(i=0;i<5;i++){
cout<<"V["<<i+1<<"]=";
cin>>V[i]; }
cout<<"Elige una de las siguientes opciones para ordenar el arreglo :"<<endl;
cout<<"1 ascendente"<<endl<<"2 descendente"<<endl;
cin>>f;
cout<<"La opcion escogida es : "<<f<<endl;
switch(f){
case 1: for(i=0;i<4;i++){
for(j=i+1;j<5;j++)
if(V[i]>V[j]){
aux=V[i];
V[i]=V[j];
V[j]=aux;}}
break;
case 2: for(i=0;i<4;i++){
for(j=i+1;j<5;j++)
if(V[i]<V[j]){
aux=V[i];
V[i]=V[j];
V[j]=aux;}}

60
Programacin C++ Maria Elena Ruiz Rivera

break;
default : {cout<<"numero incorrecto"<<endl;
cout<<"El arreglo no esta ordenado "<<endl; }
break;
}
cout<<" El nuevo arreglo es :"<<endl;
for(i=0;i<5;i++){
cout<<V[i];
cout.width(3); }
cout<<endl;
return 0;
}

Ingrese los valores del arreglo :


V[1]=15
V[2]=89
V[3]=23
V[4]=14
V[5]=25
Elige una de las siguientes opciones para ordenar el arreglo :
1 ascendente
2 descendente
2
La opcion escogida es : 2
El nuevo arreglo es :
89 25 23 15 14
Press any key to continue

68.Elabore un programa que calcule una sucesin finita de numeros igualmente


espaciados y nos muestre la diferencia de estos tomados de dos a dos , los
datos ingresados deben ser las cordenadas de dichos numero ejemplo :
(1,2 ) es igual a decir que f(1)=2;

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<stdio.h>
# define N 30

void imp_ecuacion(int ,int ,int );


int main(){
int X[N];
int A[N];
int B[N];
int C[N];
int D[N];
int E[N];
int n,h;
cout<<"Ingrese el numero de datos : ";
cin>>n;
cout<<"Ingrese el valor la amplitud :";
cin>>h;
cout<<"Ingrese el valor de X 0"<<": ";
cin>>X[0];

for(int i=0 ;i<n;i++){


X[i]=X[0]+i*h;
cout<<"F(" <<X[i]<<")=";
cin>>A[i];

61
Programacin C++ Maria Elena Ruiz Rivera

if(n-1>=0){
for(int i=0 ;i<n-1;i++){
B[i]=A[i+1]-A[i];}
}
if(n-2>=0){
for(int i=0 ;i<n-2;i++){

C[i]=B[i+1]-B[i];}}
if(n-3>=0){

for(int i=0 ;i<n-3;i++){

D[i]=C[i+1]-C[i];}
}
if(n-4>=0){
for(int i=0 ;i<n-4;i++){

E[i]=D[i+1]-D[i];}
}

cout<<"\nTabla de diferencia finita :"<<endl<<endl;


cout<<"X";
cout.width(6);
cout<<"F(x)"<<endl;
for(int t=0 ;t<n ;t++){

cout<<X[t];
cout.width(6);
cout<<A[t]<<endl;

if(B[t]>=0){
cout.width(12);
cout<<B[t]<<endl;}
if(C[t]>=0){
cout.width(18);
cout<<C[t]<<endl; }
if(D[t]>=0){
cout.width(24);
cout<<D[t] <<endl;}
if(E[t]>=0){
cout.width(30);
cout<<E[t] <<endl;}
}
cout<<endl;
return 0;
}

Ingrese el numero de datos :


5
Ingrese el valor la amplitud :
2
Ingrese el valor de X 0: 1

F(1)=2

F(3)=28

F(5)=126

62
Programacin C++ Maria Elena Ruiz Rivera

F(7)=344

F(9)=730

Tabla de diferencia finita :

x f(x)

1 2
26
72
48
0
3 28
98
120
48
0
5 126
218
168
48
7 344
386
216
9 730
602
11 1332

Press any key to continue

//Arreglos bidimensionales

69.Preparar un algoritmo que permita cargar un array bidimensional con los


nmeros del 1 al 15 y luego los imprima en la pantalla.

Pseudocdigo

Inicio {Pseu_array 1]
Variables X[1..3][1..5] ,I,J
For I=0 to 2 do
For J=0 to 4 do
X[I][J]=(I*5)+J+1;
Endfor
Endfor
For I=0 to 2 do
For J=0 to 4 do
Escribir(I,,J,X[I][J])
Endfor
Endfor
End

Programa en C++

63
Programacin C++ Maria Elena Ruiz Rivera

Mtodo # 1

#include<iostream.h>
#include<stdlib.h>
int main(){
int X[3][5];
int i,j;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
X[i][j]=(i*5)+j+1;}
}
cout<<"El Arreglo es X[3][5]: "<<endl;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
cout<<X[i][j]<<"\t"; }
cout<<endl; }
return 0;
system("PAUSE");
}

El Arreglo X[3][5] es :
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
Press any key to continue

70.Dada una matriz cuadrada de 4x4 ,prepare un algoritmo que llena de 0


dicha matriz excepto la diagonal principal donde debe asignar 1.

Pseudocdigo

Inicio{Pseu_array2}
Variables A[1...4] [1...4] ,I,J
For I=0 to 3 do
For J=0 to 3 do
If I=J then
A[I][J]=0
Else
A[I][J]=1
Endif
Endfor
Endfor
For I=0 to 3 do
For J=0 to 3 do
Escribir(I,,,J,A[I][J])
Endfor
Endfor
End

Programa en C++

Mtodo # 1

#include<iostream>
using namespace std;

64
Programacin C++ Maria Elena Ruiz Rivera

int main(){
int Diagonal [4][4] ;
for (int i=0; i <4; i++) {
for (int j=0; j < 4; j++) {
if (i == j) {
Diagonal[i][j]=1;
}else {
Diagonal[i][j] = 0;
}
}
}
cout<<"La Matriz Diagonal es :"<<endl;
for ( i=0; i < 4; i++) {
for (int j=0; j < 4; j++) {
cout<<Diagonal[i][j]<<"\t"; }
cout<<"\n "; }
return 0;
system("PAUSE");
}

La Matriz Diagonal es :
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Press any key to continue

71.Elabore un algoritmo que almacene las notas numricas enteras de un grupo


de 5 estudiantes con 4 notas cada uno , el programa debe averiguar el
promedio de cada estudiante segn sus notas.

Pseudocdigo

Inicio{Pseu_array3}
Variables A[1...5] [1...4] , I ,J ,Suma ,Prom ,Nota
For I=0 to 4 do
For j=0 to 3 do
Escribir ( Ingrese el Valor de las Notas )
Leer(Nota)
A[I][J]=Nota
Endfor
Endfor
For I=0 to 4 do
Suma=0
For J=0 to 3 do
Suma=Suma+A[I][J]
Endfor
Prom=Suma/4
Escribir(Promedio,Prom)
Endfor
End

Programa en C++

Mtodo # 1

#include<iostream>
#include<stdlib.h>
using namespace std;

65
Programacin C++ Maria Elena Ruiz Rivera

int main(){
float prom_g;
int suma2=0,i,j,suma,temp;
int A[5][5];
for(i=0;i<5;i++){
cout<<"Ingrese la nota del Alumno Numero "<<i+1<<":"<<endl;
for(j=0;j<4;j++){
cin>>temp;
if(temp>=0 && temp<=20)
A[i][j]=temp;
else {
A[i][j]=0;
cout<<"NOTA NO VALIDA"<<endl; }
}
}
for(i=0;i<5;i++){ //calculando el promedio por alumno
suma=0;
for(j=0;j<4;j++){
suma=suma+A[i][j];}
A[i][4]=suma/4;
}
for(i=0;i<5;i++) { //calculando el promedio general
suma2=suma2+A[i][4]; }
prom_g=suma2/5;
cout<<"\nLas Notas Ingresadas y sus Respectivos Promedios por Alumno
son :"<<endl;
cout<<"\n\tNotas"<<"\t\t\tPromedio"<<endl;
for(i=0;i<5;i++){
for(j=0;j<5;j++){
cout<<A[i][j]<<"\t";}
cout<<"\n"; }
cout<<"\n y El Promedio General es :"<<prom_g<<endl;
return 0;
}

Ingrese la nota del Alumno Numero 1:


14
15
16
20
Ingrese la nota del Alumno Numero 2:
14
16
14
17
Ingrese la nota del Alumno Numero 3:
56
NOTA NO VALIDA
14
15
13
Ingrese la nota del Alumno Numero 4:
14
18
17
19
Ingrese la nota del Alumno Numero 5:
14
10
6

66
Programacin C++ Maria Elena Ruiz Rivera

Las Notas Ingresadas y sus Respectivos Promedios por Alumno son :


Notas Promedio
14 15 16 20 16
14 16 14 17 15
0 14 15 13 10
14 18 17 19 17
14 10 6 9 9
y El Promedio General es :13
Press any key to continue

1. Preparar un algoritmo que permita cargar con


nmeros enteros un array bidimensional de
dimensin N por M, luego nos determine cuales
son primos e imprima cada numero primo como
tambin la cantidad de nmeros primos que
existe en dicha matriz.
Programa en C++

#include <iostream>
using namespace std;
int main(){
int n,m;
cout<<"Ingrese el numero de filas :"<<endl;
cin >>n;
cout<<"Ingrese el numero de colunnas :"<<endl;
cin >>m;
int A[10][10];int i,j, cont=0;int k;int suma;
for( i=0;i<n;i++){
for( j=0;j<m;j++){

for( k=1;k<=A[i][j];k++){
if(A[i][j]%k==0)
suma=suma+1;}
if(suma==2){
cont=cont+1;
cout<<("")<<endl;
cout<<" EL NUMERO ES PRIMO "<<endl;}
}
}
cout<<("")<<endl;
cout<<"LOS NUMEROS INGRESADOS SON :"<<endl;
cout<<("")<<endl;
for(i=0;i<n;i++){
for( j=0;j<m;j++){
cout<<A[i][j]<<"\t"; }
cout<<("\n"); }
cout<<("")<<endl;
cout<<"la cantidad de primos es :"<<cont<<endl;
return 0;
system("PAUSE");
}

67
Programacin C++ Maria Elena Ruiz Rivera

Ingrese el numero de filas :


3
Ingrese el numero de colunnas :
3
Ingrese los Numeros :
45
Ingrese los Numeros :
89
EL NUMERO ES PRIMO
Ingrese los Numeros :
47
EL NUMERO ES PRIMO
Ingrese los Numeros :
56
Ingrese los Numeros :
25
Ingrese los Numeros :
14
Ingrese los Numeros :
25
Ingrese los Numeros :
3
EL NUMERO ES PRIMO
Ingrese los Numeros :
9
LOS NUMEROS INGRESADOS SON :
45 89 47
56 25 14
25 3 9
la cantidad de primos es :3
Press any key to continue

//cadena de caracteres
72. Realiza un programa que pida el ingreso de una frase y que luego imprima la
cantidad de incidencias de un carcter ingresado por el teclado .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){
char ch;
char cadena[40];
int cont_1;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40); //leer
cout<<"Ingrese la ocurrencia en la cadena"<<endl;
ch=getchar();
cont_1=0;
for(int i=0;i<40;i++){
if(cadena[i]==ch)
cont_1=cont_1+1; }
cout<<"El numero de incidencias es : "<< cont_1<<endl;
return 0;
}

68
Programacin C++ Maria Elena Ruiz Rivera

Ingrese la cadena:
hola mundo
Ingrese la ocurrencia en la cadena
u
El numero de incidencias es : 1
Press any key to continue

73. Realiza un programa que pida el ingreso de una frase y que luego imprima la
cantidad de palabras que contiene .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){
char cadena[40];
char blanco=' ';
int cont;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40);//leer
cont=1;
for(int i=0;i<40;i++){
if(cadena[i]==blanco)
cont=cont+1; }
cout<<"El numero de palabras en la frase es : "<<cont<<endl;
return 0;
system("PAUSE");
}

Ingrese la cadena:
Disear y programar son actividades humanas .
El numero de palabras en la frase es : 6
Press any key to continue

74.Realiza un programa que reemplace todas las ocurrencias de la letra e por


la letra u en una frase cualquiera .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){
char cadena[40];
int i;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40); //leer
for( i=0;i<40;i++)
if(cadena[i]=='e')
cadena[i]='u';
cout<<"La nueva frase es:"<<endl;
for( i=0;i<40;i++){

69
Programacin C++ Maria Elena Ruiz Rivera

cout<<cadena[i]; }
cout<<endl;
return 0;
system("PAUSE");
}

Ingrese la cadena:
efectos electivos
La nueva frase es:
ufuctos uluctivos
Press any key to continue

75.Realiza un programa que pida el ingreso de una oracin y luego


descomponga cada una de sus partes y colquelas en lneas sucesivas .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){
char cadena[40];
int i;
for( i=0;i<40;i++){
cadena[i]=0; }
cout<<"Ingrese la oracin :"<<endl;
cin.getline(cadena,40);//leer
cout<<"La nueva oracin es : "<<endl;
for( i=0;i<40;i++){
if(cadena[i]!=' ')
cout<<cadena[i];
else
cout<<endl; }
cout<<endl;
return 0;
system("PAUSE");
}

Ingrese la oracion:
hola estudiantes de ahora.
La nueva oracion es :
hola
estudiantes
de
ahora.
Press any key to continue

76.Elabore un programa que cuente el numero de caracteres de la cadena y su


el tamao .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){

70
Programacin C++ Maria Elena Ruiz Rivera

char cadena[40];
int i,cont;
int n;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40);//leer
n=strlen(cadena);
cont=0;
char blanco=' ';
for(i=0;i<n;i++){
if(cadena[i]!=blanco)
cont=cont+1; }
cout<<"El numero de caracteres es :"<<cont<<endl;
cout<<"El tamao de la cadena es :"<<n<<endl;
return 0;
system("PAUSE");
}

Ingrese la cadena:
Maria Elena Ruiz Rivera
El numero de caracteres es :20
El tamao de la cadena es :23
Press any key to continue

77.Realiza un programa que pida el ingreso de una frase y luego la invierta .

Programa en C++

#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<conio.h>
int main(){
char cadena[40];
int n;
int i;
char tem;
cout<<"Ingrese texto: "<<endl;
cin.getline(cadena,40);
n=strlen(cadena);
for( i=0;i<n;i++){
for(int j=i+1;j<n;j++){
tem=cadena[i];
cadena[i]=cadena[j];
cadena[j]=tem; }
}
cout<<"La nueva frase es : "<<endl;
for( i=0;i<n;i++)
cout<<cadena[i];
cout<<endl;
return 0;
}

Ingrese texto:
cadena invertida
La nueva frase es :
aditrevni anedac
Press any key to continue

71
Programacin C++ Maria Elena Ruiz Rivera

78.Realiza un programa que lea una cadena y la convierta en mayscula .

Programa en C++

#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
int main(){
char cadena[40];
int n,i;
cout<<"Ingrese texto: "<<endl;
cin.getline(cadena,40);
n=strlen(cadena);
for(i=0;i<n;i++)
if(cadena[i]!='\0'){
if ((cadena[i]>='a')&&(cadena[i]<='z')){
cadena[i]='A'+cadena[i]-'a'; }
}
cout<<"El nuevo texto es :" <<endl;
for(i=0;i<n;i++)
cout<<cadena[i];
cout<<endl;
return 0;
}

Ingrese texto:
nueva cadena de caracteres.
El nuevo texto es :
NUEVA CADENA DE CARACTERES.
Press any key to continue

//funciones
79.Elabore un programa que defina una funcin mayor que nos ayude a
determinar el mayor de tres numeros decimales .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<conio.h>

double mayor( double , double ,double);

int main(){
double numero1;
double numero2;
double numero3;
cout<<"Ingrese los tres numeros decimales :"<<endl;
cin>> numero1>> numero2>> numero3;
cout<<"El mayor numero es : "<<mayor(numero1, numero2, numero3)<<endl;
return 0;
system("PAUSE");
}

double mayor( double x , double y ,double z){


double mayor=x;
if(y>mayor)
mayor=y;

72
Programacin C++ Maria Elena Ruiz Rivera

if(z>mayor)
mayor=z;
return mayor;
}

Ingrese los tres numeros decimales :


2.3
1.5
0.2
El mayor numero es : 2.3
Press any key to continue

80.Elabore un programa que contenga una funcin cuadrado definida por el


programador , que calcula y despliegue los cuadrados de los numeros
enteros del 1 al 10 .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int cuadrado(int);
int main(){
int x;
cout<<"Los numeros son :"<<endl;
for(x=1;x<=10;x++)
cout<<cuadrado(x)<<" ";
cout<<endl;
return 0;
system("PAUSE");
}

int cuadrado(int y){


return y*y;}

Los numeros son :


1 4 9 16 25 36 49 64 81 100
Press any key to continue

//recursividad

81.Elabore un programa que contenga una funcin factorial definida por el


programador utilizada en forma recursiva, que calcula y despliegue los
numeros y sus factoriales.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<iomanip>
long factorial(long);
int main(){
int i;
for(i=0;i<=10;i++){
cout<<i;
cout.width(2);
cout<<" ! = "<<factorial(i)<<endl; }
return 0;
system("PAUSE");

73
Programacin C++ Maria Elena Ruiz Rivera

long factorial(long numero){


if(numero<=1)
return 1;
else
return numero*factorial(numero-1); }

0!=1
1!=1
2!=2
3!=6
4 ! = 24
5 ! = 120
6 ! = 720
7 ! = 5040
8 ! = 40320
9 ! = 362880
10 ! = 3628800
Press any key to continue

82.Elabore un programa que contenga una funcin fibonacci que utilizada en


forma recursiva por el programador , calcule y despliegue la serie de
fibonacci .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<iomanip>
long fibonacci(long);
int main(){
int i;
long resultado,numero;
cout<<"Introduzca un numero entero :"<<endl;
cin>>numero;
for(i=1;i<=numero;i++){
resultado=fibonacci(i);
cout<<"Fibonacci (" <<i<< ") = "<<resultado<<endl; }
return 0;
system("PAUSE");
}

long fibonacci(long num){


if(num==0 || num==1)
return num;
else
return fibonacci( num-1)+fibonacci(num-2); }

Introduzca un numero entero :


10
Fibonacci (1) = 1
Fibonacci (2) = 1
Fibonacci (3) = 2
Fibonacci (4) = 3
Fibonacci (5) = 5
Fibonacci (6) = 8
Fibonacci (7) = 13
Fibonacci (8) = 21

74
Programacin C++ Maria Elena Ruiz Rivera

Fibonacci (9) = 34
Fibonacci (10) = 55
Press any key to continue

83.Elabore un programa que contenga una funcin producto definida por el


programador , que calcula y despliegue en forma recursiva el producto de
dos numeros enteros .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int producto(int , int );
int main(){
int x,y;
cout<<"Introduzca dos numeros :"<<endl;
cin>>x>>y;
cout<<"El resultado es : "<<producto(x,y)<<endl;
return 0;
system("PAUSE");
}

int producto(int a, int b){


if(b==1)
return a;
else
return a+producto(a,b-1); }

Introduzca dos nmeros :


5
18
El resultado es : 90
Press any key to continue

Funciones de array unidimensional


84.Elabore un programa que cargue un array de enteros con los nmeros del 1
al 10. /*Utilizando Funciones */

Programa en C++

#include<iostream.h>
#include<stdlib.h>
void imprimir(int [],int);
int main(){
int X[10],i=0;
while(i<10){
X[i]=i+1;
i++;}
imprimir(X,10);
return 0;
system("PAUSE");
}

void imprimir(int Y[],int tamanoArreglo){


tamanoArreglo=10;
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<< " Valor"<<endl;
int i=0;
while(i<10){

75
Programacin C++ Maria Elena Ruiz Rivera

cout<<"\t"<<i<<"\t"<<Y[i]<<endl;
i++;}
}

El Arreglo es :
Elemento Valor
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
Press any key to continue

85.Dado el siguiente arreglo unidimensional obtener la suma de los valores de


dicho arreglo e imprima el arreglo . /*Utilizando Funciones */

Programa en C++

#include<iostream.h>
#include<stdlib.h>
int suma(int[],int);
void imprimir(int [],int);
int main(){
int A[6]={12,25,15,32,28,14};
imprimir(A,6);
cout<<"La Suma del Arreglo es :"<<suma(A,6)<<endl;
return 0;
system ("PAUSE");
}

int suma(int B[],int tamanoArreglo){


tamanoArreglo=6;
int i=0,suma=0;
do{
suma=suma+B[i];
i++;}
while(i<=5);
return suma; }

void imprimir(int C[],int tamanoArreglo){


int i=0;
cout<<"El arreglo es :"<<endl;
do{
cout<<C[i]<<endl;
i=i+1;}
while(i<=5);}

El arreglo es :
12
25
15
32
28

76
Programacin C++ Maria Elena Ruiz Rivera

14
La suma el Arreglo es :126
Press any key to continue

86.Prepare un programa que inicialice los elementos de un arreglo T de 10


elementos a los valores: 2,4,6,,20 e imprima el arreglo . /*Utilizando
Funciones */

Programa en C++

#include<iostream.h>
#include<stdlib.h>
void imprime(int [],int);
void cargar(int [],int);
int main(){
int T[10];
cargar(T,10);
imprime(T,10);
return 0;
system("PAUSE");
}

void cargar(int Z[],int tamanoArreglo){


tamanoArreglo=10;
for(int i=0;i<10;i++)
Z[i]=2*(i+1); }

void imprime(int Y[],int tamanoArreglo){


tamanoArreglo=10;
cout<<" El Arreglo es :"<<endl;
cout<<" Elemento "<<" Valor"<<endl;
for(int i=0;i<10;i++)
cout<<"\t"<<i<<"\t"<<Y[i]<<endl;}

El Arreglo es :
Elemento Valor
0 2
1 4
2 6
3 8
4 10
5 12
6 14
7 16
8 18
9 20
Press any key to continue

87.Prepare un programa que ordene en forma creciente los datos de un arreglo


D con los siguientes valores : 5 , 3 ,1 ,7 ,2
D[5]={5,3,1,7,2} . /*Utilizando Funciones */

Programa en C++

#include<iostream.h>
#include<stdlib.h>
void Impresion (int [],int);
void Ordenacion (int [],int);

77
Programacin C++ Maria Elena Ruiz Rivera

int main(){
int D[5]={5,3,1,7,2};
Ordenacion (D,5);
Impresion ( D,5);
return 0;
system("PAUSE")
}

void Ordenacion (int A[],int tamanodelarreglo){


tamanodelarreglo=5;
int i=0,aux,j;
while(i<4){
for(j=i+1;j<4;j++){
if(A[i]>A[j]){
aux=A[i];
A[i]=A[j];
A[j]=aux;}
}
i++;
}
} //fin de la funcin Ordenacion

void Impresion (int B[],int tamanodelarreglo){


tamanodelarreglo=5;
cout<<"El Arreglo Ordenado es :"<<endl;
cout<<"Elemento"<<" Valor "<<endl;
for(int i=0;i<4;i++)
cout<<i<<"\t"<<B[i]<<endl; } //fin de la funcin Impresion

El arreglo Ordenado es :
Elemento Valor
0 1
1 3
2 5
3 7
Press any key to continue

88.Prepare un algoritmo que determine cuantos nmeros son perfectos , dado


un arreglo A de M elementos ,el arreglo esta compuesto por nmeros
enteros y M esta comprendido entre 1 y 100. /*Utilizando Funciones */

Programa en C++

#include<iostream.h>
#define Max 100
void cargar(int [],int);
void perfecto(int [],int);
int main(){
int A[Max],M;
cout<<"Ingrese el Orden del Arreglo :"<<endl;
cin>>M;
cargar(A,M);
perfecto(A,M);
return 0;
}

void cargar(int B[],int tamanoArreglo){


int i=0;
cout<<"Ingrese los Valores del Arreglo: "<<endl;
while(i<tamanoArreglo){

78
Programacin C++ Maria Elena Ruiz Rivera

cin>>B[i];
i++;}
}

void perfecto(int C[],int tamanoAreglo){


int k,suma, cont=0,i=0;
cout<<"El Numero :"<<endl;
while(i<tamanoAreglo){
suma=1 ;
k=2;
while(k<=C[i]/2){
if(C[i]%k==0) {
suma=suma +k;}
k++ ;}
if(suma==C[i])
cout<<"\t"<<C[i]<< " Es Perfecto"<<endl;
else
cout<<"\t"<<C[i]<< " No es Perfecto"<<endl;
i++;}
}

Ingrese el Orden del Arreglo :


3
Ingrese los Valores del Arreglo:
15
28
36
El Numero :
15 No es Perfecto
28 es Perfecto
36 No es Perfecto
Press any key to continue

89.Desarrolle un programa que ingrese M pesos en un arreglo ,luego cuente e


imprima la cantidad de pesos que existe en cada rango :
-Menores iguales a 20.
-Entre 20 y 40.
-Mayores o igual a 40.
/*Utilizando Funciones */

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#define Max 100
void ingresar(int [],int);
void clasificar(int [],int);
void imprimir(int [],int);
int main(){
int T[Max];
int M;
cout<<"Ingese el numero de pesos :"<<endl;
cin>>M;
ingresar(T,M);
clasificar(T,M);
imprimir(T,M);
system("PAUSE");
return 0;
}

79
Programacin C++ Maria Elena Ruiz Rivera

void ingresar(int A[],int M){


for(int i=0;i<M;i++){
cout<<"Ingrese el valor del Peso :"<<endl;
cin>>A[i]; }
}

void clasificar(int A[],int M){


int cont1=0,cont2=0,cont3=0;
for(int i=0;i<M;i++){
if(A[i]<=20)
cont1=cont1+1;
else {
if(20<A[i]&&A[i]<40)
cont2=cont2+1;

else
cont3=cont3+1; }
}
cout<<"\nLa cantidad de pesos menores iguales a 20 es: "<<cont1<<endl;
cout<<"La cantidad de pesos entre 20 y 40 es: "<<cont2<<endl;
cout<<"La cantidad de pesos mayores iguales a 40 es: "<<cont3<<endl; }

void imprimir(int A[],int M){


cout<<"\nLos pesos ingresados son :"<<endl;
for(int i=0;i<M;i++)
cout<<A[i]<<"\t";
}

Ingese el numero de pesos :


5
Ingrese el valor del Peso :
14
56
89
23
10
Los pesos ingresados son :
14 56 89 23 10
La cantidad de pesos menores iguales a 20 es: 2
La cantidad de pesos entre 20 y 40 es: 1
La cantidad de pesos mayores iguales a 40 es: 2
Press any key to continue

90.Dado un arreglo determine cuantos son nmeros pares y cuantos son


impares ,el promedio de los nmeros pares , el promedio de los nmeros
impares como tambin calcular la cantidad de los nmeros primos .X:
[1,3,11,28,17,14,7,6,9,15,4,8,10].
/*Utilizando Funciones */

Programa en C++

Mtodo # 1
#include<iostream.h>
#include<stdlib.h>
int suma_impar (int A[]);
int cont_par(int A[]);
int suma_par(int A[]);
int cont_impar(int A[]);
int cont_primo(int A[]);
double prom_pares(int A[]);

80
Programacin C++ Maria Elena Ruiz Rivera

double prom_impares(int A[]);


void imprimir(int A[13] );

int main(){
int A[]={1,3,11,28,17,14,7,6,9,15,4,8,10};
imprimir(A);
cout<<"\nLa Cantidad de Numeros Pares es : "<<cont_par(A)<<endl;
cout<<" y Su Promedio es :"<<prom_pares(A)<<endl;
cout<<"La Cantidad de Numeros Impares es : "<<cont_impar(A)<<endl;
cout<<" y Su Promedio es :"<<prom_impares(A)<<endl;
cout<<"La Cantidad de Numeros Primos es : "<<cont_primo(A)<<endl;
return 0;
system("PAUSE");
}

int suma_par(int A[13]){


int sumapar=0;
for(int i=0;i<13;i++){
if(A[i]%2==0)
sumapar=sumapar+A[i]; }
return sumapar;
}

int cont_par(int A[13]){


int contpar=0;
for(int i=0;i<13;i++){
if(A[i]%2==0)
contpar=contpar+1; }
return contpar;
}

int suma_impar (int A[13]){


int sumaimpar=0;
for(int i=0;i<13;i++){
if(A[i]%2!=0)
sumaimpar=sumaimpar+A[i]; }
return sumaimpar;
}

int cont_impar(int A[13]){


int contimpar=0;
for(int i=0;i<13;i++){
if(A[i]%2!=0)
contimpar=contimpar+1; }
return contimpar;
}

int cont_primo(int A[13]){


int cont=0,divisor,contprimos=0;
for( int i=0;i<13;i++){
cont=0;
for( divisor=1;divisor<A[i];divisor ++){
if(A[i]%divisor==0)
cont=cont+1;}
if(cont==2)
contprimos=contprimos+1;}
return contprimos;
}

double prom_pares(int A[13]){

81
Programacin C++ Maria Elena Ruiz Rivera

double prompar;
prompar=(suma_par( A)/cont_par( A));
return prompar;
}

double prom_impares(int A[13]){


double promimpar;
promimpar=(suma_impar( A)/cont_impar(A));
return promimpar;
}

void imprimir(int A[13]){


cout<<"El Arreglo es :"<<endl;
for( int i=0;i<13;i++)
cout<<A[i]<<endl;
}

Mtodo # 2
/*Utilizando Funciones */
#include<iostream.h>
#include<stdlib.h>
int suma_impar (int [],int);
int cont_par(int [],int);
int suma_par(int [],int);
int cont_impar(int [],int);
int cont_primo (int [],int);
double prom_pares(int [] ,int);
double prom_impares(int [] ,int);
void imprimir(int [],int );

int main(){
int A[]={1,3,11,28,17,14,7,6,9,15,4,8,10};
imprimir(A,13);
cout<<"\nLa Cantidad de Numeros Pares es : "<<cont_par(A,13)<<endl;
cout<<" y Su Promedio es :"<<prom_pares(A,13)<<endl;
cout<<"La Cantidad de Numeros Impares es : "<<cont_impar(A,13)<<endl;
cout<<" y Su Promedio es :"<<prom_impares(A,13)<<endl;
cout<<"La Cantidad de Numeros Primos es : "<<cont_primo(A,13)<<endl;
return 0;
system("PAUSE");
}

int suma_par(int A[],int N){


int sumapar=0;
for(int i=0;i<N;i++){
if(A[i]%2==0)
sumapar=sumapar+A[i]; }
return sumapar;
}

int cont_par(int A[],int N){


int contpar=0;
for(int i=0;i<N;i++){
if(A[i]%2==0)
contpar=contpar+1; }
return contpar;
}

int suma_impar (int A[],int N){


int sumaimpar=0;

82
Programacin C++ Maria Elena Ruiz Rivera

for(int i=0;i<N;i++){
if(A[i]%2!=0)
sumaimpar=sumaimpar+A[i];}
return sumaimpar;
}

int cont_impar(int A[],int N){


int contimpar=0;
for(int i=0;i<N;i++){
if(A[i]%2!=0)
contimpar=contimpar+1; }
return contimpar;
}

int cont_primo(int A[],int N){


int cont=0,divisor,contprimos=0;
for( int i=0;i<N;i++){
cont=0;
for( divisor=1;divisor<A[i];divisor ++){
if(A[i]%divisor==0)
cont=cont+1;}
if(cont==2)
contprimos=contprimos+1;}
return contprimos;
}

double prom_pares(int A[] ,int N){


double prompar;
prompar=(suma_par( A, N)/cont_par( A, N));
return prompar;
}

double prom_impares(int A[] ,int N){


double promimpar;
promimpar=(suma_impar( A, N)/cont_impar(A, N));
return promimpar;
}

void imprimir(int A[],int N ){


cout<<"El Arreglo es :"<<endl;
for( int i=0;i<N;i++)
cout<<A[i]<<endl;
}

El Arreglo es :
1
3
11
28
17
14
7
6
9
15
4
8
10
La Cantidad de Numeros Pares es : 6
y Su Promedio es :11

83
Programacin C++ Maria Elena Ruiz Rivera

La Cantidad de Numeros Impares es : 7


y Su Promedio es :9
La Cantidad de Numeros Primos es : 2
Press any key to continue

//Arreglos bidimensionales , funciones de arreglos


91.Preparar un algoritmo que permita cargar un array bidimensional con los
nmeros del 1 al 15 y luego los imprima en la pantalla. /*Utilizando
Funciones */

Programa en C++
Mtodo # 1
#include<iostream.h>
#include<stdlib.h>
void ingresar(int X[3][5]);
void imprimir(int X[3][5]);

int main()
{
int X[3][5];
ingresar(X);
imprimir(X);
return 0;
system("PAUSE");
}

void ingresar(int X[3][5]){


int i,j;
for(i=0;i<3;i++){
for(j=0;j<5;j++){
X[i][j]=(i*5)+j+1;}
}}

void imprimir(int X[3][5]){


cout<<"El Arreglo es X[3][5]: "<<endl;
for(int i=0;i<3;i++){
for(int j=0;j<5;j++){
cout<<X[i][j]<<"\t"; }
cout<<endl; }
}

El Arreglo X[3][5] es :
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
Press any key to continue

92.Dada una matriz cuadrada de 4x4 ,prepare un algoritmo que llena de 0


dicha matriz ,excepto la diagonal principal donde debe asignar 1.
/*Utilizando Funciones */

Programa en C++

Mtodo # 1
#include<iostream>
using namespace std;
int comparacion( int Diagonal[4][4] );
void impresion( int Diagonal[4][4]);

84
Programacin C++ Maria Elena Ruiz Rivera

int main(){
int Diagonal[4][4];
comparacion(Diagonal);
impresion(Diagonal);
return 0;
system ("PAUSE");
}

int comparacion( int Diagonal[4][4]){


int c;
for (int i=0; i <4; i++) {
for (int j=0; j < 4; j++) {
if (i == j) {
Diagonal[i][j]=1;
c=1;
}else {
Diagonal[i][j] = 0;
c=0;
}
}
}
return c;
}

void impresion(int Diagonal[4][4]){


cout<<"La Matriz Diagonal es :"<<endl;
for ( int i=0; i < 4; i++) {
for (int j=0; j < 4; j++) {
cout<<Diagonal[i][j]<<"\t"; }
cout<<"\n "; }
}

La Matriz Diagonal es :
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
Press any key to continue

93.Elabore un algoritmo que almacene las notas numricas enteras de un grupo


de 5 estudiantes con 4 notas cada uno , el programa debe averiguar el
promedio de cada estudiante segn sus notas. /*Utilizando Funciones */

Programa en C++

Mtodo # 1
#include<iostream>
#include<stdlib.h>
using namespace std;
void ingresar(int A[5][5]);
void promedio(int A[5][5]);
float promedio_general(int A[5][5]);
void imprimir(int A[5][5]);
int main(){
int A[5][5];
ingresar(A);
promedio(A);
imprimir(A);
return 0;

85
Programacin C++ Maria Elena Ruiz Rivera

void ingresar(int A[5][5]){// 5 porque separo una colunna para el promedio por
alumno
int temp;
for(int i=0;i<5;i++){
cout<<"Ingrese la nota del Alumno Numero "<<i+1<<":"<<endl;
for(int j=0;j<4;j++){
cin>>temp;
if(temp>=0 && temp<=20)//cargando notas de 0 a 20
A[i][j]=temp;
else{
A[i][j]=0;
cout<<"NOTA NO VALIDA"<<endl; }
}
}
}

void promedio(int A[5][5]){


int suma;
for(int i=0;i<5;i++){//calculando el promedio por alumno
suma=0;
for(int j=0;j<4;j++)
suma=suma+A[i][j];
A[i][4]=suma/4; }
}

float promedio_general(int A[5][5]){


int suma2=0;
float prom_g;
for(int i=0;i<5;i++) { //calculando el promedio general
suma2=suma2+A[i][4]; }
return prom_g=suma2/5;
}

void imprimir(int A[5][5]){


cout<<"\nLas Notas Ingresadas y sus Respectivos Promedios por Alumno
son :"<<endl;
cout<<"\n\tNotas"<<"\t\t\tPromedio"<<endl;
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
cout<<A[i][j]<<"\t"; }
cout<<"\n"; }
cout<<"\n y El Promedio General es :"<< promedio_general(A)<<endl;
}

Mtodo # 2
#include<iostream>
#include<stdlib.h>
using namespace std;
const int calif= 5;// 5 calificaciones porque separo una colunna para el promedio
por alumno
/*Funciones prototipo ,solo es necesario especificar el numero de filas de la matriz*/
void ingresar(int n,int A[][calif]);
void promedio(int n,int A[][calif]);
float promedio_general(int n,int A[][calif]);
void imprimir(int n,int A[][calif]);
int main(){
int alum=5;
int Estudiante[calif][ calif];

86
Programacin C++ Maria Elena Ruiz Rivera

ingresar( alum,Estudiante);
promedio( alum,Estudiante);
imprimir( alum,Estudiante);
return 0;
}

void ingresar(int alum,int A[][ calif]){


int temp;
for(int i=0;i<alum;i++){
cout<<"Ingrese la nota del Alumno Numero "<<i+1<<":"<<endl;
for(int j=0;j<calif-1;j++){
cin>>temp;
if(temp>=0 && temp<=20) //cargando notas de 0 a 20
A[i][j]=temp;
else {
A[i][j]=0;//llega con cero si la nota no es valida
cout<<"NOTA NO VALIDA"<<endl; }
}
}
}

void promedio(int alum,int A[][ calif]){


int suma;
for(int i=0;i<alum;i++){//calculando el promedio por alumno
suma=0;
for(int j=0;j<calif-1;j++){
suma=suma+A[i][j]; }
A[i][4]=suma/4; }
}

float promedio_general(int alum,int A[][ calif]){


int suma2=0;
float prom_g;
for(int i=0;i<alum;i++){ //calculando el promedio general
suma2=suma2+A[i][4]; }
return prom_g=suma2/5;
}

void imprimir(int alum,int A[ ][ calif]){


cout<<"\nLas Notas Ingresadas y sus Respectivos Promedios por Alumno
son :"<<endl;
cout<<"\n\tNotas"<<"\t\t\tPromedio"<<endl;
for(int i=0;i<alum;i++){
for(int j=0;j<calif;j++){
cout<<A[i][j]<<"\t"; }
cout<<"\n";}
cout<<"\n y El Promedio General es :"<< promedio_general(5,A)<<endl;
}

Ingrese la nota del Alumno Numero 1:


14
15
16
20
Ingrese la nota del Alumno Numero 2:
14
16
14
17
Ingrese la nota del Alumno Numero 3:

87
Programacin C++ Maria Elena Ruiz Rivera

56
NOTA NO VALIDA
14
15
13
Ingrese la nota del Alumno Numero 4:
14
18
17
19
Ingrese la nota del Alumno Numero 5:
14
10
6
9
Las Notas Ingresadas y sus Respectivos Promedios por Alumno son :

Notas Promedio
14 15 16 20 16
14 16 14 17 15
0 14 15 13 10
14 18 17 19 17
14 10 6 9 9
y El Promedio General es :13
Press any key to continue

//Clases
Elabore un programa utilizando la poo el cual defina la clase cuadrado en la cual
contega funciones para calculao el area, permetro y semiperimetro de un
cuadrado de lado N .

Programa en C++
#include<iostream>
#include<stdlib.h>
using namespace std;
//funciones mienbro
//una clase en la (clas)c++ evoluciona a partir de una struc
//el acceso a las datos mienbro de una clase son privados
class cuadrado{
public :
//funciones mienbro
void inicio (float a){lado=a;}//procedimento de inicio
double area(){return lado*lado;}
double perimetro(){return 4.0*lado;}
double semiperimetro(){return perimetro()/2.0;}
private:
float lado ;
};
int main(){
float a;
cout<<"Ingrese el lado del cuadrado :";
cin>>a;
cuadrado n;
n.inicio(a);
cout<<"AREA :"<<n.area()<<endl;
cout<<"PERIMETRO :"<<n.perimetro()<<endl;
cout<<"SSEMIPERIMETRO :"<<n.semiperimetro()<<endl;
system("PAUSE");

88
Programacin C++ Maria Elena Ruiz Rivera

return 0;
}

Ingrese el lado del cuadrado :6


AREA :36
PERIMETRO :24
SSEMIPERIMETRO :12
Presione una tecla para continuar . . .

Elabore un programa utilizando la poo el cual defina la clase cuadrado en la cual


contega un constructor inicializado y funciones para calculao el area, permetro
y semiperimetro de un cuadrado de lado N .

Programa en C++
#include<iostream >
#include<stdlib.h>
using namespace std ;
class cuadrado {
public : //obseve que el constructor lleva el mismo nombre de la clase
cuadrado(float a ){lado=a;} //constructor
double area(){return lado*lado;}
double perimetro(){return 4.0*lado;}
double semiperimetro(){return perimetro()/2.0;}
private:
float lado ;
};

int main (){


float a;
cout<<"Ingrese el lado del cuadrado"<<endl;
cin>>a;
/*declarando un objeto n de la clase cuadrado y activando el constructor*/
cuadrado x(a);
cout<<"AREA :"<<x.area()<<endl;
cout<<"PERIMETRO :"<<x.perimetro()<<endl;
cout<<"SSEMIPERIMETRO :"<<x.semiperimetro()<<endl;
system("PAUSE");
return 0;
}

Ingrese el lado del cuadrado :5


AREA :25
PERIMETRO :20
SSEMIPERIMETRO :10
Presione una tecla para continuar . . .

Elabore un programa utilizando la poo el cual defina la clase cuadrado en la cual


contega un constructor inicializado y otro por defecto ai como tambien
funciones para calculao el area, permetro y semiperimetro de un cuadrado de
lado N .

Programa en C++
#include<iostream>
#include<stdlib.h>
using namespace std;
class rectangulo{

89
Programacin C++ Maria Elena Ruiz Rivera

public:
rectangulo(){}; //constructor vacio
rectangulo(float a,float b){//constructor
altura=a;
base=b; }
double area(){return altura*base;}
double perimetro(){return (2*altura+2*base); }
double semiperimetro(){ return perimetro()/2; }
private:
float altura;
float base;
};
int main(){
float base=4;
float altura=2;
rectangulo z; //activando constructor vacio
z=rectangulo(base, altura); //activando el segundo constructor
cout<<"area:"<<z.area()<<endl;
cout<<"perimetro:"<<z.perimetro()<<endl;
cout<<"semiperimetro:"<<z.semiperimetro()<<endl;
system("pause");
return 0;
}

area:8
perimetro:12
semiperimetro:6
Presione una tecla para continuar . . .

94.Elabore un programa utilizando la poo que calcule el rea , permetro y


semiprimetro de un rectngulo cuyos lados son ingresados desde el teclado.

Programa en C++

#include <iostream>
#include<stdlib.h>
using namespace std;
class rectangulo {
public:
rectangulo (float a,float l ){ancho=a;largo=l;}
double area (){return largo*ancho;}
double perimetro (){return 2.0*(largo+ancho);}
double semiperimetro(){return perimetro()/2.0;}
private :
float ancho;
float largo ;
};

int main(){
float a,b;
cout<<"Ingrese el largo del rectangulo :";
cin>>b;
cout<<"Ingrese el ancho del rectangulo :";
cin>>a;
rectangulo n(a,b); //declarando un objeto del a clase rectangulo con constructor
cout<<"AREA :"<<n.area()<<endl;
cout<<"PERIMETRO :"<<n.perimetro()<<endl;
cout<<"SEMIPERIMETRO :"<<n.semiperimetro()<<endl;
system("PAUSE");

90
Programacin C++ Maria Elena Ruiz Rivera

return 0;
}

Ingrese el largo del rectangulo :5


Ingrese el ancho del rectangulo :4
AREA :20
PERIMETRO :18
SEMIPERIMETRO :9
Presione una tecla para continuar . . .

95.Elabore un programa utilizando la poo que calcule el rea ,la altura ,


permetro y semiprimetro de un triangulo cuyos lados son ingresados desde
el teclado.

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<math.h>
using namespace std;
class triangulo{
float lado1;
float lado2;
float lado3;
public :
triangulo(float a,float b,float c){lado1=a,lado2=b,lado3=c;}
double perimetro (){return lado1+lado2+lado3;}
double altura(){
double p=semiperimetro();
double a=sqrt(p*(p-lado1)*(p-lado2)*(p-lado3));
double d=(2*a)/lado3;
return d; }
double area (){ return altura()*lado3;}
double semiperimetro(){return perimetro()/2.0; }
};

int main (){


float x,y,z;
cout<<"ingrese el primer lado : "<<endl;
cin >>x;
cout<<"ingrese el segundo lado :"<<endl;
cin >>y;
cout<<"ingrese el tercer lado :"<<endl;
cin >>z;
triangulo w(x,y,z);
cout<<"ALTURA :"<<w.altura()<<endl;
cout<<"AREA : "<<w.area()<<endl;
cout<<"PERIMETRO : "<<w.perimetro()<<endl;
cout<<"SEMIPERIMETRO : "<<w.semiperimetro()<<endl;
system ("PAUSE");
return 0;
}

Ingrese el primer lado :5


Ingrese el segundo lado :4
Ingrese el tercer lado :3
ALTURA :4
AREA : 12
PERIMETRO : 12

91
Programacin C++ Maria Elena Ruiz Rivera

SEMIPERIMETRO : 6
Presione una tecla para continuar . . .

96.Elabore un programa utilizando la poo que calcule el rea y longitud de una


circunferencia cuyo radio es ingresados desde el teclado.

Programa en C++
#include<iostream >
#include<stdlib.h>
using namespace std;
#define PI 3.1415896
class circunferencia{
float radio;
public:
circunferencia(float a){radio =a;}
double area(){return radio*radio*PI;}
double longitud(){return 2*PI*radio;}
};
int main(){
float x;
cout<<"Ingrese el radio :";
cin>>x;
circunferencia A(x);
cout<<"AREA :"<<A.area()<<endl;
cout<<"LONGITUD :"<<A.longitud()<<endl;
system("PAUSE");
return 0;
}

Ingrese el radio :5
AREA :78.5397
LONGITUD :31.4159
Presione una tecla para continuar . . .

97.Elabore un programa utilizando la poo que calcule si un numero ingresado


desde el teclado es perfecto .

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
class perfecto{
private:
int numero;
public:
perfecto();
void ingresar();
int divisible();
int comparar();
};

perfecto::perfecto(){
cout<<"Ingrese numero :"<<endl;

92
Programacin C++ Maria Elena Ruiz Rivera

cin>>numero;
}

void perfecto::ingresar(){
cout <<numero;
}

int perfecto::divisible(){
int i,suma=0;
for(i=0;i<=numero/2;i++)
suma=suma+i;
return suma;
}

int perfecto::comparar(){
if(numero==divisible()){
cout <<"es perfecto"<<endl;
return numero;}
else {
return numero;}
}

int main(){
perfecto l;
cout<<"El numero "<<l.comparar()<< " no es perfecto . "<<endl;
system("PAUSE");
return 0;
}

Ingrese numero :
14
El numero 14 no es perfecto .
Presione una tecla para continuar . . .

98.Elabore un programa utilizando la poo que identifique si un numero es


perfecto o no para una cantidad N de numeros ingresada desde el teclado.

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
class perfecto{
private:
int numero;
public:
perfecto();
void ingresar();
int divisible();
void comparar();
};

perfecto::perfecto(){
cout<<"Ingrese numero :";
cin>>numero;
}

93
Programacin C++ Maria Elena Ruiz Rivera

void perfecto::ingresar(){
cout <<numero;
}

int perfecto::divisible(){
int i,suma=1;
for(i=2;i<=numero/2;i++)
if(numero%i==0)
suma=suma+i;
return suma;
}

void perfecto::comparar(){
if(numero==divisible())
cout <<"El numero "<<numero<<" es perfecto";
else
cout<<"El numero "<<numero<<" no es perfecto";
}

int main(){
int n;
cout<<"Ingrese la cantidad de numeros :";
cin>>n;
for(int i=0;i<n;i++){
perfecto l;
l.comparar();
cout<<endl;}
system("PAUSE");
return 0;
}

Ingrese la cantidad de numeros :5


Ingrese numero :14
El numero 14 no es perfecto
Ingrese numero :8
El numero 8 no es perfecto
Ingrese numero :6
El numero 6 es perfecto
Ingrese numero :10
El numero 10 no es perfecto
Ingrese numero :28
El numero 28 es perfecto
Presione una tecla para continuar . . .

99.Elabore un programa utilizando la POO en el que se pueda registrar el


nombre del vendedor, la mayor venta, los ingresos,el total, y el promedio de
ventas anuales.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
//una clase vendedor
class vendedor{
public:
vendedor();//constructor
void ingresoVentasAnuales();

94
Programacin C++ Maria Elena Ruiz Rivera

void imprimeVentasAnuales();
double totalVentasAnuales();
double mayorVentaAnual();
double promVentas();
private:
char nombre[40];
double ventas[12];
};

//funciones miembro
vendedor::vendedor(){
char nom[40];
cout<<"Ingrese nombre del vendedor:"<<endl;
gets(nom);
strcpy(nombre,nom);
//inicializar array de ventas anuales
for(int i=0;i<12;i++)
ventas[i]=0.0;}

void vendedor::ingresoVentasAnuales(){
for(int i=0;i<12;i++){
cout<<"Ingrese monto de las ventas del mes"<<i+1<<":";
cin>>ventas[i];}}

void vendedor::imprimeVentasAnuales(){
cout<<"\n Vendedor:"<<endl;
puts(nombre);
for(int i=0;i<12;i++)
cout<<"mes"<<i+1<<":"<<ventas[i]<<endl;}

double vendedor::totalVentasAnuales(){
double A=0.0;
for(int i=0;i<12;i++)

A=ventas[i]+A;
return A;}

double vendedor::mayorVentaAnual(){
double mayor=-1.0;
for(int i=0;i<12;i++)
if(ventas[i]>mayor)
mayor=ventas[i];
return mayor;}

double vendedor::promVentas(){
return totalVentasAnuales()/12.0;}

int main(){
vendedor v;
v.ingresoVentasAnuales();
v.imprimeVentasAnuales();
cout<<"Total venta anual:"<<v.totalVentasAnuales()<<endl ;
cout<<"Mayor renta:"<<v.mayorVentaAnual()<<endl ;
cout<<"Promedio anual de ventas:"<<v.promVentas()<<endl ;
system("PAUSE");
return 0;69
}

Ingrese nombre del vendedor:

95
Programacin C++ Maria Elena Ruiz Rivera

Claudia
Ingrese monto de las ventas del mes1: 50
Ingrese monto de las ventas del mes2: 46
Ingrese monto de las ventas del mes3: 88
Ingrese monto de las ventas del mes4: 56
Ingrese monto de las ventas del mes5: 38
Ingrese monto de las ventas del mes6: 94
Ingrese monto de las ventas del mes7: 46
Ingrese monto de las ventas del mes8: 57
Ingrese monto de las ventas del mes9: 62
Ingrese monto de las ventas del mes10: 89
Ingrese monto de las ventas del mes11: 58
Ingrese monto de las ventas del mes12: 93
Vendedor:
Claudia
mes1:50
mes2:46
mes3:88
mes4:56
mes5:38
mes6:94
mes7:46
mes8:57
mes9:62
mes10:89
mes11:58
mes12:93
Total venta anual:777
Mayor renta:94
Promedio anual de ventas:64.75
Presione una tecla para continuar . . .

100. Elabore un programa utilizando la POO en el que nos muestre la seri de


fibonacci.

Programa en C++

#include<stdio.h>
#include<iostream>
//una clase fibonacci
using namespace std;
const int MAX=50;
class fibonacci{
public:
fibonacci(int);//constructor
void printSerieFibo(void);//imprime la serie
int getTermino(int);//calcular termino n-esimo
private:
int term[MAX];
int n;//tamao del array
int indice;//indice del array
};

fibonacci::fibonacci(int tam)
{

96
Programacin C++ Maria Elena Ruiz Rivera

fibonacci::n=tam;
fibonacci::indice=0;
for(int i=0;i<n;i++)
{
term[i]=getTermino(i);
}
}
void fibonacci::printSerieFibo(void){
int i;
for(i=0;i<n;i++)
cout<<term[i]<<" ";
cout<<endl;
}
int fibonacci::getTermino(int n)
{
if(n==0 || n==1)//alt 124
return n;
else
return getTermino(n-1)+getTermino(n-2);
}

int main()

{
fibonacci f(10);
f.printSerieFibo();
cout<<endl;
system("PAUSE");
return 0;

0
1
1
2
3
5
8
13
21
34
Presione una tecla para continuar . . .

101. Utilizando la POO elabore un programa que imprima un arreglo en el cual


la diagonal principal sea 1 y 0 en caso contrario , la dimension del arreglo
debe ser ingresado por el teclado.

Programa en C++
#include<iostream>
using namespace std;
#define N 30

97
Programacin C++ Maria Elena Ruiz Rivera

class diagonal
{
public:
diagonal(int m){n=m;};
void impresion();
int comparacion();

private:
int i,j,n;
int A[N][N];
};

int diagonal::comparacion(){
int c;
for ( i=0; i <n; i++) {
for ( j=0; j < n; j++) {
if (i == j) {
A[i][j]=1;
c=1;

}else {
A[i][j] = 0;
c=0;
}
}
}
return c;
}

void diagonal::impresion(){
for ( i=0; i < n; i++) {
for (int j=0; j < n; j++) {
cout<<A[i][j]<<"\t";
}
cout<<"\n ";
}
}

int main(){
int n;
cout<<" Introduzca el numero de filas y colunnas :"<<endl;
cin>>n;
diagonal D(n);
D.comparacion();
cout<<""<<endl;
D.impresion();
return 0;
}

Introduzca el numero de filas y colunnas : 8


1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1

98
Programacin C++ Maria Elena Ruiz Rivera

Press any key to continue

102. Elabora un programa que utilic un arreglo bidimensional que almacene


la nota
numrica entera de un grupo de cinco estudiantes ,con cuatro notas cada uno .
El programa debe tambin tener el promedio de cada estudiante segn sus cuatro
notas , identificar el promedio mayor y menor ,el numero de aprobados y
desaprobados .

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<stdio.h>
class registro{
public:
registro();
void ingresar();
void promedio_al();
int promedio_ge();
int aprobados();
int desaprobados();
int promedio_mayor();
int promedio_menor();
void imprimir();
private:
int A[4][11];
int i,j ;
};

registro::registro(){ //inicializa la matriz con ceros


}

void registro::ingresar(){ //cargamos la matriz con notas validas entre 0 y 20


int temp;
for(i=0;i<4;i++){
cout<<"Ingrese la nota de alumno numero "<<i+1 <<endl;
for(j=0;j<10;j++){
cout<<" nota "<<j+1<<" : ";
cin>>temp;
if(temp>=0 && temp<=20)
A[i][j]=temp;
else {
A[i][j]=0;
cout<<"nota no valida"<<endl;}
} }}

void registro::promedio_al(){ //calculamos el promedio por alunmo


int suma;
for(i=0;i<4;i++){
suma=0;
for(j=0;j<10;j++){
suma=suma+A[i][j];}
A[i][10]=suma/10; } }

int registro::promedio_ge(){ //calculamos el promedio general


int suma2=0;
int prom;
for(i=0;i<4;i++){

99
Programacin C++ Maria Elena Ruiz Rivera

suma2=suma2+A[i][10];}
prom=suma2/4;
return prom;
}

int registro::aprobados(){ //contamos el numero de aprobados


int cont=0;
for(i=0;i<4;i++){
if(A[i][10]>=11)
cont=cont+1;}
return cont;}

int registro::desaprobados(){ //contamos el numero de desaprobados


int cont1 =0;
for(i=0;i<4;i++){
if(A[i][10]<=10)
cont1=cont1+1;}
return cont1;
}

int registro::promedio_mayor(){ //mostramos el mayor pronedio


int mayor=0;
for(i=0;i<4;i++){
if(A[i][10]>=mayor)
mayor=A[i][10];}
return mayor;
}

int registro::promedio_menor(){ //mostramos el menor promedio


int menor=20;
for(i=0;i<4;i++){
if(A[i][10]<=menor)
menor=A[i][10];}
return menor;
}

void registro::imprimir(){ //damos formato e imprimos la matriz


cout.width(40);
cout.fill('_');
cout<<"Notas ";
cout.width(40);
cout.fill('_');
cout<<"Promedio"<<endl;

cout.fill('_');

for(i=0;i<4;i++){
for(j=0;j<11;j++){
cout<<A[i][j]<<"\t";}cout<<"\n";}}

int main(){ //intanciamos un objeto y ejecutamos


registro B;
B.ingresar();
B.promedio_al();
B.imprimir();
cout <<"\n El promedio final de la clase es :"<<B.promedio_ge()<<endl;
cout <<" El promedio mayor de la clase es :"<<B.promedio_mayor()<<endl;
cout <<" El promedio menor de la clase es :"<<B.promedio_menor()<<endl;
cout <<" El numero de aprobados de la clase es :"<<B.aprobados()<<endl;

100
Programacin C++ Maria Elena Ruiz Rivera

cout <<" El numero de desaprobados de la clase


es:"<<B.desaprobados()<<endl<<endl;
system("PAUSE");
return 0;
}

Ingrese la nota de alumno numero 1


nota 1 : 14
nota 2 : 15
nota 3 : 16
nota 4 : 10
nota 5 : 12
nota 6 : 11
nota 7 : 10
nota 8 : 17
nota 9 : 8
nota 10 : 9
Ingrese la nota de alumno numero 2
nota 1 : 10
nota 2 : 14
nota 3 : 1
nota 4 : 9
nota 5 : 0
nota 6 : 12
nota 7 : 14
nota 8 : 15
nota 9 : 16
nota 10 : 17
Ingrese la nota de alumno numero 3
nota 1 : 12
nota 2 : 10
nota 3 : 14
nota 4 : 15
nota 5 : 12
nota 6 : 14
nota 7 : 16
nota 8 : 17
nota 9 : 20
nota 10 : 11
Ingrese la nota de alumno numero 4
nota 1 : 14
nota 2 : 15
nota 3 : 17
nota 4 : 18
nota 5 : 14
nota 6 : 13
nota 7 : 12
nota 8 : 11
nota 9 : 10
nota 10 : 17
_______________________ Notas ______________________ Promedio
14 15 16 10 12 11 10 17 8 9 12
10 14 1 9 0 12 14 15 16 17 10
12 10 14 15 12 14 16 17 20 11 14
14 15 17 18 14 13 12 11 10 17 14
El promedio final de la clase es :12
El promedio mayor de la clase es :14
El promedio menor de la clase es :10
El numero de aprobados de la clase es :3
El numero de desaprobados de la clase es:1

101
Programacin C++ Maria Elena Ruiz Rivera

Presione una tecla para continuar . . .

CADENA DE CARACTERES en poo

103. Utilizando la POO elabore un prgrama que dada una frace nos muestre el
numero de caracteres , palabras y ocurrencias de un carcter ingresado por
teclado.

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
class frase
{
public:
frase();//constructor
int contador_c();
int contador_P();
int contador_o();
private:
char ch,n;
char cadena[40];
int cont_1;
int cont_2;
int cont_3;
};

frase::frase()//inicialisas las variables de la clase{


cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40);//leer
n=strlen(cadena);
cout<<"ingrese la ocurrencia en la cadena"<<endl;
ch=getchar(); }

int frase::contador_o(){
cont_1=0;
for(int i=0;i<40;i++)
{if(cadena[i]==ch)
cont_1=cont_1+1;}
return cont_1;
}

int frase::contador_P(){
cont_2=1;
for(int i=0;i<40;i++)
{
if(cadena[i]==' ')
cont_2=cont_2+1; }
return cont_2;
}

int frase::contador_c(){
int i,cont_3=0;
char blanco=' ';
for(i=0;i<n;i++){
if(cadena[i]!=blanco)
cont_3=cont_3+1;}

102
Programacin C++ Maria Elena Ruiz Rivera

return cont_3;
}

int main(){
frase l;
cout<<"El numero de caracteres es :"<<l.contador_c()<<endl;
cout<<"El numero de palabras es :"<<l.contador_P()<<endl;
cout<<"El numero de ocurencias es :"<<l.contador_o()<<endl;
system("PAUSE");
return 0;
}

Ingrese la cadena:
c++ es un lenguaje robusto y eficiente .
ingrese la ocurrencia en la cadena
El numero de caracteres es :32
El numero de palabras es :8
El numero de ocurencias es :0
Presione una tecla para continuar . . .

Array de objetos
104. Elabore un programa utilizando la POO en el cual podamos definir
un arreglo de 5 numeros y nos indique cual es perfecto y cual no lo es .

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
class perfecto{
private:
int numero;
public:
perfecto();
void ingresar();
int divisible();
int comparar();
};
perfecto::perfecto(){
cout<<"ingrese numero :"<<endl;
cin>>numero;
}

void perfecto::ingresar(){
cout <<numero;
}

int perfecto::divisible(){
int i,suma=0;
for(i=0;i<=numero/2;i++)
suma=suma+i;
return suma;
}

int perfecto::comparar(){
if(numero==divisible()){
cout <<"es perfecto"<<endl;

103
Programacin C++ Maria Elena Ruiz Rivera

return numero;}
else {
cout<<"no es perfecto"<<endl;
return numero;}
}

int main(){
perfecto l[5];
for(int i =0;i <5;i++)
cout<<l[i].comparar()<<endl;
system("PAUSE");
return 0;
}

Ingrese numero :
45
Ingrese numero :
23
Ingrese numero :
17
Ingrese numero :
19
Ingrese numero :
45
no es perfecto
45
no es perfecto
23
no es perfecto
17
no es perfecto
19
no es perfecto
45
Presione una tecla para continuar . . .

105. Elabore un programa utilizando la POO en el cual podamos definir


un arreglo de 5 numeros y nos indique cual es primo y cual no lo es .

Programa en C++

#include<iostream>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
using namespace std;
class primo{
private:
int numero;
int suma;
public:
primo();

int divisible();
void comparar();
};
primo::primo(){
cout<<"Ingrese numero :";
cin>>numero;

104
Programacin C++ Maria Elena Ruiz Rivera

int primo::divisible(){
int i,suma=0;
for(i=1;i<=numero;i++){
if(numero%i==0)
suma=suma+1;}
return suma;
}

void primo::comparar(){
if(divisible()==2)
cout <<"El numero "<<numero<<" es primo "<<endl;

else
cout <<"El numero "<<numero<<" no es primo "<<endl;

int main(){
primo l[5];
cout<<"Los numeros ingresados son : "<<endl;
for(int i =0;i <5;i++)
l[i].comparar();
system("PAUSE");
return 0;
}

Ingrese numero :19


Ingrese numero :23
Ingrese numero :5
Ingrese numero :6
Ingrese numero :89
Los numeros ingresados son :
El numero 19 es primo
El numero 23 es primo
El numero 5 es primo
El numero 6 no es primo
El numero 89 es primo
Presione una tecla para continuar . . .

105

You might also like