• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Przerwanie pętli nie działa?

Object Storage Arubacloud
0 głosów
246 wizyt
pytanie zadane 22 maja 2017 w C i C++ przez Huberti Gaduła (4,500 p.)
Witam, jestem amatorem C++ i chcę stworzyć kalkulator średniej arytmetycznej z ocen, jednak tu pojawia się pewien problem, otóż dlaczego po wpisaniu liczby innej niż: 1,2,3,4,5,6 pętla nie zamyka się? Chodzi mi o to, że gdy podam ocenę program powinien dodać ją do pozostałych, natomiast gdy np. w środku wpiszę 125 pojawił się napis ocena moze byc tylko liczbami: 1,2,3,4,5 lub 6! i zamknął się. Proszę o pomoc, wklejam kod:

#include <iostream>

using namespace std;

int przedmioty; float liczba; float oceny;

int main()
{
    cout << "Liczba ocen do sredniej:";
    cin >> przedmioty;
    if (przedmioty>0)
    {
        for (int i=0; i<przedmioty; i++)
        {
            cout << "Wpisz ocene:";
            cin >> liczba;
            if ((liczba=1)||(liczba=2)||(liczba=3)||(liczba=4)||(liczba=5)||(liczba=6))
            {
                oceny=liczba+oceny;
            }
            else
            {
                cout << "Ocena moze byc tylko liczbami: 1,2,3,4,5 lub 6!";
                break;
            }
        }

    }
    else if (przedmioty<=0)
    {
        cout << "Liczba przedmiotow musi byc wieksza od 0!";
    }
    return 0;
}

1 odpowiedź

+2 głosów
odpowiedź 22 maja 2017 przez k222 Nałogowiec (30,150 p.)
wybrane 5 czerwca 2017 przez Huberti
 
Najlepsza

Dużo tu by pisać o tym programie, bo krótko mówiąc jest źle, ale myślę że to o co pytasz to:

jeżeli w C++ napiszesz

liczba = 1

to do zmiennej liczba przypisujesz wartość 1

jeżeli napiszesz

liczba == 1

to porównujesz czy liczba jest równa 1 i nic nie zmieniasz zatem trzeba zmienić

if ((liczba=1)||(liczba=2)||(liczba=3)||(liczba=4)||(liczba=5)||(liczba=6))

na

if ((liczba==1)||(liczba==2)||(liczba==3)||(liczba==4)||(liczba==5)||(liczba==6))

wtedy zamiast przypisywać wartości będzie je porównywać

komentarz 23 maja 2017 przez Huberti Gaduła (4,500 p.)
Tak faktycznie zapomniałem o tym, bardzo dziękuję za pomoc!  Program już działa tak jak chciałem :)

Podobne pytania

0 głosów
2 odpowiedzi 1,229 wizyt
pytanie zadane 14 sierpnia 2019 w C i C++ przez kukulim Mądrala (6,440 p.)
0 głosów
1 odpowiedź 119 wizyt
pytanie zadane 25 lipca 2020 w Java przez Programmingc100 Bywalec (2,620 p.)
0 głosów
2 odpowiedzi 330 wizyt

92,551 zapytań

141,395 odpowiedzi

319,526 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...