Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
$i=10; $a=0; while $i) { $a=$a+2; $i--; } W języku PHP przedstawiono fragment kodu. Jaka będzie wartość zmiennej a po zakończeniu pętli?
Odpowiedzi
Informacja zwrotna
W analizowanym fragmencie kodu PHP, mamy do czynienia z pętlą while, która działa tak długo, jak zmienna $i jest różna od zera. Na początku $i przyjmuje wartość 10, a zmienna $a jest inicjalizowana na 0. W obrębie pętli $a jest zwiększana o 2 w każdej iteracji, a zmienna $i jest dekrementowana o 1. Pętla wykona się więc 10 razy, co oznacza, że $a zostanie zwiększone 10 razy o 2, co daje łącznie: 2 * 10 = 20. Takie podejście do zarządzania pętlami jest zgodne z najlepszymi praktykami programowania, gdzie unika się złożonych operacji wewnątrz pętli na rzecz prostych i efektywnych obliczeń. Warto zauważyć, że sprawdzanie warunków oraz aktualizowanie zmiennych w pętli są kluczowe dla uniknięcia nieskończonych pętli oraz błędów logicznych, co jest istotne w kontekście utrzymania i czytelności kodu.
Nieprawidłowe odpowiedzi są wynikiem niepełnego zrozumienia działania pętli while w PHP oraz mechanizmu dekremencji zmiennych. Odpowiedzi wskazujące na wartość 0, 2, czy 10 ignorują fakt, że pętla wykonuje się wielokrotnie, a każda iteracja wpływa na końcową wartość zmiennej $a. Odpowiedź 0 sugeruje, że pętla w ogóle się nie wykonała, co jest niezgodne z logiką działania while. Pętla ta będzie aktywna tak długo, jak zmienna $i jest różna od zera, a ponieważ $i zaczyna się od 10, pętla wykona się 10 razy. Odpowiedź 2 może wynikać z błędnego rozumienia, że pętla wykona się tylko raz, co jest sprzeczne z jej definicją; na każdym kroku $a zwiększa się o 2, co w kontekście pełnych 10 iteracji pozostawia $a na poziomie 20. Z kolei wartość 10 mogłaby wynikać z mylnego przekonania, że $a zwiększa się jedynie o 1 na każdym kroku, co również jest fałszywe, gdyż w każdej iteracji dodawane jest 2. Kluczowe do zrozumienia tego fragmentu kodu jest rozważenie, jak iteracje pętli wpływają na zmienne oraz jakie są efekty działania tych operacji. W programowaniu istotne jest, aby dokładnie analizować każdy krok, aby uniknąć błędów logicznych, które mogą prowadzić do nieoczekiwanych wyników.