Warunek ma sprawdzić spełnienie co najmniej jednego z dwóch przypadków, więc całość musi być połączona operatorem alternatywy logicznej || (OR). To oznacza: wystarczy, że prawdziwy będzie warunek dla a lub prawdziwy będzie warunek dla b.
Pierwszy przypadek dotyczy tego, czy liczba a jest trzycyfrowa. W praktyce sprawdza się to jako przynależność do przedziału: od 100 do 999. Zapis zakresu wymaga jednoczesnego spełnienia dwóch ograniczeń, czyli koniunkcji && (AND):
- a > 99 (czyli co najmniej 100),
- a < 1000 (czyli najwyżej 999).
Dlatego fragment dotyczący a powinien mieć postać logicznego "i": (a > 99) && (a < 1000). Drugi przypadek jest prosty: liczba całkowita b jest ujemna, czyli b < 0.
Poprawna odpowiedź łączy oba przypadki w wymagany sposób: zakres dla a ORAZ ujemność b jako alternatywy, czyli: warunek dla a || warunek dla b.
Dlaczego pozostałe propozycje są błędne?
- Wyrażenie z częścią (a > 99) || (a < 1000) jest logicznie prawie zawsze prawdziwe dla liczb naturalnych, bo większość wartości spełni przynajmniej jeden z tych członów. To nie opisuje poprawnie przedziału trzycyfrowego.
- Warianty, w których całość jest połączona operatorem &&, wymagają spełnienia obu przypadków jednocześnie (a trzycyfrowe i b ujemne). To przeczy treści "przynajmniej jeden z przypadków".
- Wariant z poprawnym zakresem dla a, ale połączony z (b < 0) przez &&, zawęża warunek do sytuacji, gdy oba są prawdziwe, a nie gdy prawdziwy jest dowolny z nich.
Wskazówka egzaminacyjna: przy zadaniach "co najmniej jeden" szukaj OR (||), a przy sprawdzaniu przedziału zawsze potrzebujesz AND (&&), bo oba ograniczenia muszą obowiązywać równocześnie.