PDA

Visualizza la versione completa : c++


corallo
06-12-2011, 12:42
Ragazzi il problema che mi sta facendo scervellire il seguente:nel momento in cui vado a calcolare la media mi restituisce sempre un valore intero e non un float ma non riesco a capire il perch visto che inizializzo la variabile somma come float!Secondo voi dov' il problema?....Grazie per i consigli!....ah...non considerando la letture del secondo array che non serve in questo caso ma mi serve per operazioni successive!

#include <cstdlib>
#include <iostream>

using namespace std;

/*
*
*/
void leggivet(int v[],int riemp);
float media1(int v[],int n);

int main(int argc, char** argv) {

int vet1[10],vet2[10],med1,n1,n2;

cout<<"Quanti elementi del primo array?";
cin>>n1;

leggivet(vet1,n1);

cout<<"Quanti elementi del secondo array?";
cin>>n2;

leggivet(vet2,n2);

med1=media1(vet1,n1);

cout<<"La media e'"<<med1<<endl;

return 0;
}

void leggivet(int v[],int riemp){

for(int i=0;i<riemp;i++){
cout<<"Elemento "<<i<<":";
cin>>v[i];
}


}

float media1(int v[],int riemp){

float somma;
somma=0;


for(int i=0;i<riemp;i++){
somma=somma+v[i];
}

return(somma/riemp);
}

premoli
06-12-2011, 12:49
Ciao!!!

Perch nel main hai dichiarato med1 come int...

PS: in generale nel "titolo" del posto cerca di specificare anche la natura del problema...

alka
06-12-2011, 13:10
Originariamente inviato da premoli
PS: in generale nel "titolo" del posto cerca di specificare anche la natura del problema...

Non si deve cercare... obbligatorio.

corallo, sei gi stato richiamato in questa occasione (http://forum.html.it/forum/showthread.php?s=&threadid=1487434) per lo stesso motivo, per cui ti esorto di nuovo a leggere il Regolamento (http://forum.html.it/forum/showthread.php?s=&threadid=973887) e a rispettarlo indicando una descrizione rappresentativa nel titolo e formattando il codice sorgente come stato richiesto, altrimenti le discussioni verranno chiuse senza preavviso.

Loading