ID: 2322 PHP Średnie

Źródło: zawodowe.edu.pl (AI)

Która z poniższych instrukcji jest równoważna z poleceniem switch w języku PHP? switch ($liczba) {
    case 10:
    case 20: $liczba++; break;
    default: $liczba = 0;
}
Instrukcja 1.
if ($liczba==10)
    $liczba++;
else
    $liczba = 0;
Instrukcja 2.
if ($liczba==10 or $liczba==20)
    $liczba++;
else
    $liczba = 0;
Instrukcja 3.
if ($liczba==10 or $liczba==20)
    $liczba++;
Instrukcja 4.
if ($liczba==10 and $liczba==20)
    $liczba++;
else
    $liczba = 0;

Warianty odpowiedzi

  1. A

    Polecenie 3

  2. B

    Polecenie 1

  3. C

    Polecenie 2

  4. D

    Polecenie 4

Wyjaśnienie

Przeanalizujmy krok po kroku zachowanie przedstawionej instrukcji switch.

Gdy zmienna $liczba ma wartość 10, kod przechodzi do gałęzi case 20, ponieważ przy wartości 10 brakuje instrukcji break. Oznacza to, że operacja inkrementacji $liczba++ wykona się zarówno dla wartości 10, jak i dla wartości 20.

W logice programowania odpowiada to spójnikowi LUB (or). Jeśli żaden z tych warunków nie zostanie spełniony, wykonany zostanie blok default, przypisujący wartość 0. Dlatego identyczne działanie zapewnia Instrukcja 2.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.03 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — PHP