miércoles, 4 de diciembre de 2013

Practica 6 fecha: 7/05/13

#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 sumarArreglos (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);
sumarArreglos (primero,segundo,tercero,4,4);
multArreglos (primero,segundo,tercer,4,4);
cout<<endl<<endl;
cout<<"Las matrices originales son:\n\n";
cout<<"La matriz primero: \n";
desplegarDatos (primero,4,4);
cout<<endl<<endl;
cout<<"La matriz segunda: \n";
desplegarDatos (segundo,4,4);
cout<<endl<<endl;
cout<<"La suma de los arreglos es:\n";
desplegarDatos (tercero,4,4);
cout<<endl<<endl;
cout<<"La multiplicacion de los arreglos es:\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 sumarArreglos (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];
}
}
}


Ejercicio 6.2

#include <conio.h>
#include <iostream.h>
#include <time.h>
#include <stdlib.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);
template <class T>
void datoMenor(T a[10][10], int n, int m, T &menor, int &posr, int &posc);

int main ()
{
int valores[10][10], posRmayor=0, posCmayor=0, mayor=0;
int valoresMenor[10][10], posRmenor=0, posCmenor=0, menor=0;
generarVal (valores, 5,5);
cout<<"Matriz original de 5x5\n\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;
datoMenor (valores,5,5,menor,posRmenor,posCmenor);
cout<<"\nEl dato menor es: "<<menor<<endl;
cout<<"Renglon: "<<(posRmenor+1)<<" Columna: "<<(posCmenor+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;
}
}
}
}

template <class T>
void datoMenor(T a[10][10], int n, int m, T &menor, int &posr, int &posc)
{
int r,c;
menor=a[0][0];
posr=0;
posc=0;
for (r=0;r<n;r++)
{
for (c=0;c<m;c++)
{
if(a[r][c]<menor)
{
menor=a[r][c];
posr=r;
posc=c;
}
}
}
}

No hay comentarios:

Publicar un comentario