Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda em Calculo de media aritmetica usando vetores e funçao


David Mendonça

Pergunta

#include <iostream>
#include <cstdlib>
#include <cmath>
#include <conio.h>
using namespace std;
 //Calcula a media Aritmetica
 float CalculoMedia (float n, float soma, float media) 
{ 
    float nota[20] = {3.5, 8.9, 9.0, 9.56, 8.78,
                      7.45, 5.9, 9.9, 9.98, 6.3,
                      4.3, 2.3, 5.0, 8.2, 6.50,
                      7.0, 6.98, 8.3, 9.1, 2.3}; 
    n = 20.0;
    soma = 0.0;
    for (int i=0; i<20; i++)
    {
        soma = soma + nota[i];
    }
    media = soma/n;
    return media;
 }   
  
   // Inicia a funcao de Ordenacao das notas
   int main()
{
float x; int i; bool parar = false;   //x -> variavel auxiliar para troca de valores
float average; 
  float nota[20] = {3.5, 8.9, 9.0, 9.56, 8.78,
                    7.45, 5.9, 9.9, 9.98, 6.3,
                    4.3, 2.3, 5.0, 8.2, 6.50,
                    7.0, 6.98, 8.3, 9.1, 2.3}; 
  int n = 20;
  float media;                  
       while (parar == false) 
       {
          parar = true;
          for (i=0; i<19; i++)
          {
              if (nota[i] > nota[i+1])
               {
               parar = false;
               x = nota[i];
               nota[i] = nota[i+1];
               nota[i+1] = x;
               }
           }
       }       
     // Exibicao das notas
     cout << "Notas ordenadas \n";
     for (i=0; i<20; i++)
     {
       cout << "\n "<< nota[i];
     }         
     
     cout << "\n \n Nota mais alta: " << nota[19]; 
     cout << "\n Menor nota: " << nota[0];
     average = CalculoMedia(nota, n);    
     cout<< "Media das notas:" << average <<"\n"; 
          getch(); 
}

Estou tentando chamar a funcao "CalculoMedia", para mostrar o resultado na funçao principal.

A parte de ordenaçao dos valores deu certo.

So preciso dessa parte da media.

Eu não entendi a msg de erro na linha 63 que foi retornada, que é essa aqui:

63 C:\Users\David Renan\Documents\Faculdade 2011\TP\Exercicios\Media_DesvioPadrao 3.cpp cannot convert `float*' to `float' for argument `1' to `float CalculoMedia(float, float, float)'

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Olá David

Você ordena as notas na funcao main mas tem a matriz desordenada na funcao calculomedia.

O ideal é passar a matriz ordenada para a funcao.

Se tiver duvidas avisa ai.

Abs

#include <iostream>
#include <cstdlib>
#include <cmath>
#include <conio.h>
using namespace std;
//Calcula a media Aritmetica
float CalculoMedia (float nota[20], int n) 
{ 
    float soma = 0.0;
    for (int i=0; i<20; i++)
    {
        soma = soma + nota[i];
    }
    return soma / n;
}   

// Inicia a funcao de Ordenacao das notas
int main()
{
  float x; int i; bool parar = false;   //x -> variavel auxiliar para troca de valores
  float average; 
  float nota[20] = {3.5, 8.9, 9.0, 9.56, 8.78,
                    7.45, 5.9, 9.9, 9.98, 6.3,
                    4.3, 2.3, 5.0, 8.2, 6.50,
                    7.0, 6.98, 8.3, 9.1, 2.3}; 
  int n = 20;
  float media;                  
       while (parar == false) 
       {
          parar = true;
          for (i=0; i<19; i++)
          {
              if (nota[i] > nota[i+1])
               {
               parar = false;
               x = nota[i];
               nota[i] = nota[i+1];
               nota[i+1] = x;
               }
           }
       }       
     // Exibicao das notas
     cout << "Notas ordenadas \n";
     for (i=0; i<20; i++)
     {
       cout << "\n "<< nota[i];
     }         
     
     cout << "\n\n Maior Nota: " << nota[19] << "\n"; 
     cout << " Menor nota: " << nota[0] << "\n";
     average = CalculoMedia(nota, n);    
     cout<< " Media das notas:" << average <<"\n"; 
     getch(); 
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...