Forum: Avbryta slinga om det är en bokstav

Forum huvudsida -> Programmering -> Avbryta slinga om det är en bokstav

Sidor: 1

Till botten

JagEEnLjugare 19:20 - 16:e Februari 2006 | Post #1
Medlem
Inlägg: 10


Skicka PM
  1.  
  2. #include <iostream>
  3.  
  4. int main()
  5. {
  6. using namespace std;
  7. double tal[10];
  8. int i = 0;
  9. cout << "Nummer 1: ";
  10. while (i < 10 && cin >> tal[i])
  11. {
  12. if (i++ < 9)
  13. cout << "Nummer " << i + 1 << ": ";
  14. }
  15. double total = 0.0;
  16. int j = 0;
  17. for (j = 0;j != i;j++)
  18. total += tal[j];
  19. cout << "Genomsnittet är: " << total / j << endl;
  20. cout << "Dom över genomsnittet är: ";
  21. for (int j = 0;j != i;j++)
  22. {
  23. if (tal[j] >= total / i)
  24. cout << tal[j] << " ";
  25. }
  26. cin.get();
  27. cin.get();
  28. return 0;
  29. }


Ja, den funkar ju fint förutom en sak. Om man försöker mata in en bokstav till tal[i] ska slingan avbrytas. Men det som händer är bara att programmet kraschar. Nån som kan hjälpa mig?

-------------------------
Ingen signatur!



Nissebosselasse 21:52 - 18:e Februari 2006 | Post #2
Medlem
Inlägg: 490


Skicka PM
Jag testade att kompilera din kod i Visual C++ 6 och det gick bra, den avbröt när man matade in en bokstav (fick dock ändra int j=0 till enbart j=0 i sista slingan, eftersom du redan hade deklarerat den tidigare i koden).

-------------------------
http://pushingcows.se
Gula Nallen



JagEEnLjugare 07:43 - 19:e Februari 2006 | Post #3
Medlem
Inlägg: 10


Skicka PM
Hmm då är det väl min kompilator som spökar med mig.
Men nu ska jag åka till fjällen så nu tänker jag inte bry mig om det på ett tag.

-------------------------
Ingen signatur!



Sidor: 1

Forum huvudsida -> Programmering -> Avbryta slinga om det är en bokstav
Atom feed

Du får inte posta i den här tråden | Till toppen