Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Utilizar matrizes com a soma das diagonais principais
- * Diego Mendes Rodrigues
- */
- #include <stdio.h>
- #include <stdlib.h>
- #define TAMANHO 3
- /**
- * Colocar valores com números aleatórios nas posições de uma matriz
- */
- void preencher(int matriz[TAMANHO][TAMANHO]) {
- int i, j;
- for(i=0;i<TAMANHO;i++) {
- for(j=0;j<TAMANHO;j++) {
- matriz[i][j] = (rand() % 100) + 1;
- }
- }
- }
- /**
- * Imprimir uma matriz na tela
- */
- void imprimir(int matriz[TAMANHO][TAMANHO], int numero) {
- int i, j;
- printf("Matriz %d\n--------\n", numero);
- for(i=0;i<TAMANHO;i++) {
- for(j=0;j<TAMANHO;j++) {
- printf("%d ", matriz[i][j]);
- }
- printf("\n");
- }
- printf("\n");
- }
- /**
- * Imprimir os valores da diagonal principal de uma matriz
- * Retorna a soma da diagonal principal
- */
- int diagonal(int matriz[TAMANHO][TAMANHO], int numero) {
- int i, soma = 0;
- printf("Diagonal da Matriz %d\n--------------------\n", numero);
- for(i=0;i<TAMANHO;i++) {
- printf("%d \n", matriz[i][i]);
- soma += matriz[i][i];
- }
- printf("\n");
- return soma;
- }
- /**
- * Função principal do sistema
- */
- int main(void) {
- int matriz1[TAMANHO][TAMANHO], matriz2[TAMANHO][TAMANHO];
- int i, j, soma1, soma2;
- /* Colocar valores com números aleatórios nas matrizes */
- preencher(matriz1);
- preencher(matriz2);
- /* Exibir na tela as matrizes */
- imprimir(matriz1, 1);
- imprimir(matriz2, 2);
- /* Imprimir a diagonal principal de cada atriz */
- soma1 = diagonal(matriz1, 1);
- soma2 = diagonal(matriz2, 2);
- /* Imprimir a soma das diagonais das matrizes */
- printf("Soma da diagonal principal da matriz 1 = %d\n", soma1);
- printf("Soma da diagonal principal da matriz 2 = %d\n", soma2);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment