Które wyrażenie w C++ sprawdza, czy liczba jest TRZYCYFROWĄ wartością PARZYSTĄ?
Dobrze. Parzysta ORAZ trzycyfrowa (wszystkie warunki
&&).Źle.
|| nie wymaga parzystości i trzycyfrowości naraz.Źle. Same
|| - wystarczy jeden warunek.Źle.
|| sprawia, że zakres jest prawie zawsze prawdziwy.Liczba trzycyfrowa to wartość z przedziału od 100 do 999, czyli
liczba > 99 && liczba < 999 (lub równoważnie >= 100 && <= 999), a parzysta to liczba % 2 == 0. Wszystkie warunki muszą zachodzić naraz, więc łączy je &&. Dlatego poprawne jest liczba % 2 == 0 && liczba > 99 && liczba < 999.Pozostałe zapisy źle łączą warunki.
|| wystarczyłoby spełnić jeden z nich, więc przeszłaby też liczba jednocyfrowa parzysta. Warunek „liczba > 99 || liczba < 999” jest prawdziwy dla niemal każdej liczby. Trzycyfrową parzystą opisuje liczba % 2 == 0 && liczba > 99 && liczba < 999.