Created
July 8, 2020 06:37
-
-
Save cbedoy/1cbe82845322d8a48130feb943cefde6 to your computer and use it in GitHub Desktop.
codeeee amigaaaa
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #include <stdio.h> | |
| #include <stdlib.h> | |
| #include <time.h> | |
| #define SIZE 5 | |
| void showMenu(){ | |
| printf("\n\nSelecciona:\n"); | |
| printf("1) Crear matrix\n"); | |
| printf("2) Sumar matrix\n"); | |
| printf("3) Suma diagonal\n"); | |
| printf("4) Suma tringular\n"); | |
| printf("-1) Salir\n"); | |
| } | |
| void fillMatrix(int mx[SIZE][SIZE]){ | |
| srand(time(NULL)); | |
| int i = 0, j = 0; | |
| for(i=0; i<SIZE; i++){ | |
| for(j=0; j<SIZE; j++){ | |
| mx[i][j] = (rand() % 9); | |
| } | |
| } | |
| } | |
| void printMatrix(int mx[SIZE][SIZE]){ | |
| int i = 0, j = 0; | |
| for(i=0; i<SIZE; i++){ | |
| printf("\n"); | |
| for(j=0; j<SIZE; j++){ | |
| printf("[%d] ", mx[i][j]); | |
| } | |
| } | |
| } | |
| void sumMatrix(int a[SIZE][SIZE], int b[SIZE][SIZE], int c[SIZE][SIZE]){ | |
| int i = 0, j = 0; | |
| for(i=0; i<SIZE; i++){ | |
| for(j=0; j<SIZE; j++){ | |
| c[i][j] = a[i][j] + b[i][j]; | |
| } | |
| } | |
| } | |
| int diagonalSumatory(int c[SIZE][SIZE]){ | |
| int i = 0, j = 0, result = 0; | |
| for(i=0; i<SIZE; i++){ | |
| result += c[i][i]; | |
| } | |
| return result; | |
| } | |
| int sumaTriangular(int c[SIZE][SIZE]){ | |
| int i = 0, j = 0, result = 0; | |
| for(i=0; i<SIZE; i++){ | |
| for(j=i; j<SIZE; j++){ | |
| result += c[i][j]; | |
| } | |
| } | |
| return result; | |
| } | |
| void clearMatrix(int mx[SIZE][SIZE]){ | |
| int i = 0, j = 0; | |
| for(i=0; i<SIZE; i++){ | |
| for(j=0; j<SIZE; j++){ | |
| mx[i][j] = 0; | |
| } | |
| } | |
| } | |
| int main(void) { | |
| int matrixA[SIZE][SIZE]; | |
| int matrixB[SIZE][SIZE]; | |
| int matrixC[SIZE][SIZE]; | |
| int i = 0, j = 0, opt = 0; | |
| while(opt != -1){ | |
| showMenu(); | |
| scanf("%d", &opt); | |
| switch(opt) { | |
| case 1: { | |
| clearMatrix(matrixA); | |
| clearMatrix(matrixB); | |
| clearMatrix(matrixC); | |
| fillMatrix(matrixA); | |
| fillMatrix(matrixB); | |
| printf("\nMatrix A:\n"); | |
| printMatrix(matrixA); | |
| printf("\nMatrix B\n"); | |
| printMatrix(matrixB); | |
| break; | |
| } | |
| case 2: { | |
| sumMatrix(matrixA, matrixB, matrixC); | |
| printf("\nMatrix C:\n"); | |
| printMatrix(matrixC); | |
| break; | |
| } | |
| case 3: { | |
| int result = diagonalSumatory(matrixC); | |
| printf("\nMatrix C:\n"); | |
| printMatrix(matrixC); | |
| printf("\nLa sumatoria de la dialonal es: %d\n", result); | |
| break; | |
| } | |
| case 4: { | |
| int result = sumaTriangular(matrixC); | |
| printf("\nMatrix C:\n"); | |
| printMatrix(matrixC); | |
| printf("\nLa suma tringular superior es: %d\n", result); | |
| break; | |
| } | |
| default: { | |
| printf("Entrada invalida."); | |
| } | |
| } | |
| } | |
| return 0; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment