Professional Documents
Culture Documents
Ejercicio 1:
#include <cstdlib>
#include <iostream>
using namespace std;
void leer (int,int *);
int total (int,int *);
int mayor (int,int *);
int menor (int,int *);
float promedio(int,int);
void imprime (int,int,int,int,int *,float);
int main(int argc, char *argv[])
{
int modulos,t,may,men;
float prom;
cout<<"Introduzca la cantidad de modulos de cobro"<<endl;
cin>>modulos;
int *ap;
ap=new int [modulos];
leer(modulos,ap);
t=total (modulos,ap);
prom= promedio(modulos,t);
may= mayor(modulos,ap);
men= menor(modulos,ap);
imprime (modulos,t,may,men,ap,prom);
system("PAUSE");
return EXIT_SUCCESS;
}
void leer(int modulos,int *ap)
{
int i=0;
for (;i<modulos;i++)
{
cout<<"Introduzca la cantidad de autos que pasaron por el modulo:"<<i+1<<endl;
cin>>ap[i];
}
}
int total (int modulos,int *ap)
{
int i=0,t=0;
for(;i<modulos;i++)
{
t+=ap[i];
}
return t;
}
float promedio(int modulos,int t)
{
float prom;
prom= t/modulos;
return prom;
}
int mayor (int modulos,int *ap)
{
int i=0,m=ap[0],may=1;
for(;i<modulos;i++)
{
if(ap[i]>m)
{
may= i+1;
}
}
return may;
}
int menor (int modulos,int *ap)
{
int i=0,m=ap[0],men=1;
for(;i<modulos;i++)
{
if(ap[i]<m)
{
men= i+1;
}
}
return men;
}
void imprime (int modulos,int t,int may,int men ,int *ap,float prom)
{
int i=0;
cout<<"el numero de modulos de cobro es:"<<modulos<<endl;
cout<<"el total de autos que pasaron por los modulos es:"<<t<<endl;
cout<<"El modulo por el que pasaron mas autos fue:"<<may<<endl;
Ejercicio 2:
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
class serie
{
private:
int j,k;
float p,q,s;
public:
serie(int j1, int k1);
float factorial(int n);
float calcp();
float calcq();
void calcs();
};
serie::serie(int j1, int k1)
{
j=j1;
k=k1;
}
float serie::factorial(int n)
{
float facto=1;
if(n==0)
return 1;
else if(n!=0)
for (int i=1;i<=n;i++)
{
facto=facto*i;
}
return facto;
}
float serie::calcp()
{
float suma=0;
int x=1,n;
for (int i=1;i<=j;i++)
{
x= x*(i+1);
n=2*i;
suma+= x/factorial(n);
}
p=suma;
cout<<p<<endl;
}
float serie::calcq()
{
float sum=0,y;
int n=1;
for(int i=0;i<=k;i++)
{
y= pow(-1,i);
n= i*(i+1);
sum+=y/factorial(n);
}
q=sum;
cout<<q<<endl;
}
void serie::calcs()
{
float s,z;
z=p/q;
s=sqrt(z);
cout<<"El valor de s es: "<<s<<endl;
}
int main(int argc, char *argv[])
{
int j1,k1;
Ejercicio 3:
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
class pago
{
private:
char nombre[20];
float hras_t;
public:
pago(char nom[20],float horas);
float calcular_sueldo_total_dia();
void imprimirdatos();
};
pago::pago(char nom[20],float horas)
{
strcpy(nombre,nom);
hras_t=horas;
}
float pago::calcular_sueldo_total_dia()
{
float saldo;
if((hras_t>=1)&&(hras_t<=3))
{
saldo= hras_t*20;
}
else if((hras_t>=4)&&(hras_t<=6))
{
saldo=hras_t*40;
}
else
saldo=hras_t*80;
return saldo;
}
void pago::imprimirdatos()
{
system ("cls");
cout<<"El nombre del empleado es: "<<nombre<<endl;
cout<<"Las horas trabajadas por el empleado fueron: "<<hras_t<<endl;
cout<<"EL sueldo del trabajador es: "<<calcular_sueldo_total_dia()<<endl;
}
int main(int argc, char *argv[])
{
char nom[20];
int i=1;
float horas;
do
{
system ("cls");
cout<<"Ingrese el nombre del trabajador:"<<endl;
cin>>nom;
cout<<"Ingrese las horas trabajadas el dia de hoy:"<<endl;
cin>>horas;
if (horas<=10)
{
pago pago1(nom,horas);
pago1.imprimirdatos();
}
else
cout<<"No puede ingresar un numero mayor a 10"<<endl;
system("PAUSE");
}while(i==1);
system("PAUSE");
return EXIT_SUCCESS;
Ejercicio 4:
#include <cstdlib>
#include <iostream>
using namespace std;
class estudiante
{
private:
char nombre[20],boleta [10];
float *ap_calif;
int n;
public:
estudiante (char nom[20], char bol[10],float *ap);
void leer();
float promedio();
void imprimir();
~estudiante(){};
};
estudiante::estudiante(char nom[20], char bol[10],float *ap)
{
strcpy(nombre,nom);
strcpy(boleta,bol);
ap_calif=ap;
}
void estudiante::leer()
{
int i;
cout<<"Introduzca el nombre del alumno: "<<endl;
cin>>nombre;
cout<<"Introduzca la boleta del alumno"<<endl;
cin>>boleta;
cout<<"Introduzca el numero de materias"<<endl;
cin>>i;
n = i;
ap_calif=new float[i];
for(int j=0;j<i;j++)
{
cout<<"Introduzca la calificacion "<<j+1<<endl;
cin>>ap_calif[j];
}
}
float estudiante::promedio()
{
float sum=0,prom;
for(int i=0;i<n;i++)
{
sum+= ap_calif[i];
}
prom= sum/n;
return prom;
}
void estudiante::imprimir()
{
system("cls");
cout<<"EL alumno :"<<nombre<<endl;
cout<<"Con boleta:"<<boleta<<endl;
cout<<"Tiene un promedio de :"<<promedio()<<endl;
}
int main(int argc, char *argv[])
{
char nom[20],bol[10];
float *ap;
estudiante est1(nom,bol,ap);
est1.leer();
est1.imprimir();
system("PAUSE");
return EXIT_SUCCESS;
}
Ejercicio 5:
#include <cstdlib>
#include <iostream>
#include <string>
using namespace std;
class palindromo
{
private:
int lon;
char cad1[30];
public:
palindromo(char cad[30]);
void leer();
void tam();
void determina();
};
palindromo::palindromo(char cad[30])
{
strcpy(cad1,cad);
}
void palindromo::leer()
{
cout<<"Introduzca la palabra u oracion"<<endl;
cin.getline (cad1,30,'\n');
}
void palindromo::tam()
{
int i=0;
while(cad1[i]!='\0')
{
i++;
}
lon=i;
}
void palindromo::determina()
{
int i=0, j=lon,k=1;
while (i!=j-1)
{
while (cad1[i]==32)
{
i++;
}
while (cad1[j-1]==32)
{
j--;
}
if (cad1[i]==cad1[j-1])
{
i++;
j--;
k=1;
}
else if(cad1[i]!=cad1[j-1])
{
k=0;
i=j-1;
}
}
if(k==1)
{
cout<<"SI es un palindromo"<<endl;
}
else if(k==0)
{
cout<<"NO es palindromo"<<endl;
}
}
int main(int argc, char *argv[])
{
char cad[30];
palindromo pal1(cad);
pal1.leer();
pal1.tam();
pal1.determina();
system("PAUSE");
return EXIT_SUCCESS;
}
Ejercicio 6:
a)Explique cada tipo de constructor aqui declarado.
R=en el constructor por omision no se le asignan los valores que quieren que tengan las
variables que se estan enviando a la clase, mientras que en el constructor con parametros
uno puede dar el valor que se desea a los atributos de la clase.
b) Explique en que momento se ejecuta el constructor.
R= El constructor se genera al momento de declarar el objeto en el int main.
c) Determine por objeto A,B,C que constructor manda a llamar.
R= El objeto A manda a llamar al constructor por omision, el B al constructor con
parametros y el C al constructor copia.
d) Cual es el otro nombre por el cual se le conoce a los atributos y metodos de una
clase?
R=Los atributos tambien son conocidos como miembros dato, y los metodos como
funciones miembro.
e) Explique que pasa si no se declara ningun contructor en la clase.
R= si no se declara ningun constructor no se puede ejecutar los metodos.
f) Explique que pasa si no se declara nincgun destructor en la clase.
R= se genera un destructor por omision.
7 Defina los siguientes conceptos:
Clases:Estructuras que representan objetos del mundo real,En ellas ocurren Los procesos
lgicos.
Objeto:Se le conoce como la instancia de una clase, en si es lo que le da sentido a estas
Herencia: mediante esta es posible la creacin de nuevas clases basadas en las ya
Existentes.
Encapsulamiento: es la forma de proteger nuestros datos dentro del sistema, establece
los niveles de acceso a nuestros datos.
Polimorfismo: se puede definir como la capacidad que tienen los objetos de comportarse
de multiples formas sin olvidar que para esto se necesita una herencia.
Destructor: Un destructor en algunos lenguajes de programacin orientados a objetos es
un mtodo de una clase que se llama justo antes de una instancia de esa clase y se
elimina de la memoria. No todos los lenguajes de programacin orientados a objetos
suelen tener un destructor.
La contrapartida de un destructor es un constructor que se ejecuta cuando se crea el
objeto, se instancia y se lo inicializa.
Constructor
El objetivo de un constructor es el de inicializar un objeto cuando ste es creado.
Asignaremos los valores iniciales as como los procesos que sta clase deba realizar.
Mtodo: es una subrutina cuyo cdigo es definido en una clase y puede pertenecer tanto
a una clase, como es el caso de los mtodos de clase o estticos, como a un objeto, como
es el caso de losmtodos de instancia. Anlogamente a los procedimientos en los
lenguajes imperativos, un mtodo consiste generalmente de una serie de sentencias para
llevar a cabo una accin, un juego de parmetros de entrada que regularn dicha accin
o, posiblemente, un valor de salida (o valor de retorno) de algn tipo.
Atributos: los atributos son las caractersiticas individuales que diferencian un objeto de
otro y determinan su apariencia, estado u otras cualidades. Los atributos se guardan en
variables denominadas de instancia, y cada objeto particular puede tener valores
distintos para estas variables.
Mensaje: es la transmisin de informacin de un objeto a otro, mediante dos
mecanismos bien diferenciados:
1. Llamadas a mtodos
2. 2. Seales: un objeto A enva una Seal a un objeto B, que la procesa a travs de una Recepcin