Files
Curso_de_Programacion_C/6. Arreglos multidimensionales/Programas/Programa 6.2/Programa 6.2.c
2022-11-16 17:55:35 -04:00

79 lines
1.9 KiB
C

#include <stdio.h>
/* Suma matrices.
El programa, al recibir como datos dos arreglos bidimensionales del mismo
➥tamaño, calcula la suma de ambos y la almacena en un tercer arreglo
➥bidimensional. */
#define MAX 50
/* Prototipo de funciones. */
void Lectura(int[][MAX], int, int);
void Suma(int[][MAX], int[][MAX], int[][MAX], int, int);
void Imprime(int[][MAX], int, int);
void main(void)
{
int MA[MAX][MAX], MB[MAX][MAX], MC[MAX][MAX];
/* Declaración de los tres arreglos */
int FIL, COL;
do
{
printf("Ingrese el numero de filas de los arreglos: ");
scanf("%d", &FIL);
} while (FIL > MAX || FIL < 1);
/* Se verifica que el número de filas sea correcto. */
do
{
printf("Ingrese el numero de columnas de los arreglos: ");
scanf("%d", &COL);
} while (COL > MAX || COL < 1);
/* Se verifica que el número de columnas sea correcto. */
printf("\nLectura del Arreglo MA\n");
Lectura(MA, FIL, COL);
printf("\nLectura del Arreglo MB\n");
Lectura(MB, FIL, COL);
Suma(MA, MB, MC, FIL, COL);
printf("\nImpresion del Arreglo MC\n");
Imprime(MC, FIL, COL);
}
void Lectura(int A[][MAX], int F, int C)
/* La función Lectura se utiliza para leer un arreglo bidimensional entero de F
➥filas y C columnas. */
{
int I, J;
for (I = 0; I < F; I++)
for (J = 0; J < C; J++)
{
printf("Ingrese el elemento %d %d: ", I + 1, J + 1);
scanf("%d", &A[I][J]);
}
}
void Suma(int M1[][MAX], int M2[][MAX], int M3[][MAX], int F, int C)
/* La función Suma se utiliza para sumar los arreglos y almacenar el resultado
➥en un tercer arreglo bidimensional. */
{
int I, J;
for (I = 0; I < F; I++)
for (J = 0; J < C; J++)
M3[I][J] = M1[I][J] + M2[I][J];
}
void Imprime(int A[][MAX], int F, int C)
/* La función Imprime se utiliza para escribir un arreglo bidimensional de tipo
➥entero de F filas y C columnas. */
{
int I, J;
for (I = 0; I < F; I++)
for (J = 0; J < C; J++)
printf("\nElemento %d %d: %d", I, J, A[I][J]);
}