top of page

Matrices(Arreglos Multidimencionales)

  • Foto del escritor: Erick Bryan Geldres Asto
    Erick Bryan Geldres Asto
  • 18 jun 2019
  • 3 Min. de lectura

Matrices

Las matrices o como algunos las llaman "arreglos multidimensionales" son una estructura de datos bastante similar a los vectores o arreglos. De hecho, una matriz no es más que una serie de vectores contenidos uno en el otro (u otros), es decir, una matriz es un vector cuyas posiciones son otros vectores. Hablemos con más detalle de esto para quedar más claros.

¿Cómo se crea una Matriz en C++?

Declarar una matriz en C++ es muy similar a la de un vector, se deben seguir las mismas normas para declarar una variable pero una vez más con un pequeño cambio en la sintaxis. Primero necesitaremos saber el tipo de los datos que irán al interior de este (números, decimales o cadenas de texto, etc.) necesitamos también, como siempre, un nombre para la matriz y un tamaño máximo tanto para las filas como para las columnas. La sintaxis para declarar una matriz en C++ es la siguiente:

tipoDato nombreMatriz[filas][columnas];

Declaración de una matriz en C++ :

Veamos rápidamente que representa cada línea del código anterior.

Línea 1

Esta línea contiene la declaración de una matriz llamada myMatriz1 que tendrá 10 filas y 5 columnas y cada una de las 50 casillas tendrá datos de tipo entero.

int myMatriz1[10][5];

Línea 2

Esta línea contiene la declaración de una matriz llamada myMatriz2 que tendrá 5 filas y 10 columnas y cada una de las 50 casillas tendrá datos de tipo flotante.

float myMatriz2[5][10];

Línea 3

Esta línea contiene la declaración de una matriz llamada myMatriz3 que tendrá 15 filas y 15 columnas (una matriz cuadrada) y cada una de las 225 casillas tendrá datos de tipo string.

string myMatriz3[15][15];

Línea 4

Esta línea contiene la declaración de una matriz llamada myMatriz4 que tendrá 1000 filas (sí, leíste bien) y 3 columnas y cada una de las 3000 casillas (también leíste bien, tres mil casillas) tendrá datos de tipo booleano.

Ya que está claro cómo se declara una matriz, vamos a inicializarla, es decir darle un valor a cada casilla, según su tipo de dato.

bool myMatriz4[1000][3];

Implementacion en C++:


_________________________________________________________________________


#include<iostream>

#include<math.h>

using namespace std;


float leer(),multiplicar(),Ecuacion_2Grado(),visualizar(),Voltaje();

int opcion,k,m,n,A[100][100],B[100][100],C[100][100],i,j,z,Vo=100,w,t,V[50][30];


int main()

{



do{

cout<<"_____________MENU______________";

cout<<"\n1) Leer";

cout<<"\n2) Multiplicacion de matrices";

cout<<"\n3) Ecuacion 2do Grado";

cout<<"\n4) Voltaje";

cout<<"\n5) Visualizar";

cout<<"\n6) Salir";

cout<<"\n\nIngrese una Opcion: ";cin>>opcion;

switch(opcion)

{

case 1:{

leer();

};break;

case 2:{

multiplicar();

};break;

case 3:{

Ecuacion_2Grado();

};break;

case 4:{

Voltaje();

};break;

case 5:{

visualizar();

};break;

default:{if(opcion!=6)

{cout<<"\nIngrese una opcion valida\n\n";

};break;

}

}


}while(opcion!=6);

return 0;

}


float leer()

{//Matriz A

cout<<"\n____Matriz[A]____";

cout<<"\nN° de filas A: ";cin>>k;

cout<<"N° de columnas A: ";cin>>m;

for(i=1;i<k+1;i++)

{for(j=1;j<m+1;j++)

{cout<<"A["<<i<<"]["<<j<<"]: ";cin>>A[i][j];

}

}

//Matriz B

cout<<"\n____Matriz[B]____";

cout<<"\nN° de filas B: "<<m<<endl;

cout<<"N° de columnas B: ";cin>>n;

for(i=1;i<m+1;i++)

{for(j=1;j<n+1;j++)

{cout<<"B["<<i<<"]["<<j<<"]: ";cin>>B[i][j];

}

}

}

float multiplicar()

{cout<<"\nMatriz[A]"<<endl;

for(i=1;i<k+1;i++)

{for(j=1;j<m+1;j++)

{cout<<A[i][j]<<" ";

}cout<<endl;

}

cout<<" X ";

//

cout<<"\nMatriz[B]"<<endl;

for(i=1;i<m+1;i++)

{for(j=1;j<n+1;j++)

{cout<<B[i][j]<<" ";

}cout<<endl;

}

//Inicializamos la matriz C

for(i=1;i<k+1;i++)

{for(j=1;j<n+1;j++)

{C[i][j]=0;}

}

//Generamos la matriz C

for(i=1;i<k+1;i++)

{for(j=1;j<n+1;j++)

{for(z=1;z<m+1;z++)

{C[i][j] += A[i][z]+B[z][j];}

}

}

cout<<" = ";

cout<<"\nMatriz[C]"<<endl;

for(i=1;i<k+1;i++)

{for(j=1;j<n+1;j++)

{cout<<C[i][j]<<" ";}

cout<<endl;

}

}

float Ecuacion_2Grado()

{cout<<"_____ECUACION SEGUNDO GRADO_____\n";

cout<<endl;

cin>>m; cin>>n;

for(i = 1; i <=n; i++){

for(j = 1; j <= m; j++){

(B[i][j]) = (A[i][j])* pow(A[i][j], 2) * 15 + (C[i][j]);

cout<<(B[i][j])<<endl;

}

} cout<<endl;

}

float Voltaje()

{cout<<"_____Voltaje en onda_____\n";

for(w=5;w<=15;w=w+0.25)

{for(t=0.1;t<=2;t=t+0.1)

{V[w][t]=Vo*cos(w*t);

cout<<"V["<<i<<"]["<<j<<"]= ";cout<<V[i][j];

cout<<endl;

i++;

j++;

}

}cout<<endl;

}

float visualizar()

{cout<<endl;

cout<<"______Lectura de la Matriz Formula______\n";

cout<<endl;

cout<<"N° de Filas:";cin>>m;

cout<<"N° de Columnas:";cin>>n;

cout<<endl;

cout<<endl;

cout<<"Matriz Formula\n";

for (i=1;i<=n;i++){

for (j=1;j<=m;j++){

cout<<"V["<<i<<"]["<<j<<"]= ";cout<<V[i][j];

cout<<V[i][j];

cout<<endl;

}

}

}





 
 
 

Entradas recientes

Ver todo
Aplicacion de los numeros Complejos

Los números complejos permiten representar situaciones de la realidad cuya descripción y tratamiento es posible gracias a las propiedades...

 
 
 

Comments


© 2023 para  Le Cõuleur. Creado con Wix.com

bottom of page