Przejdź do głównej treści
  1. Strona główna
  2. Technik informatyk
  3. INF.03
  4. Pytanie

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki

Zadaniem poniższego kodu napisanego w języku C++ jest wypisanie dla podanych dowolnych liczb całkowitych różnych od zera:
int main()
{
    int liczba;
    cin >> liczba;

    while (liczba != 0)
    {
        if ((liczba % 2) == 0)
            cout << liczba << endl;

        cin >> liczba;
    }
    return 0;
}

Prezentowany kod źródłowy w języku C++ jest zaprogramowany do wypisywania tylko liczb parzystych spośród wprowadzanych przez użytkownika liczb całkowitych różnych od zera. Kluczowym elementem jest tutaj operacja modulo (%), która oblicza resztę z dzielenia liczby przez 2. Dla liczb parzystych wynik tej operacji wynosi 0, co jest sprawdzane w warunku if. Kod używa pętli while, która pozwala na wprowadzanie i sprawdzanie wielu liczb w sposób iteracyjny, aż do momentu wprowadzenia zera, które kończy działanie programu. Zrozumienie tej struktury jest kluczowe w programowaniu i pozwala na efektywne filtrowanie danych. W praktyce taki mechanizm mógłby być użyty w systemach analizujących dane wejściowe pod kątem ich właściwości liczbowych. Podstawowe operacje na liczbach, takie jak modulo, są szeroko stosowane w algorytmach i strukturach danych, gdzie ważne jest klasyfikowanie czy filtrowanie elementów według zadanych kryteriów. Warto zwrócić uwagę na efektywność tego podejścia, które minimalizuje zbędne operacje poprzez bezpośrednie sprawdzanie warunku wewnątrz pętli.
Kod źródłowy w języku C++ analizuje dane wejściowe i wypisuje jedynie liczby parzyste, co wynika z zastosowania operacji modulo. Mylnym podejściem jest sądzenie, że program wypisze wszystkie liczby, ponieważ warunek w if ogranicza wyjście jedynie do liczb, które przy dzieleniu przez 2 dają resztę 0. To podejście jest często stosowane w sytuacjach, gdzie konieczne jest filtrowanie danych według określonych kategorycznych kryteriów, np. przy oddzielaniu danych na podstawie ich właściwości matematycznych. Zakładanie, że kod wypisze tylko liczby nieparzyste lub liczby pierwsze, jest błędne, ponieważ nie ma dodatkowych warunków weryfikujących te cechy. Liczby nieparzyste miałyby resztę z dzielenia przez 2 równą 1, co nie spełnia warunku if, natomiast liczby pierwsze wymagają bardziej złożonego algorytmu weryfikacji, który badałby podzielność przez wszystkie liczby mniejsze od pierwiastka kwadratowego z danej liczby. Często popełnianym błędem jest niedokładne przeanalizowanie struktury warunkowej i pętli, co prowadzi do błędnych wniosków dotyczących działania programu. Zrozumienie działania operatora modulo i jego zastosowania w kontekście logicznych warunków pozwala na poprawną interpretację funkcji programu i unikanie wspomnianych błędów myślowych.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wyślemy tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.