Advertisement
Guest User

Prova AF

a guest
Nov 27th, 2014
173
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Escreva um programa em C que leia os elementos do tipo inteiro para uma matriz Mxy e encontre o menor elemento da matriz.
  2.  
  3. //-As dimensões da matriz M deve ser fornecida por linha de comando por meio de parâmetro na função main
  4. int main(int argv, char **argc)
  5.  
  6. //-A matriz M deve ser alocada dinamicamente
  7.     int linhas = atoi(argc[1]);
  8.     int colunas = atoi(argc[2]);
  9.  
  10.     int * matriz = malloc(linhas*colunas*atoi(int));
  11.  
  12. //-Deve ser construída uma função para calcular o menor valor
  13. int menorValor(int * const matriz, int linhas, int colunas) {
  14.     int menor = *(matriz+1);
  15.  
  16.     int i;
  17.     for (i=0; i<linhas*colunas; i++)
  18.         menor = menor < *(matriz+i) ? menor : *(matriz+i);
  19.  
  20.     return menor;
  21. }
  22.  
  23. //que deve ser armazenado num arquivo matematica.c
  24. //para compilação separada e possuir o retorno tipo void.
  25.  
  26. //E POSSUIR O RETORNO TIPO VOID!? E vai jogar esse valor aonde? Numa variável global?!
  27. //Qual o sentido dessa gambiarra?!?!?
  28.  
  29. //-O calculo do menor valor deve ser impresso para o usuário dentro da função main.
  30. int main... {
  31.     malloc....
  32.  
  33.     popularMatriz(matriz, linhas, colunas);
  34.  
  35.     int menor = menorValor(matriz, linhas, colunas);
  36.     printf("Menor valor da matriz: %d", menor);
  37. }
  38.  
  39. //-Deve-se construir um arquivo de cabeçalho com extensão .h
  40. #ifndef _MATEMATICA_INCLUDED_
  41. #define _MATEMATICA_INCLUDED_
  42.  
  43. menorValor(int * const matriz, int linhas, int colunas);
  44.  
  45. #endif
  46.  
  47. //-Não utilize indexação para manipular a matriz. Use apenas ponteiros.
  48. OK
  49.  
  50. //Ps: Os valores da matriz devem ser gerados aleatoriamente
  51. int popularMatriz(int * const matriz, int linhas, int colunas) {
  52.     srand(time(null)); // Algo assim. Não me lembro
  53.  
  54.     int i;
  55.     for (i=0; i<linhas*colunas; i++)
  56.         *(matriz+i) = rand()%100;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement