Buscar

Calculadora de matriz


Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

#include<stdio.h>
#include<stdlib.h>
#include<locale.h>
int main(){
setlocale(LC_ALL,"portuguese");
	while(1){
	printf("\n###############################\n");
	printf("## CALCULADORA DA MATRIZ 4x3 ##");
	printf("\n###############################\n");
	int gabi[3][4]={{0}},gabi1[4][3]={{0}},gabi2[4][3]={{0}},gabi3[4][3]={{0}},gabi4[4][3]={{0}},i=0,j=0,f=0,k=0,y=0,mult=0,soma=0;
	printf("\nDigite a operação que deseja fazer:");
	printf("\n1.Matriz transposta\n2.Matriz Inversa\n3.Multiplicação de uma constante.\n4.Multiplicação\n5.Soma\n6.Subtração\n7.Sair.");
	printf("\n\nOpção:");
	scanf("%d",&f);
	switch(f)
	{
	case 1:
		printf("\nDigite os valores da matriz:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			scanf("%d",&gabi[i][j]);
			gabi1[i][j]=gabi[i][j];
			}
		}
		system("cls");
		printf("\nA matriz transposta é:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			printf("\t%d",gabi1[i][j]);
			}
			printf("\n");
		}
		break;
	case 2:
	printf("\nDigite os valores da matriz:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			scanf("%d",&gabi[i][j]);
			gabi1[i][j]=(gabi[i][j]*-1);
			}
		}
		system("cls");
		printf("\nA matriz inversa é:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			printf("\t%d",gabi1[i][j]);
			}
			printf("\n");
		}
		break;
	case 3:
		printf("\nDigite o valor da constante:");
		scanf("%d",&y);
		printf("\nDigite os valores da matriz:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			scanf("%d",&gabi[i][j]);
			gabi1[i][j]=(gabi[i][j]*y);
			}
		}
		printf("\nA matriz é:\n");
		for(i=0;i<3;i++){
			for(j=0;j<4;j++){
			printf("\t%d",gabi1[i][j]);
			}
			printf("\n");
		}
		break;
	case 4:
		printf("\nDigite o valor da primeira matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi2[i][j]);
			}
		}
		printf("\nDigite o valor da segunda matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi3[i][j]);
			}
		}
		for(i=0;i<4;i++){
			for(k=0;k<3;k++){
			 for(j=0;j<3;j++)
 {
		 	mult=gabi2[i][j]*gabi3[j][k];
			soma=soma+mult;
		}
			gabi4[i][k]=soma;
			soma=0;
	}
	}
	printf("\n");
	for(i=0;i<4;i++){
		for(k=0;k<3;k++){
		printf("%5d",gabi4[i][k]);
		}
		printf("\n");
	}
	break;
	case 5:
		printf("\n\nDigite o valor da primeira matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi2[i][j]);
			}
		}
		system("cls");
		printf("\n\nDigite o valor da segunda matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi3[i][j]);
			}
		}
		system("cls");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				gabi4[i][j]=(gabi2[i][j]+gabi3[i][j]);
			}
		}
		printf("\nO resultado da soma é:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				printf("%5d",gabi4[i][j]);
			}
			printf("\n");
		}
		case 6:
		printf("\n\nDigite o valor da primeira matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi2[i][j]);
			}
		}
		system("cls");
		printf("\n\nDigite o valor da segunda matriz:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				scanf("%d",&gabi3[i][j]);
			}
		}
		system("cls");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				gabi4[i][j]=(gabi2[i][j]-gabi3[i][j]);
			}
		}
		printf("\nO resultado da subtração é:\n");
		for(i=0;i<4;i++){
			for(j=0;j<3;j++){
				printf("%5d",gabi4[i][j]);
			}
			printf("\n");
		}
 case 7:
			system("cls");
			printf("\n\nBye\n\n");
			exit(1);
	default:
		printf("\n\tOpção invalida.\n");
		break;
	}
	}
return 0;
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando