



Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
calculadora de matrices ejercicio resuelto
Tipo: Ejercicios
1 / 5
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




// ConsoleApplication20.cpp : Defines the entry point for the console applicatio n. //
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[]) {
//declaracion de variables float matrizA[50][50]; float matrizB[50][50]; float matrizC[50][50]; int i, j, k, numfa, numca, numfb, numcb, opcion, flag; flag = 0; //Ingreso de la dimension de la matriz A printf("Ingrese el numero de filas de la matriz A\n"); scanf_s("%d", &numfa); printf("Ingrese el numero de columnas de la matriz A\n"); scanf_s("%d", &numca);
//Ingreso de las matrices A printf("Ingresa la matriz A\n"); for (i = 0; i < numfa; i++) { for (j = 0; j < numca; j++) { printf("Ingrese el elemento A %d - %d \n", i, j); scanf_s("%f", &matrizA[i][j]); } }
//Ingreso de la dimension de la matriz B printf("Ingrese el numero de filas de la matriz B\n"); scanf_s("%d", &numfb); printf("Ingrese el numero de columnas de la matriz B\n"); scanf_s("%d", &numcb);
//Ingreso de la matriz B printf("Ingresa la matriz B\n"); for (i = 0; i < numfb; i++) { for (j = 0; j < numcb; j++) { printf("Ingrese el elemento B %d - %d \n", i, j); scanf_s("%f", &matrizB[i][j]); } }
//Menu de opciones printf("\n"); printf("Elija una opcion \n"); printf("1: suma\n"); printf("2: resta\n"); printf("3: multiplicacion\n"); printf("4: division\n"); scanf_s("%d", &opcion); printf("\n");
switch (opcion) {
case 1: if (numfa == numfb && numca == numcb) { for (i = 0; i < numfa; i++) { for (j = 0; j < numcb; j++) { matrizC[i][j] = matrizA[i][j] + matrizB[ i][j]; }
}
} else { for (i = 0; i < numfa; i++) { for (j = 0; j < numcb; j++) { matrizC[i][j] = -9999; } } flag = 1; } break;
case 2: if (numfa == numfb && numca == numcb) { for (i = 0; i < numfa; i++) { for (j = 0; j < numcb; j++) { matrizC[i][j] = matrizA[i][j] - matrizB[ i][j]; } } } else { for (i = 0; i < numfa; i++) { for (j = 0; j < numca; j++) { matrizC[i][j] = -9999;
} } flag = 1; }
break;
case 3: if (numca == numfb)
break;
default: printf("ERROR DE OPCION \n"); break; }
//Impresion de la Matriz A printf("Matriz A \n"); printf("\n"); for (i = 0; i < numfa; i++) { for (j = 0; j < numca; j++) { printf("%5.2f \t", matrizA[i][j]); } printf("\n"); } printf("\n"); //Impresion de la Matriz B printf("Matriz B\n"); printf("\n"); for (i = 0; i < numfb; i++) { for (j = 0; j < numcb; j++) { printf("%5.2f \t", matrizB[i][j]); } printf("\n"); } printf("\n");
//Bandera
if (flag == 1) { printf("Para realizar la suma, la resta o la divison de matrices \n el numero de fila y columnas deben ser igual \n es decir la misma dimension de ambas matrices \n"); } else { if (flag == 2) { printf("Para realizar la multiplicacion de matrices \n l a dimension de las columnas de la primera matriz \n debe ser igual a la dimensio n de las filas de la segunda matriz \n"); } else { if (flag==3) { printf("Recuerda que la division para cero no ex iste \n");
} }
printf("Matriz Resultante\n"); printf("\n"); for (i = 0; i < numfa; i++) { for (j = 0; j < numcb; j++) { printf("%5.2f \t", matrizC[i][j]); } printf("\n"); }
getchar(); getchar();
return 0; }