Advertisement
RochaJG

4.8) Matrizes - Soma das colunas, valores abaixo da média

May 2nd, 2016
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.79 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5.  
  6. //Código By: Jordan Rocha
  7.  
  8. /*
  9. 8) Seja uma matriz NxM de valores reais.
  10. Fazer um programa que leia esses valores
  11. e ao final da leitura de todos, imprimir o
  12. seguintes relatório:
  13.  
  14. a) a soma dos valores de cada coluna da matriz;
  15. b) quantos (e quais) são os valores menores que a
  16. média entre todos.
  17. */
  18.  
  19. int main(int argc, char** argv){
  20.     int const lin=3, col=4;
  21.     float matNum[lin][col], soma[col]={0}, media=0, menor[lin*col];
  22.     int i, j, nMenor=0;
  23.  
  24.     //Entrada de dados do usuário
  25.     cout<<"Insira os valores na matriz:"<<endl;
  26.     for(i=0; i<lin; i++)
  27.         for(j=0; j<col; j++){
  28.             cout<<"Linha: "<<i<<", Coluna: "<<j<<": ";
  29.             cin>>matNum[i][j];
  30.         }
  31.  
  32.     //Faz a soma de cada coluna e a soma de todos os valores
  33.     for(i=0; i<lin; i++)
  34.         for(j=0; j<col; j++){
  35.             soma[j] += matNum[i][j];
  36.             media += matNum[i][j];
  37.         }
  38.  
  39.     media /= (lin*col); //Calcula a média geral
  40.  
  41.     //Mostra a matriz
  42.     for(i=0; i<lin; i++){
  43.         cout<<"|";
  44.         for(j=0; j<col; j++){
  45.             if(matNum[i][j] < media){ //Verifica se o valor atual é menor que a média
  46.                 menor[nMenor] = matNum[i][j]; //Coloca na posição "nMenor" o valor que está abaixo da média
  47.                 nMenor++; //Conta quantos valores estão abaixo da média
  48.             }
  49.             cout<<matNum[i][j]<<"|";
  50.         }
  51.         cout<<endl;
  52.     }
  53.  
  54.     for(i=0; i<col; i++) //Mostra o vetor que contém a soma das colunas
  55.         cout<<"A soma da "<<i+1<<" coluna e igual a "<<soma[i]<<endl;
  56.  
  57.     if(nMenor > 0){ //Verifica se existem valores abaixo da média, se sim, os mostra
  58.         cout<<nMenor<<" valores ficaram abaixo da media "<<media<<", e foram ele(s): "<<endl;
  59.         for(i=0; i<nMenor; i++)
  60.             cout<<menor[i]<<endl;
  61.     }
  62.  
  63.     return 0;
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement