Alcantar Gonzales Carlos Armando 12212100
Flores Ruiz Aldo 12211255
Rosales Gomez Marco Aureloio 12211245
Villada Segovia Arturo 12211249
--------------------------------------------------------------------------------------------------------------------------
Problema 1
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
template <class T>
void lecturadatos(T a[10][10], int n, int m);
template <class T>
void desplegardatos(T a[10][10], int n, int m);
template <class T>
void sumaarreglos(T a[10][10], T b[10][10], T c[10][10], int n, int m);
template <class T>
void multarreglos(T a[10][10], T b[10][10], T c[10][10], int n, int m);
int main ()
{
float primero[10][10], segundo[10][10], tercero[10][10], tercer[10][10];
lecturadatos(primero,4,4);
cout<<endl<<endl;
lecturadatos(segundo,4,4);
sumaarreglos(primero,segundo,tercero,4,4);
multarreglos(primero,segundo,tercer,4,4);
cout<<"Las matrices originales son \n\n ";
cout<<"La matriz primero\n ";
desplegardatos(primero,4,4);
cout<<endl<<endl;
cout<<"La matriz segundo\n ";
desplegardatos(segundo,4,4);
cout<<"\n\nLa suma de los arreglos es\n\n ";
desplegardatos(tercero,4,4);
cout<<"\n\nLa multiplicacion de los arreglos es\n\n ";
desplegardatos(tercero,4,4);
getch ();
}
template <class T>
void lecturadatos(T a[10][10], int n, int m)
{
int r,c;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
cout<<"numero["<<(r+1)<<" , "<<(c+1)<<" ]: ";
cin>>a[r][c];
}
}
}
template <class T>
void desplegardatos(T a[10][10], int n, int m)
{
int r,c;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}
}
template <class T>
void sumaarreglos(T a[10][10], T b[10][10], T c[10][10], int n, int m)
{
int r,c1;
for(r=0;r<n;r++)
{
for(c1=0;c1<m;c1++)
{
c[r][c1]= a[r][c1] + b[r][c1];
}
}
}
template <class T>
void multarreglos(T a[10][10], T b[10][10], T c[10][10], int n, int m)
{
int r,c1;
for(r=0;r<n;r++)
{
for(c1=0;c1<m;c1++)
{
c[r][c1]= a[r][c1]* b[r][c1];
}
}
}
--------------------------------------------------------------------------------------------------------------------------
Problema 2
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
template <class T>
void generarval(T a[10][10], int n, int m);
template <class T>
void desplegardatos(T a[10][10], int n, int m);
template <class T>
void datomayor (T a[10][10],int n,int m, T &mayor, int & posr, int & posc);
int main ()
{
int valores[10][10], posRmayor=0,posCmayor=0, mayor=0;
generarval(valores,5,5);
cout<<"Matriz Original de 5x5\n";
desplegardatos(valores,5,5);
datomayor(valores,5,5,mayor,posRmayor,posCmayor);
cout<<"\nEl dato mayor es"<<mayor<<endl;
cout<<"Renglon: "<<(posRmayor+1)<<"columna: "<<(posCmayor+1)<<endl;
getch ();
}
template <class T>
void generarval(T a[10][10], int n, int m)
{
int r,c;
srand(time(NULL));
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
a[r][c]=rand()%1000 + 1;
}
}
}
template <class T>
void desplegardatos(T a[10][10], int n, int m)
{
int r,c;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}
}
template <class T>
void datomayor (T a [10][10],int n,int m, T &mayor, int & posr, int & posc)
{
int r,c;
mayor=a[0][0];
posr=0;
posc=0;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
if(a[r][c]>mayor)
{
mayor=a[r][c];
posr=r;
posc=c;
}
}
}
}
--------------------------------------------------------------------------------------------------------------------------
Problema 3
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
template <class T>
void generarval(T a[10][10], int n, int m);
template <class T>
void desplegardatos(T a[10][10], int n, int m);
template <class T>
void intercambiomatriz(T a [10][10],T b[10][10],int n,int m);
int main ()
{
int a[10][10],b[10][10];
cout<<"Generando aleatoriamente los valores de la matriz A\n\n";
generarval(a,4,4);
intercambiomatriz(a,b,4,4);
cout<<"\n\nMatriz A\n"<<endl;
desplegardatos(a,4,4);
cout<<"\n\nMatriz B\n";
desplegardatos(b,4,4);
getch ();
}
template <class T>
void generarval(T a[10][10], int n, int m)
{
int r,c;
srand(time(NULL));
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
a[r][c]=rand()%100;
}
}
}
template <class T>
void desplegardatos(T a[10][10], int n, int m)
{
int r,c;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}
}
template <class T>
void intercambiomatriz(T a [10][10],T b[10][10],int n,int m)
{
int r,c;
for(r=0;r<n;r++)
{
for(c=0;c<m;c++)
{
b[c][r]=a[r][c];
}
}
}
--------------------------------------------------------------------------------------------------------------------------
Problema 4
# include <iostream.h>
# include <stdlib.h>
# include <time.h>
# include <conio.h>
template <class T>
void leerdatos (T a [10][10],int n,int m);
template <class T>
void generarval(T a [10][10],int n,int m);
template <class T>
void desplegardatos (T a [10][10],int n,int m);
template <class T>
T diagonalp(T a[10][10],int n,int m);
template <class T>
T diagonalinversa (T a [10][10],int n,int m);
template <class T>
void intercambiomatriz (T a [10][10],T b[10][10],int n,int m);
int main()
{
int a[10][10],b[10][10];
cout<<"generando aleatoriamente los datos de la matriz A\n\n";
generarval(a,5,5);
//intercambiomatriz(a,b,5,5);
cout<<"nmatriz A\n";
desplegardatos(a,5,5);
cout<<"\n\nla suma de la diagonal principal:"<<diagonalp(a,5,5)<<endl;
cout<<"\n\nla suma de la diagonal inversa: "<<diagonalinversa(a,5,5)<<endl;
getch();
}
template <class T>
void leerdatos(T a[10][10],int n,int m)
{
int r,c;
for (r=0;r<n;r++)
{
for (c=0;c<m;c++)
{
cout<<"dato["<<(r+1)<<","<<(c+1)<<"]:";
cin>>a[r][c];
}
}
}
template <class T>
void generarval (T a[10][10],int n,int m)
{
int r,c;
srand(time(NULL));
for (r=0;r<n;r++)
{
for (c=0;c<m;c++)
{
a[r][c]=rand()%10;
}
}
}
template <class T>
void desplegardatos (T a[10][10],int n,int m)
{
int r,c;
for (r=0;r<n;r++)
{
for (c=0;c<m;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}
}
template <class T>
T diagonalp(T a[10][10],int n,int m)
{int i;
T suma=0;
for(i=0;i<n;i++)
{
suma=suma+a[i][i];
}
return suma;
}
template <class T>
T diagonalinversa(T a[10][10],int n,int m)
{
int i,j=m-1;
T suma=0;
for (i=0;i<n;i++)
{
suma=suma+a[i][j];
j--;
}
return suma;
}
template <class T>
void intercambiomatriz(T a[10][10],T b[10][10],int n,int m)
{
int r,c;
for (r=0;r<n;r++)
{
for (c=0;c<m;c++)
{
b[c][r]=a[r][c];
}
}
}
--------------------------------------------------------------------------------------------------------------------------
Problema 5
#include <iostream.h>
#include <conio.h>
void leerdatos(float a[3][4]);
void mostrardatos(float a[3][4]);
void imprimirrangov(float a[3][4], int&cm60,int &c60m70, int &c70m80, int &c80m90, int &c90);
int main()
{
float voltajes[3][4];
int c1=0,c2=0,c3=0,c4=0,c5=0;
leerdatos(voltajes);
cout<<" Matriz devoltajes\n\n";
mostrardatos(voltajes);
imprimirrangov(voltajes,c1,c2,c3,c4,c5);
cout<<" Cantidaddevoltajes\n\n";
cout<<" Menores a 60: "<<c1<<endl;
cout<<" Mayores o iguales a 60 pero menor a 70: "<<c2<<endl;
cout<<" Mayores o iguales a 70 pero menor a 80: "<<c3<<endl;
cout<<" Mayores o iguales a 80 pero menor a 90: "<<c4<<endl;
cout<<" Mayores o iguales a 90: "<<c5<<endl;
getch();
}
void leerdatos(float a[3][4])
{
int r,c;
cout<<" Introduicce los sigientes datos\n\n";
for(r=0;r<3;r++)
{
for(c=0;c<4;c++)
{
cout<<" Voltaje [ "<<(r+1)<<" , "<<(c+1)<<" ]: ";
cin>>a[r][c];
}}}
void mostrardatos(float a[3][4])
{
int r,c;
for(r=0;r<3;r++)
{
for(c=0;c<4;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}}
void imprimirrangov(float a[3][4], int&cm60,int &c60m70, int &c70m80, int &c80m90, int&c90)
{
int r,c;
cm60=c60m70=c70m80=c80m90=c90=0;
for(r=0;r<3;r++)
{
for(c=0;c<4;c++)
{
if(a[r][c]<60)
{cm60++;
}
else
{
if(a[r][c]<70)
{c60m70++;
}
else
{
if(a[r][c]<80)
{c70m80++;
}
else
{
if(a[r][c]<90)
{c80m90++;
}
else
{
c90++;
}}}}}}}
--------------------------------------------------------------------------------------------------------------------------
Problema 6
#include <iostream.h>
#include <conio.h>
void leerdatos(int a[7][6],char nombresp[6][20]);
void mostrardatos(int a[7][6],char nombresp[6][20]);
void totalesp(int a [7][6]);
int main()
{int prod[7][6];
char nplantas[6][20];
leerdatos(prod,nplantas);
totalesp(prod);
cout<<"\n\n Reporte semanal deproductividad\n\n";
cout<<" Planta Dia 1 Dia 2 dia 3 Dia 4 Dia 5 Totales\n\n";
mostrardatos(prod,nplantas);
getch();
}
void leerdatos(int a[7][6],char nombresp[6][20])
{
int r,c;
for(r=0;r<6;r++)
{
cin.ignore();
cout<<"Nombre de la planta "<<(r+1)<<": ";
cin.getline(nombresp[r],20,'\n');
for(c=0;c<5;c++)
{
cout<<" Produccion dia "<<(c+1)<<": ";
cin>> a[r][c];
}}}
void mostrardatos(int a[7][6],char nombresp[6][20])
{
int r,c;
for(r=0;r<7;r++)
{
cout<<nombresp[r]<<"\t";
for(c=0;c<6;c++)
{
cout<<a[r][c]<<"\t";
}
cout<<endl;
}}
void totalesp(int a [7][6])
{
int r,c, suma=0;
for(r=0;r<6;r++)
{
suma=0;
for(c=0;c<5;c++)
{
suma=suma+a[r][c];
}
a[r][5]=suma;
}
for(c=0;c<5;c++)
{
suma=0;
for(r=0;r<6;r++)
{
suma=suma+a[r][c];
}
a[6][c]=suma;
}
for(r=0;r<6;r++)
{
suma=suma+a[r][5];
}
a[6][5]=suma;
}