Nybörjare C++ for loop vill inte köra
Hej,
jag har precis börjat med C++ och håller på med en uppgift till skolan.
Uppgiften är att låta användaren skriva in ett fritt antal nummer och programmet ska svara med summa, medelvärde, störst och näst störst. Allt ska vara olika funktioner som anropas i main.
Jag har nu fastnat på funktionen att räkna ut störst tal. Min nästlade for loop vägrar köras. Har bokstavligt talat gjort allt jag kan komma på inkl läst böcker och kollat mängder av trådar och tutorials. Men loopen jämför endast de två första talen och returnerar det största av dem.
Den går aldrig hela loopen. Vill tillägga att jag förstår att return 0; kanske bör tas bort, men då f-ckar programmet och jag har därför lagt den där så länge så for loopen iaf returnerar det största av två tal.
Kan nån vänlig själ säga var mitt problem ligger? Xcode markerar h++ som fel.
Funktionerna summering och inlasning fungerar utmärkt, men skickar med dem om det kanske redan är där felet gjorts.
int utraknstorsttal(int storsta)
{
int v, ST, STOR;
for (v=0; v<=list.size()-2; v++)
{
for (int h=v+1; h<=list.size()-1; h++) //felkod:increment never executed
{
if (list[h] < list[v])
{
ST = list[v];
list[v] = list[h];
list[h] = ST;
}
stor=list[h];
return stor;
}
}
return 0;
}
//Funktion Summering**********************
int summering (void)
{
double sum = 0;
for (size_t i=0; i<list.size(); i++)
sum += list [i];
return sum;
}
//Funktion inläsning***************************
void inlasning(void) //Inläsning av ett antal tal, talen sparas i list
{
int tal;
cout << "Ange ett antal tal, avsluta på 0: " <<endl;
do
{
cin>>tal;
cin.get();
list.push_back(tal);
}
while(tal != 0);
}
Tack på förhand