C++/Listy: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
brakuje "iter=" przy usuwaniu elementu przez erase, przez co kod wyrzuca błąd o "naruszeniu ochrony pamieci". Pozdrawiam :)
→‎Lista: rzutowanie w stylu C -> rzutowanie static_cast, poprawiona pętla
Linia 36:
 
cout << "Podaj kolejne elementy listy, podaj zero aby zakonczyc:\n";
while(truecin >> liczba && liczba != 0)
{
cin >> liczba;
if (liczba == 0)
break;
lista.push_back(liczba);
}
 
int rozmiar = lista.size();
Linia 50 ⟶ 45:
liczba += *iter;
 
cout << "Srednia liczb wystepujacych w liscie wynosi " << (static_cast<double)>(liczba) / (static_cast<double)>(lista.size()) << '\n';
 
// usuniecie liczb ujemnych
Linia 63 ⟶ 58:
liczba += *iter;
cout << "Srednia dodatnich liczb wynosi " << static_cast<double>(doubleliczba)liczba / (static_cast<double)>(lista.size()) << '\n';
return 0;
}
</source>
W zaprezentowanym powyżej programie, został użyty nowy zapis: '''while (cin >> liczba && liczba != 0)'''. Wywołuje on pętlę nieskończoną, która kończy działanie gdy użytkownik wpisze 0, gdy program dojdzie do końca pliku, lub gdy użytkownik wpisze coś co nie jest liczbą całkowitą.
 
== Metody ==