Ir ao conteúdo
  • Cadastre-se
Luis Henrique_761589

Duvida em Função

Recommended Posts

Pessoal sou novo no fórum e queria tirar uma duvida no meu programa, ele roda tudo certinho mas o calculo da media mas quando ele retorna ele sempre retorna 2 e queria saber o que está errado, o código é:

 

 #include<iostream>

 
using namespace std;
 
 
float media(float n[])
{
int cont;
float sm=0,md=0;
for(cont = 0 ; cont < 4 ; cont++ )
{
sm = sm+n[cont];
md = sm/4;
return (md);
}
}
 
main()
{
float notas[4],media_alunos;
int cont;
 
  setlocale(LC_ALL,"portuguese");
 
   for(cont = 0 ; cont < 4 ; cont++ )
   {
     cout<<"Informe a "<<cont+1<<"ª nota: ";
     cin>>notas[cont];
   }
   media_alunos = media(notas);
 
   cout<<"A media do aluno = "<<media_alunos<<endl;
 
}
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O return ( md ); deve estar fora do laço for. Esse for se executa 4 vezes, porém si ele encontrar o return vai ser interrompido na "primeira volta".

 

Lembre-se disso... Return tem 2 cometidos. A primeira qualidade do return é que ele, como você ja sabe, ele retorna um valor. O que poucos sabem é que ele detêm em seco a função. Ou seja você pode ter mais de um return, realmente nada impede ter infinitos returns em uma função, só que ao topar com um deles a função vai ser interrompida imediatamente e retornará ao ponto de invocação da mesma. É bastante útil ter vários retornos veja um exemplo.

#include <iostream>using namespace std;char* nome(int nome){    switch (nome) {        case 1:            return (char*)"Paulo";        case 2:            return (char*)"Marcos";        case 3:            return (char*)"Felipe";        default:            return (char*)"No name";    }}int main (){        cout << "Bem vindo senhor " << nome(1) << endl;    cout << "Bem vindo senhor " << nome(2) << endl;    cout << "Bem vindo senhor " << nome(3) << endl;    cout << "Bem vindo senhor " << nome(10) << endl;    cin.ignore();    return 0;}

Beleza? :kiss:

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×