Practica 1
Parte 1 “Cajas”
Programa que pedirá la cantidad de piezas que tendrán las
primeras 20 cajas, con esta información nos dara el promedio y la suma total de
las piezas dentro de las cajas, la cantidad de cajas que tendrán menos de 50
piezas y cuales cajas tienen el mayor número de piezas.
Código
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#define TAM 50
using namespace std;
void captura (int banda [])
{ int
ref;
printf
("Introduzca la cantidad de piezas dentro de las primeras 20
cajas\n");
printf
("En un rango de 20 a 40 piezas\n");
for
(int i=1;i<=20;i++)
{cout<<"Introduce
la cantidad de piezas de la caja
"<<i<<":\n"<<endl;
cin>>ref;
if(ref<20||ref>40)
{ cout<<"No
esta en el rango declarado"<<"intenta de
nuevo"<<endl;
i--; }
banda[i]=ref; }
system("pause");}
void prom (int banda[])
{ int
suma=0;
float
prome=0;
for(int
j=1;j<=20;j++)
{ suma+=banda[j]; }
prome=suma/20;
cout<<"La
suma total es de: "<<suma<<endl;
cout<<"El
promedio fue de: "<<prome<<endl;
system
("pause");}
void men50 (int banda[]){
int
contador=0;
for(int
i=1;i<=10;i++)
{ if
(banda[i]<50) {
contador++; } }
cout<<"cajas
con menos de 50 piezas: "<<contador<<endl;
system
("pause");}
void mayme (int banda[]){
int
mayor=0, menor=100000, meni=0, mayi=0,cont=0,conte=0;
for(int
i=1;i<=10;i++)
{ if
(banda[i]>mayor){
mayor=banda[i];
mayi=i; }
if(banda[i]<menor) {
menor=banda[i];
meni=i; }
if
(banda[i]==mayor) {
cont++;}
if(banda[i]==menor) {
conte++; }}
cout<<"Caja
con mayor numero "<<mayi<<"\n"<<"Existen
"<<cont<<" cajas con la misma cantidad de
piezas"<<endl;
cout<<"Caja
con menor numero "<<meni<<"\n"<<"Existen
"<<conte<<" cajas con la misma cantidad de
piezas"<<endl;
system
("pause");}
int main()
{ int
banda[TAM],op; do
{ system
("cls");
cout<<"Ejercicio
de las cajas \n"<<endl;
cout<<"1.-
Captura de datos"<<endl;
cout<<"2.-Promedio y suma de los
datos "<<endl;
cout<<"3.-Cantidad de cajas con menor que 50 piezas
"<<endl;
cout<<"4.-Cajas con mayor numero "<<endl;
cout<<"5.-Salir"<<endl;
cin>>op;
switch(op)
{ case
1:
system
("pause");
system
("cls");
captura(banda);
break;
case
2:
system
("pause");
system ("cls");
prom(banda);
break;
case
3:
system ("pause");
system ("cls");
men50(banda);
break;
case
4:
system ("pause");
system ("cls");
mayme(banda);
break;
case
5:
printf
("Hasta luego :3");
break;
default:
printf("Opcion no valida...\n\n");
system
("pause");
break;
}
}while(op!=5);
getch();}
Parte 2 “Edificio”
Programa que pedirá el numero de alumnos de una escuela
en un rango de 28 a 35, mediate estos datos nos dara el total de alumnos por
piso, la cantidad de alumnos en el piso 3, el numero de hombres que tendrá cada
salón 5 de cada piso y el total de mujeres de los salones 2, 3 y 4 de cada
piso.
Código
#include <stdio.h>
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#define COL 6
#define FIL 4
using namespace std;
void captura(int A[FIL][COL])
{
for (int f=1; f<FIL; f++)
{
cout<<"Introduce el numero de alumnos de la
escuela en un rango de 28 a 35"<<endl;
for (int c=1; c<COL; c++)
{
cout<<"Piso ["<<f<<"], Salon
["<<c<<"]"<<endl;
cin>>A[f][c];
if
(A[f][c]<28||A[f][c]>35)
{
cout<<"No esta en el rango declarado intenta de
nuevo"<<endl;
A[f][c]--;
}
}
}
system("pause");
}
void cantidad (int A[FIL] [COL])
{
int
suma=0;
for
(int d=1; d<FIL; d++)
{
for (int e=1;
e<COL; e++)
{
suma+=A[d][e];
}
}
cout<<"La suma total de alumnos en la escuela
es de: "<<suma<<endl;
system ("pause");
}
void piso(int A[FIL][COL])
{
int
suma1=0, suma2=0, suma3=0;
for
(int r=1; r<FIL; r++)
{
for (int q=1; q<COL; q++)
{
suma1+=A[r][q];
suma2+=A[r][q];
suma3+=A[r][q];
}
printf ("\n");
cout<<"En el piso 1 se tiene la cantidad de
alumnos: "<<suma1<<endl;
cout<<"En el piso 2 se tiene la cantidad de
alumnos: "<<suma2<<endl;
cout<<"En el piso 3 se tiene la cantidad de
alumnos: "<<suma3<<endl;
}
system ("pause");
}
void pisomenor(int A[FIL][COL])
{
int
contador=0, contador1;
for (int f=1; f<FIL; f++)
{
for (int c=1; c<COL; c++)
{
if
(A[f][c]<A[f][contador])
{
contador++;
contador1=c;
}
}
}
cout<<"El
salon con menor cantidad de alumnos del piso 3 es:
"<<contador1<<endl;
system
("pause");
}
void hombres(int A[FIL][COL])
{
int
c, suma=0;
for (int f=1; f<FIL; f++)
{
cout<<"Introduce
la cantidad de hombres en el piso ["<<f<<"] del salon 5
"<<endl;
cin>>A[f][c];
suma+=A[f][c];
}
cout<<"El total de alumnos en la escuela es
de: "<<suma<<endl;
system("pause");
}
void mujeres(int A[FIL][COL])
{
int
c, suma1=0, t, p, r, suma2=0, t1, p1, r1, suma3=0, t2, p2, r2;
cout<<"Introduce
la cantidad de mujeres en el piso 1 del salon 2 "<<endl;
cin>>t;
cout<<"Introduce
la cantidad de mujeres en el piso 1 del salon 3 "<<endl;
cin>>p;
cout<<"Introduce
la cantidad de mujeres en el piso 1 del salon 4 "<<endl;
cin>>r;
suma1=t+p+r;
cout<<"Introduce
la cantidad de mujeres en el piso 2 del salon 2 "<<endl;
cin>>t1;
cout<<"Introduce
la cantidad de mujeres en el piso 2 del salon 3 "<<endl;
cin>>p1;
cout<<"Introduce
la cantidad de mujeres en el piso 2 del salon 4 "<<endl;
cin>>r1;
suma2=t1+p1+r1;
cout<<"Introduce
la cantidad de mujeres en el piso 3 del salon 2 "<<endl;
cin>>t2;
cout<<"Introduce
la cantidad de mujeres en el piso 3 del salon 3 "<<endl;
cin>>p2;
cout<<"Introduce
la cantidad de mujeres en el piso 3 del salon 4 "<<endl;
cin>>r2;
suma3=t2+p2+r2;
cout<<"El total de alumnas en el piso 1 en los
salones 2, 3, 4 es de: "<<suma1<<endl;
cout<<"El total de alumnas en el piso 2 en los
salones 2, 3, 4 es de: "<<suma2<<endl;
cout<<"El total de alumnas en el piso 3 en los
salones 2, 3, 4 es de:
"<<suma3<<endl;
system("pause");
}
int main()
{
int
A[FIL][COL], op;
do
{
system
("cls");
cout<<"Ejercicio
del edificio escolar \n"<<endl;
cout<<"1.-
Captura"<<endl;
cout<<"2.- Cantidad de alumnos de la escuela
"<<endl;
cout<<"3.- Total de alumos por piso "<<endl;
cout<<"4.- Salon con menor cantidad de alumnos en el piso 3
"<<endl;
cout<<"5.- Hombres en el salon 5 de cada
piso"<<endl;
cout<<"6.- Total de mujeres de los salones 2, 3 y 4 de cada
piso"<<endl;
cout<<"7.- Salir"<<endl;
cin>>op;
switch(op)
{
case
1:
system
("pause");
system
("cls");
captura(A);
break;
case
2:
system("pause");
system("cls");
cantidad(A);
break;
case
3:
system("pause");
system("cls");
piso(A);
break;
case
4:
system("pause");
system("cls");
pisomenor(A);
break;
case
5:
system("pause");
system
("cls");
hombres(A);
break;
case
6:
system("pause");
system("cls");
mujeres(A);
break;
case
7:
printf
("Nos vemos hasta luego :3 ");
break;
default:
printf("Opcion no valida...\n\n");
system
("pause");
break;
}
}while(op!=7);
getch();
}
Practica 2
Parte 1 “IMC”
Programa que pedirá al usuario la estatura y el peso de n
numero de personas, mediante estos valores calculara el índice de masa corporal
(IMC), también cual persona tuvo menor y mayor estatura y el promedio del peso.
Código
#include <iostream>
#include <stdlib.h>
#include <math.h>
using namespace std;
void captura(float *est, float*pes, int N)
{
for(int
i=0;i<N;i++)
{
cout<<"Ingrese
estatura persona "<<i+1<<": "<<endl;
cin>>est[i];
cout<<"Ingrese
peso persona "<<i+1<<": "<<endl;
cin>>pes[i];
}
}
void indice(float *est, float *pes, int N)
{
int
cont1=0, cont2=0, cont3=0, cont4=0, cont5=0, i;
float
*IMC=NULL;
IMC=new
float[N];
for(i=0;i<N;i++)
{
IMC[i]=pes[i]/(pow(est[i],2));
}
for(i=0;i<N;i++)
{
if(IMC[i]<18.5)
cont1++;
if(IMC[i]>=18.5
&& IMC[i]<=24.9)
cont2++;
if(IMC[i]>=25
&& IMC[i]<=29.9)
cont3++;
if(IMC[i]>=30
&& IMC[i]<=39.9)
cont4++;
if(IMC[i]>=40)
cont5++;
}
cout<<cont1<<"
Persona(s) tienen bajo peso"<<endl;
cout<<cont2<<"
Persona(s) tienen peso normal"<<endl;
cout<<cont3<<"
Persona(s) tienen sobrepeso"<<endl;
cout<<cont4<<"
Persona(s) tienen obesidad"<<endl;
cout<<cont5<<"
Persona(s) tienen obesidad morbida"<<endl<<endl;
delete[]IMC;
}
void maymen(float *est, int N)
{
float
mayor=0, menor=1000;
int ii, ij, i;
for(i=0;i<N;i++)
{
if(mayor<est[i])
{
mayor=est[i];
ii=i;
}
if(menor>est[i])
{
menor=est[i];
ij=i;
}
}
cout<<"La
persona "<<ii+1<<" tiene la mayor
estatura"<<endl;
cout<<"La
persona "<<ij+1<<" tiene la menor
estatura"<<endl<<endl;
}
void prom(float *pes, int N)
{
float
prom=0, sum=0;
int
i;
if(N>15)
{
for(i=0;i<15;i++)
{
sum+=pes[i];
}
prom=sum/15;
}
if(N<15)
{
cout<<"Tus
personas totales son menos de 15"<<endl;
for(i=0;i<N;i++)
{
sum+=pes[i];
}
prom=sum/N;
}
cout<<"El
promedio es = "<<prom<<endl<<endl;
}
int main()
{
float
*estatura=NULL, *peso=NULL;
int
N=0,opc;
estatura=
new float[N];
peso=
new float[N];
do
{
cout<<"Elija
una opcion: "<<endl;
cout<<"1.-
Captura de datos."<<endl;
cout<<"2.-
Indice de Masa Corporal."<<endl;
cout<<"3.-
Mayor y menor estatura."<<endl;
cout<<"4.-
Promedio de peso."<<endl;
cout<<"5.-
Salir."<<endl;
cin>>opc;
switch
(opc)
{
case 1:
cout<<"Ingrese numero de personas"<<endl;
cin>>N;
captura(estatura,peso,N);
break;
case 2:
if(N!=0)
indice(estatura,peso,N);
else cout<<"*Sin
Datos*"<<endl;
break;
case 3:
if(N!=0)
maymen(estatura,N);
else cout<<"*Sin Datos*"<<endl;
break;
case 4:
if(N!=0)
prom(peso,N);
else cout<<"*Sin
Datos*"<<endl;
break;
case 5:
break;
default: cout<<"Error de
opcion"<<endl<<endl;
break;
}
system("pause");
}
while(opc!=5);
delete[]estatura;
delete[]peso;
system("pause>null");
}
Parte 2 “Letras”
Programa que pedirá al usuario el número de palabras que
desea incertar, mediante estas palabras introducidas contara el número de
volcales que poseen.
Código
#include <stdlib.h>
#include<iostream>
using namespace std;
int CuentaVocal(char *M)
{
int
i, k=0;
for(i=0; M[i]!='\0'; i++)
{
if
(M[i]=='A'||M[i]=='a'||M[i]=='E'||M[i]=='e'||M[i]=='I'||M[i]=='i'||M[i]=='O'||M[i]=='o'||M[i]=='U'||M[i]=='u')
k++;
}
return
k;
}
main ()
{
int
n,opc;
char
*P,buffer;
do
{
cout<<"Selecciona
Una Opcion\n";
cout<<"1.-\tContar
Vocales\n";
cout<<"2.-\tSalir"<<endl;
cin>>opc;
switch(opc)
{
case
1:
cout<<"Cantidad
de palabras a ingresar "<<endl;
cin>>n;
P=new char[(n+1)];
cout<<endl<<P[0]<<endl;
cout<<"Escriba la palabra "<<endl;
getchar();
gets (P);
cout<<"La palabra contiene
"<<CuentaVocal(P)<<" vocales"<<endl;
break;
case 2:
cout<<"Hasta luego :3";
break;
}
}while(opc!=2);
delete[] P;
system
("pause");
}
Parte 3
“Polinomio”
Programa que calculara el valor de un polinomio con un
valor de x que el usuario ingresara, también el usuario introducirá el grado
del polinomio.
Código
#include <stdlib.h>
#include<iostream>
#include<math.h>
using namespace std;
float *GeneraVector(int n)
{
float
*V;
V=new float[n+1];
return V;
}
void IngresaDatos(float *V, int n)
{
int i;
for(i=0;
i<=n;i++)
{
cout<<"Ingresa
el valor del coeficiente "<<i<<endl;
cin>>V[i];
}
}
void MuestraP(float *V, float x,int n)
{
float
K=0; int i;
for
(i=0; i<=n;i++)
{
cout<<V[i]<<"x^"<<i;
if (i!=n)
cout<<'+';
}
cout<<endl;
for
(i=0; i<=n;i++)
{
cout<<V[i]<<"("<<x<<")^"<<i;
if (i!=n)
cout<<'+';
}
cout<<endl;
for
(i=0; i<=n;i++)
{
K+=(V[i]*pow(x,i));
}
cout<<"El
resultado del polinomio es
"<<K<<endl;
}
main ()
{
int
n,opc;
float
x;
float*V;
do
{
cout<<"Que
deceas hacer?"<<endl;
cout<<"1.-\tHacer
Ecuacion Del Polinomio De Grado 'N'"<<endl;
cout<<"2.-\tSalir"<<endl;
cin>>opc;
switch(opc)
{
case 1:
cout<<"Ingresa
el grado del polinomio"<<endl;
cin>>n;
V=GeneraVector(n);
IngresaDatos(V,n);
cout<<"Ingresa
el valor de X "<<endl;
cin>>x;
MuestraP(V,x,n);
break;
case
2: cout<<"Hasta pronto :3 \n";
break;
}
}while(opc!=2);
delete[]
V;
system("pause");
}
Parte 4 “Matriz”
Programa que pedirá la magnitud de una matriz mediante
filas y columnas, mediantes los valores ingresados desplegara la matriz
introducida y también su transpuesta.
Código
#include<iostream>
#include<cstdlib> //<stdlib.h>
#include<math.h>
using namespace std;
int **genera_matriz(int **a, int &fil, int &col)
{
int i;
cout<<"Introduce filas "<<endl;
cin>>fil;
cout<<"Introduce columnas "<<endl;
cin>>col;
a=new int
*[fil]; //creamos filas (arreglo de apuntadores)
for (i=0;
i<fil; i++)
{
a[i]=new
int [col]; //creamos columnas
}
return (a);
//regresamos apuntador direccion
}
void captura_matriz(int **a, int &fil, int&col)
{
int f, c;
cout<<"Introduce la matriz"<<endl;
for(f=0;
f<fil; f++)
{
for(c=0; c<col; c++)
{
cout<<"Elemento
["<<f<<"]["<<c<<"]";
cin>>a[f][c];
}
}
}
void
despliega_matriz(int **a, int &fil, int &col)
{
int f, c;
cout<<"Desplegando matriz "<<endl;
for(f=0;
f<fil; f++)
{
for
(c=0; c<col; c++)
{
cout<<a[f][c]<<"\t";
}
cout<<endl;
}
}
int **transpuesta_matriz(int **a, int &fil, int
&col)
{
int **at;
at=new int
*[fil];
for(int f=0;
f<fil; f++)
{
at[f]=new int [col];
}
cout<<"Despliega matriz transpuesta "<<endl;
for
(int c=0; c<col; c++)
{
for (int f=0; f<fil; f++)
{
at[f][c]=a[c][f];
cout<<at[c][f]<<"\t";
}
cout<<endl;
}
cout<<endl;
return
(at);
}
void ordenar_matriz(int **a, int &fil, int &col)
{
int
lista[fil];
int
temp=0;
for (int f=0;f<fil;f++)
{
for (int c=1;c<col;c++)
{
for
(int j=0;j<fil-1;j++)
{
if
(lista[j] > lista[j+1])
//condicion
{
temp=lista[j]; //temp guarda momentaneamente el valor de
lista[j]
lista[j]=lista[j+1]; //Asigno al la posicion lista[j], lo que hay
en lista[j+1]
lista[j+1]=temp; //obtendra un nuevo valor por
parte de temp.
}
cout<<lista[j+1];
}
}
}
}
int main ()
{
int **a,
**at;//doble apuntador que genera matriz
int fil, col;
a=genera_matriz(a, fil, col);
captura_matriz(a, fil, col);
despliega_matriz(a,
fil, col);
at=transpuesta_matriz(a, fil, col);
ordenar_matriz(a, fil, col);
delete []a;
system("pause>null");
}
Practica 3
“Vinimos cuadrados”
Programa que mediante el método de mínimos cuadrados
calculara el coeficiente de correlación, la ecuación de la recta tangente y la
desvisacion estándar, gracias a valores que haya introducido el usuario.
Código
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
class minimos
{
private:
int
n;//tamaño de muestra
float
*x, *y;
float
x1;
float
mx;
float
my;
float
ai;
public:
minimos();
void
lectura();
void
calcular_ecuacion();
void
st();
void
r();
void
interpolar();
~minimos();
};
minimos::minimos()
{
n=0;
x=NULL;
y=NULL;
x1=0;
}
void minimos::lectura()
{
cout<<"Introduce
el tamanio de la muestra"<<endl;
cin>>n;
x=new
float[n];
y=new
float[n];
for(int
i=0; i<n; i++)
{
cout<<"Introduce
el valor de x"<<i+1<<endl;
cin>>x[i];
cout<<"Introduce
el valor de y"<<i+1<<endl;
cin>>y[i];
}
}
void minimos::calcular_ecuacion()
{
float
xi=0, yi=0, xiyi=0, xi2=0, xii, a1, a0, mxi, myi;
for(int
i=0; i<n; i++)
{
xi+=x[i];
yi+=y[i];
xiyi+=(x[i]*y[i]);
xi2+=pow(x[i],2);
}
xii=pow(xi,2);
a1=(n*xii-xi*yi)/(n*xii-xi2);
mx=xi/n;
my=yi/n;
a0=my-ai*mx;
cout<<"La
ecuacion de ajuste es: "<<a0<<" +
"<<a1<<" x "<<endl;
}
void minimos::r()
{
if(*y>0&&*x>0)
{
cout<<"El coefisiente de relacion es positiva o
directa"<<endl;
}
else if
(*y<0&&*x>0)
{
cout<<"El coeficiente de relacion es negativa o
inversa"<<endl;
}
else
{
cout<<"No hay coeficinete de relacion "<<endl;
}
}
void minimos::st()
{
cout<<""<<endl;
}
minimos::~minimos()
{
cout<<"Activar
destructor"<<endl;
}
int main()
{
minimos ecu1;
ecu1.lectura();
ecu1.calcular_ecuacion();
ecu1.r();
ecu1.st();
system("pause>null");
}
No hay comentarios:
Publicar un comentario