Calculadora de Matrices

Iniciado por ANTRAX, Enero 19, 2011, 12:18:07 PM

Tema anterior - Siguiente tema

0 Miembros y 2 Visitantes están viendo este tema.

Enero 19, 2011, 12:18:07 PM Ultima modificación: Junio 28, 2012, 03:36:17 PM por ANTRAX
Calculadora de Matrices en C
Operaciones:

[1] Suma de Matrices
[2] Resta de Matrices
[3] Multiplicacion de Matrices
[4] Multiplicacion de Matriz por un Cardinal
[5] Transpuesta de una Matriz

Código: c
///////////////////////////////////
//Calculadora de Matrices en C
//CODDED BY ANTRAX
//antrax.bt [AT] gmail [DOT] com
///////////////////////////////////

//Libreria
#include <stdio.h>

//Variables Matriz A
int AF1C1, AF1C2, AF1C3;
int AF2C1, AF2C2, AF2C3;
int AF3C1, AF3C2, AF3C3;

//Variables Matriz B
int BF1C1, BF1C2, BF1C3;
int BF2C1, BF2C2, BF2C3;
int BF3C1, BF3C2, BF3C3;

//Variable del Menu
int x;

//Variable del Cardinal
int z;

void main()
{
//Impresion del modelo de la matriz
printf("Modelo de Matriz: \n");
printf("[F1C1 F1C2 F1C3] \n");
printf("[F2C1 F2C2 F2C3] \n");
printf("[F3C1 F3C2 F3C3] \n \n");


//MENU
printf("MENU \n");
printf("[1] Suma de Matrices \n");
printf("[2] Resta de Matrices \n");
printf("[3] Multiplicacion de Matrices \n");
printf("[4] Multiplicacion de Matriz por un Cardinal \n");
printf("[5] Transpuesta de una Matriz \n \n");

//Ingreso de Opcion
printf("Ingrese Opcion: ");
scanf("%d", &x);

//Opcion "1" SUMA
if (x == 1)
{
printf(" \n[# # # Suma de Matrices # # #] \n \n ");

//Ingreso de Valores de la matriz A
printf("Valores de la Matriz A \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&AF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&AF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&AF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&AF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&AF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&AF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&AF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&AF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&AF3C3);

//Impresion de la Matriz A con sus valores
printf("\nMatriz A \n");
printf("[%d %d %d] \n", AF1C1, AF1C2, AF1C3);
printf("[%d %d %d] \n", AF2C1, AF2C2, AF2C3);
printf("[%d %d %d] \n", AF3C1, AF3C2, AF3C3);

//Ingreso de Valores de la matriz B
printf("\nValores de la Matriz B \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&BF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&BF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&BF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&BF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&BF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&BF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&BF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&BF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&BF3C3);

//Impresion de la Matriz B con sus valores
printf("\nMatriz B \n");
printf("[%d %d %d] \n", BF1C1, BF1C2, BF1C3);
printf("[%d %d %d] \n", BF2C1, BF2C2, BF2C3);
printf("[%d %d %d] \n", BF3C1, BF3C2, BF3C3);

//Resultado
printf("\nResultado \n");
printf("[%d %d %d] \n", AF1C1 + BF1C1, AF1C2 + BF1C2, AF1C3 + BF1C3);
printf("[%d %d %d] \n", AF2C1 + BF2C1, AF2C2 + BF2C2, AF2C3 + BF2C3);
printf("[%d %d %d] \n", AF3C1 + BF3C1, AF3C2 + BF3C2, AF3C3 + BF3C3);

}
//Opcion "2" RESTA

if (x == 2)

{
printf(" \n[# # # Resta de Matrices # # #] \n \n ");

//Ingreso de Valores de la matriz A
printf("Valores de la Matriz A \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&AF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&AF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&AF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&AF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&AF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&AF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&AF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&AF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&AF3C3);

//Impresion de la Matriz A con sus valores
printf("\nMatriz A \n");
printf("[%d %d %d] \n", AF1C1, AF1C2, AF1C3);
printf("[%d %d %d] \n", AF2C1, AF2C2, AF2C3);
printf("[%d %d %d] \n", AF3C1, AF3C2, AF3C3);

//Ingreso de Valores de la matriz B
printf("\nValores de la Matriz B \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&BF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&BF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&BF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&BF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&BF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&BF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&BF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&BF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&BF3C3);

//Impresion de la Matriz B con sus valores
printf("\nMatriz B \n");
printf("[%d %d %d] \n", BF1C1, BF1C2, BF1C3);
printf("[%d %d %d] \n", BF2C1, BF2C2, BF2C3);
printf("[%d %d %d] \n", BF3C1, BF3C2, BF3C3);

//Resultado
printf("\nResultado \n");
printf("[%d %d %d] \n", AF1C1 - BF1C1, AF1C2 - BF1C2, AF1C3 - BF1C3);
printf("[%d %d %d] \n", AF2C1 - BF2C1, AF2C2 - BF2C2, AF2C3 - BF2C3);
printf("[%d %d %d] \n", AF3C1 - BF3C1, AF3C2 - BF3C2, AF3C3 - BF3C3);

}

if(x == 3)
{
printf(" \n[# # # Multiplicacion de Matrices # # #] \n \n ");

//Ingreso de Valores de la matriz A
printf("Valores de la Matriz A \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&AF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&AF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&AF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&AF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&AF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&AF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&AF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&AF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&AF3C3);

//Impresion de la Matriz A con sus valores
printf("\nMatriz A \n");
printf("[%d %d %d] \n", AF1C1, AF1C2, AF1C3);
printf("[%d %d %d] \n", AF2C1, AF2C2, AF2C3);
printf("[%d %d %d] \n", AF3C1, AF3C2, AF3C3);

//Ingreso de Valores de la matriz B
printf("\nValores de la Matriz B \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&BF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&BF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&BF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&BF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&BF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&BF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&BF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&BF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&BF3C3);

//Impresion de la Matriz B con sus valores
printf("\nMatriz B \n");
printf("[%d %d %d] \n", BF1C1, BF1C2, BF1C3);
printf("[%d %d %d] \n", BF2C1, BF2C2, BF2C3);
printf("[%d %d %d] \n", BF3C1, BF3C2, BF3C3);

//Resultado
printf("\nResultado \n");
printf("[%d %d %d] \n", (AF1C1 * BF1C1) + (AF1C2 * BF2C1) + (AF1C3 * BF3C1), (AF1C1 * BF1C2) + (AF1C2 * BF2C2) + (AF1C3 * BF3C2), (AF1C1 * BF1C3) + (AF1C2 * BF2C3) + (AF1C3 * BF3C3));
printf("[%d %d %d] \n", (AF2C1 * BF1C1) + (AF2C2 * BF2C1) + (AF2C3 * BF3C1), (AF2C1 * BF1C2) + (AF2C2 * BF2C2) + (AF2C3 * BF3C2), (AF2C1 * BF1C3) + (AF2C2 * BF2C3) + (AF2C3 * BF3C3));
printf("[%d %d %d] \n", (AF3C1 * BF1C1) + (AF3C2 * BF2C1) + (AF3C3 * BF3C1), (AF3C1 * BF1C2) + (AF3C2 * BF2C2) + (AF3C3 * BF3C2), (AF3C1 * BF1C3) + (AF3C2 * BF2C3) + (AF3C3 * BF3C3));

}

if (x == 4)
{
printf(" \n[# # # Multiplicacion de Matriz por un Cardinal # # #] \n \n ");

//Peticion del Cardinal
printf("Ingrese el Numero para multiplicarlo por la Matriz: ");
scanf("%d" , &z);

//Ingreso de Valores de la matriz A
printf("Valores de la Matriz A \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&AF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&AF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&AF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&AF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&AF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&AF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&AF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&AF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&AF3C3);

//Impresion de la Matriz A con sus valores
printf("\nMatriz A \n");
printf("[%d %d %d] \n", AF1C1, AF1C2, AF1C3);
printf("[%d %d %d] \n", AF2C1, AF2C2, AF2C3);
printf("[%d %d %d] \n", AF3C1, AF3C2, AF3C3);

//Resultado
printf("\nResultado \n");
printf("[%d %d %d] \n", AF1C1 * z, AF1C2 * z, AF1C3 * z);
printf("[%d %d %d] \n", AF2C1 * z, AF2C2 * z, AF2C3 * z);
printf("[%d %d %d] \n", AF3C1 * z, AF3C2 * z, AF3C3 * z);
}

if(x == 5)
{
printf(" \n[# # # Transpuesta de una Matriz # # #] \n \n ");

//Ingreso de Valores de la matriz A
printf("Valores de la Matriz A \n");
printf("Ingrese el valor de F1C1: ");
scanf("%d",&AF1C1);
printf("Ingrese el valor de F1C2: ");
scanf("%d",&AF1C2);
printf("Ingrese el valor de F1C3: ");
scanf("%d",&AF1C3);
printf("Ingrese el valor de F2C1: ");
scanf("%d",&AF2C1);
printf("Ingrese el valor de F2C2: ");
scanf("%d",&AF2C2);
printf("Ingrese el valor de F2C3: ");
scanf("%d",&AF2C3);
printf("Ingrese el valor de F3C1: ");
scanf("%d",&AF3C1);
printf("Ingrese el valor de F3C2: ");
scanf("%d",&AF3C2);
printf("Ingrese el valor de F3C3: ");
scanf("%d",&AF3C3);

//Impresion de la Matriz A con sus valores
printf("\nMatriz A \n");
printf("[%d %d %d] \n", AF1C1, AF1C2, AF1C3);
printf("[%d %d %d] \n", AF2C1, AF2C2, AF2C3);
printf("[%d %d %d] \n", AF3C1, AF3C2, AF3C3);

//Resultado
printf("\nResultado \n");
printf("[%d %d %d] \n", AF1C1, AF2C1, AF3C1);
printf("[%d %d %d] \n", AF1C2, AF2C2, AF3C2);
printf("[%d %d %d] \n", AF1C3, AF2C3, AF3C3);

}
printf("\n \n[#~ Codded By ANTRAX ~#] \n \n");
}