W przedstawionym fragmencie kodu znajduje się błąd logiczny. Polega on na
W przedstawionym fragmencie kodu znajduje się błąd logiczny. Polega on na
Wyjaśnienie i uzasadnienie dydaktyczne
Poprawna odpowiedź: D
Uzasadnienie i szersze wyjaśnienie:
Kluczowym problemem jest warunek w pętli while: (x != 0 || x != 5).
Przeanalizujmy ten warunek logiczny. Użyto w nim operatora LUB (||). Oznacza to, że całe wyrażenie jest prawdziwe, jeśli co najmniej jedno z podwyrażeń jest prawdziwe. Wyrażenie jest fałszywe tylko wtedy, gdy oba podwyrażenia są fałszywe.
- Czy zmienna
xmoże być jednocześnie równa0i równa5? Nie, jest to niemożliwe. - W związku z tym, dla dowolnej wartości
x, co najmniej jeden z warunkówx != 0lubx != 5będzie zawsze spełniony.- Jeśli
xjest równe 0, tox != 5jest prawdą. - Jeśli
xjest równe 5, tox != 0jest prawdą. - Jeśli
xjest jakąkolwiek inną liczbą, oba warunki są prawdziwe.
- Jeśli
Warunek (x != 0 || x != 5) jest więc zawsze prawdziwy, niezależnie od wartości x. Pętla while z takim warunkiem będzie wykonywać się w nieskończoność, ponieważ warunek jej zakończenia nigdy nie zostanie spełniony. Jest to pętla nieskończona.
Dlaczego pozostałe odpowiedzi są nieprawidłowe?
- A: Zmienna
xjest prawidłowo zainicjalizowana wartością0. - B:
std::coutsłuży do wypisywania danych, a nie ich wczytywania. Jego użycie jest poprawne. - C: Jak wykazano powyżej, pętla zawsze się wykona, ponieważ jej warunek jest zawsze prawdziwy.
Chcesz poćwiczyć całą kwalifikację INF.04?
Egzamin próbny na czas, nauka działami, losowe pytanie albo przegląd całej bazy — wszystko w przeglądarce i bez zakładania konta.
Pojęcia z tego pytania
- Zmienne i Stałe w programowaniuNazwane obszary pamięci operacyjnej przechowujące dane robocze programu; zmienne pozwalają na modyfikację wartości podczas działania, podczas gdy stałe mają wartość niezmienną.
- Kolejka FIFO i operacje: Push, Pop, Peek, IsEmptyLiniowa struktura danych działająca w trybie FIFO (First-In, First-Out), w której nowe elementy dodawane są na końcu, a pobierane z początku, obsługiwana standardowymi metodami.
Podobne pytania z działu „Jezyk cpp skladnia i pamiec”
Ten sam obszar materiału z kwalifikacji INF.04. W całej bazie znajdziesz 25 pytań z tego działu.
- #183
Którą wartość zwróci funkcja zapisana językiem C++, jeżeli jej parametr wejściowym jest tablica utworzona w następujący sposób: int tablica[] = {3,4,2,4,10,0};?
- #193
Wywołanie funkcji zamien napisanej w języku C++ może wyglądać następująco
- #194
W programie napisanym w języku C++ należy utworzyć zmienną, która przechowa liczbę rzeczywistą. Określ typ tej zmiennej
- #196
Co stanie się po wykonaniu przedstawionego fragmentu kodu napisanego w języku C++?
- #203
W wyniku wykonania przedstawionego kodu napisanego w języku C++ w konsoli zostanie wyświetlony ciąg liczb