Documentos de Académico
Documentos de Profesional
Documentos de Cultura
}
}
else{
cout<<"El elemento no se encuentra en la matriz"<<endl;
}
system("pause");
}
/*
Digite el numero de filas ===> 3
Digite el numero de columnas ===> 8
20 1 15 13 19 6 12 17
17 12 6 7 15 3 19 20
8 15 6 11 2 12 3 1
Ingrese el elemento a buscar ==> 20
El numero 20 de la fila y columna 2,8 sera reemplazado por su divisor 1
20 1 15 13 19 6 12 17
17 12 6 7 15 3 19 1
8 15 6 11 2 12 3 1
Presione una tecla para continuar . . .
*/
Tarea
// Genere 02 matrices aleatorias y realice lo siguiente:
a. Sumar dos matrices
b. Diferencia de dos matrices
c. producto de dos matrices
d. cociente de dos matrices
e. Resto de dos matrices
f. hallar las diagonales de las dos matrices y mostrarlas
g. Cuántos valores de cada diagonal coinciden
En un menú
Código fuente:
#include<iostream>
#include<stdlib.h>
#include<time.h>
#include<iomanip>
using namespace std;
void main(){
srand((unsigned)time(NULL));
int A[100][100],B[100][100],a[1000],b[1000],orden,respuesta,c;
float C[100][100];
cout<<"Digite el orden de ambas matrices cuadradas ===> ";cin>>orden;
cout<<"Las matrices generadas son las siguientes:"<<endl;
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
A[i][j]=rand()%48+1;
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(3)<<A[i][j];
}
cout<<endl;
}
cout<<endl;
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
B[i][j]=rand()%48+1;
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(3)<<B[i][j];
}
cout<<endl;
}
cout<<endl;
cout<<"Presione '1' para sumar las matrices"<<endl;
cout<<"Presione '2' para restar las matrices"<<endl;
cout<<"Presione '3' para multiplicar las matrices"<<endl;
cout<<"Presione '4' para dividir los elementos de las matrices"<<endl;
cout<<"Presione '5' para hallar el resto de los elementos de las
matrices"<<endl;
cout<<"Presione '6' para mostar las diagonales de cada matriz y en cuantos
valores coinciden"<<endl;
cout<<"Digite su opcion ===> ";cin>>respuesta;
switch(respuesta){
case 1:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
C[i][j]=A[i][j]+B[i][j];
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(3)<<C[i][j];
}
cout<<endl;
}
break;
case 2:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
C[i][j]=A[i][j]-B[i][j];
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(3)<<C[i][j];
}
cout<<endl;
}
break;
case 3:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
C[i][j]=0;
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
for(int n=0;n<orden;n++){
C[i][j]=C[i][j]+A[i][n]*B[n][j];
}
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(5)<<C[i][j];
}
cout<<endl;
}
break;
case 4:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
C[i][j]=1.0*A[i][j]/B[i][j];
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(10)<<C[i][j];
}
cout<<endl;
}
break;
case 5:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
C[i][j]=A[i][j]%B[i][j];
}
}
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
cout<<setw(3)<<C[i][j];
}
cout<<endl;
}
break;
case 6:
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
if(i==j){
a[i]=A[i][j];
}
}
}
cout<<"[";
for(int i=0;i<orden;i++){
cout<<setw(3)<<a[i];
}
cout<<"]";
cout<<endl;
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
if(i==j){
b[i]=B[i][j];
}
}
}
cout<<"[";
for(int i=0;i<orden;i++){
cout<<setw(3)<<b[i];
}
cout<<"]";
cout<<endl;
for(int i=0;i<orden;i++){
for(int j=0;j<orden;j++){
if(a[i]==b[j]){
b[j]=0;
cout<<"El numero "<<a[i]<<" se encuentra en ambas
diagonales"<<endl;
}
}
}
break;
}
system("pause");
}
/*
Digite el orden de ambas matrices cuadradas ===> 5
Las matrices generadas son las siguientes:
9 40 28 10 45
26 1 20 21 43
30 21 12 33 25
6 15 7 38 16
30 30 19 39 33
48 16 26 10 37
4 24 10 25 44
20 6 13 4 28
43 12 43 38 47
2 2 28 27 24