Ir ao conteúdo
  • Cadastre-se

Jonatha Lima

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Tudo que Jonatha Lima postou

  1. Mano, deu tudo certo! Muito obrigadooo (y)
  2. Pessoal comecei um trabalho, tenho que entregar depois de amanhã! So tem uma parte que falta concluir, que é o item "D". Segue os requisitos: Segue o script: #include <time.h>#include <iostream>#include <cstdlib>#include <stdlib.h>#include <stdio.h>#include <Math.h>using namespace std;int M, N;int numlinhas, numcolunas, limite;int matriz[100][100];int menor = 400;int menor2 = 400;int maior = 0;int maior2 = 0;int aleatorio;int numerosaleatorios[1000];float media;void carrega(){ srand(time(NULL)); for (M=0; M<numlinhas; M++){ for (N=0; N<numcolunas; N++){ aleatorio = matriz[M][N] = rand()%400+1; numerosaleatorios[aleatorio] += 1; } }}void imprime(){ for (M=0; M<numlinhas; M++){ for (N=0; N<numcolunas; N++){ printf("%5d", matriz[M][N]); }cout<<"\n";cout<<"\n"; }}void imprimeqtdvezes(){ cout<<"ITEM A:"<< endl; for (int i = 0; i <= 400; i++){ if(numerosaleatorios[i] != 0){ cout << "O numero " << i << " foi repetido " << numerosaleatorios[i] << " vez(es)." << endl; } }}void menornumero(){ cout << "\n";cout << "ITEM B:" << endl; for(int M=0; M<numlinhas; M++){ for (int N=0; N<numcolunas; N++){ if (matriz[M][N]<menor){ menor=matriz[M][N]; } } }}void calculasoma2menores(){ menornumero(); for (int M=0; M<numlinhas; M++){ for (int N=0; N<numcolunas; N++){ if (matriz[M][N]>menor and matriz[M][N]<menor2){ menor2=matriz[M][N]; } } } }void maiornumero(){cout << "ITEM C:" << endl; for (int M=0; M<numlinhas; M++){ for (int N=0; N<numcolunas; N++){ if (matriz[M][N]>maior){ maior=matriz[M][N]; } } }}void calculadiferenca2maiores(){ maiornumero(); for (int M=0; M<numlinhas; M++){ for (int N=0; N<numcolunas; N++){ if (matriz[M][N]<maior and matriz[M][N]>maior2){ maior2=matriz[M][N]; } } }}void media_num(){ cout << "\n"; float total; for (M=0; M<=numlinhas; M++){ for (N=0; N<=numcolunas; N++){ total = total + matriz[M][N]; } media = total/(numlinhas * numcolunas); }}void dif_media(){ media_num(); int valoraprox = matriz[M][N]; for (M=0; M<numlinhas; M++) for (N=0; N<numcolunas; N++) if (valoraprox == media){ cout<< "O valor aproximado e: " << valoraprox; } if (valoraprox and matriz[M][N] < media){ if (matriz[M][N] > valoraprox){ cout << "O valor aproximado e: " << valoraprox; } } if (matriz[M][N] and valoraprox > media){ if (matriz[M][N] < valoraprox){ cout << "O valor aproximado e: " << valoraprox; } } if (matriz[M][N] > media and valoraprox < media){ if ((matriz[M][N] - media) < (media - valoraprox)){ cout << "O valor aproximado e: " << valoraprox; } } if (matriz[M][N] < media and valoraprox > media){ if ((media - matriz[M][N]) < (valoraprox - media)){ cout << "O valor aproximado e: " << valoraprox; } } }/*void pesquisa(){ int num_menor; for (int M=0;M<numlinhas;M++) for (int N=0;N<numcolunas;N++) if(matriz[M][N]==num_menor){ } cout<<num_menor<<" esta na posicao "<<N+1<<" da linha "<<M+1<<"\n";}*/int main(){cout << "*************** Grupo XV - Matriz M x N - JONATHA LIMA *************** " << endl << endl;while (1){cout << "Numero de linhas: ";cin >> numlinhas;cout << "Numero de colunas: ";cin >> numcolunas;if (numlinhas * numcolunas <= 300){cout << "\n";carrega();imprime();imprimeqtdvezes();calculasoma2menores();cout << menor << " é o menor numero, " << menor2 << " é o segundo menor numero.\n"; cout << "O resultado da soma dos dois menores numeros é: " << menor+menor2;cout<<"\n";cout<<"\n";calculadiferenca2maiores();cout << maior << " é o maior numero, " << maior2 << " é o segundo maior numero.\n"; cout << "O resultado da diferenca dos dois maiores numeros é: " << maior-maior2; cout<<"\n";cout<<"\n";media_num();cout << "a media e: " << media << endl <<endl;dif_media();//pesquisa();break; }else{cout << "\n";cout << ">>>>>>>>>>>>>>>>>>>>>>>>>>>>> INSIRA VALORES VALIDOS : (Num. de Linhas * Num. de Colunas <= 300) <<<<<<<<<<<<<<<<<<<<<<<<<<<<<" << endl << endl; } }} Agradeço muito quem puder me ajudar, THX
  3. Ah sim, tinha entendido errado, vou ver se consigo ajeitar aqui o cod, eu tava fazendo do jeito que o professor tava explicando, mas nem entendi, ja pelo seu método compreendi mais! So tem uma coisa que não to compreendendo. A variavel "valorproximo" e a media eu sei quais são. Qual seria o valor da matriz? matriz[M][N] é?
  4. Segue o que eu consegui fazer, mas ta retornando ainda o primeiro valor da matriz e agora negativo. O que eu teria que mudar? void dif_media(){ int valoraprox=matriz[0][0]; float media; num_menor = media - matriz[0][0]; for (M=0; M<numlinhas; M++) for (N=0; N<numcolunas; N++) if (valoraprox == media){ cout<< " " << num_menor; } if (valoraprox and num_menor < media){ if (num_menor>valoraprox){ cout << " " << num_menor; } } if (num_menor and valoraprox > media){ if (num_menor < valoraprox){ cout << " " << num_menor; } } if (num_menor > media and valoraprox < media){ if ((num_menor - media) < (media - valoraprox)){ cout << " " << num_menor; } } if (num_menor < media and valoraprox > media){ if ((media - num_menor) < (valoraprox - media)){ cout << " " << num_menor; } } }
  5. Boa tarde @ScreenBlack, tem como me ajudar, sou iniciante também e estou com problema nesse ultimo item "D". Segue trecho do meu script void media(){ total = 0; for (M=0; M<=numlinhas; M++){ for (N=0; N<=numcolunas; N++){ total = total + matriz[M][N]; } float media = total/(numlinhas*numcolunas); } } void dif_media(){ float media; num_menor = media - matriz[0][0]; for (M=0; M<numlinhas; M++) for (N=0; N<numcolunas; N++) if (num_menor<0){ num_menor=num_menor*-1; } else{ num_menor=num_menor*1; } cout<<"o numero da matriz que mais se aproxima é "<<num_menor<<endl; } O número que se aproxima da média, ta sendo sempre o primeiro numero da matriz!Gostaria de saber onde esta o erro. Obrigado!

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!