Przejdź do głównej treści

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

Słowa kluczowe: Funkcje w C++ Parametry przez referencję w C++ Typ void w C++

Wskaż zdanie, które nie jest prawdziwe dla przedstawionej definicji funkcji w języku C++.

int suma(int a, int b)
{
    return a + b;
}
A. Funkcja ma dwa argumenty.
Źle. To zdanie jest prawdziwe: funkcja ma dwa parametry, a i b.
B. Funkcja nie zwraca żadnej wartości.
Dobrze. To zdanie jest fałszywe - typ int i instrukcja return oznaczają, że funkcja zwraca sumę.
C. Funkcja zwraca wartość typu int.
Źle. To zdanie jest prawdziwe: typ int przed nazwą funkcji określa zwracaną wartość.
D. Funkcja przyjmuje argumenty przez wartość.
Źle. To zdanie jest prawdziwe: bez znaku & parametry są kopiami wartości.

Nieprawdziwe jest zdanie, że funkcja nie zwraca żadnej wartości. Przed nazwą suma stoi typ int, a w ciele jest instrukcja return a + b; - funkcja oddaje więc wynik dodawania, który można zapisać w zmiennej, np. int w = suma(2, 3);. Brak wartości zwracanej oznacza się w C++ słowem void. Parametry a i b są przekazywane przez wartość: funkcja dostaje ich kopie, więc zmiana parametru wewnątrz funkcji nie zmieniłaby zmiennych, z którymi ją wywołano. Przekazanie przez referencję wymagałoby znaku & przy typie, np. int &a. Do zapamiętania: typ przed nazwą funkcji mówi, co ona zwraca, a nawiasy - co przyjmuje.

Pytanie dotyczy zdania fałszywego, więc trzeba sprawdzić każde twierdzenie z kodem. Typ int przed nazwą funkcji potwierdza, że zwraca ona liczbę całkowitą - to zdanie jest prawdziwe. W nawiasie stoją dwa parametry, int a i int b, więc funkcja ma dwa argumenty - też prawda. Przy parametrach nie ma znaku & ani gwiazdki, a zatem są przekazywane przez wartość, czyli funkcja pracuje na kopiach - i to się zgadza. Jedyne zdanie sprzeczne z kodem mówi, że funkcja nie zwraca wartości. Tak byłoby przy typie void i braku instrukcji return z wyrażeniem. Tu return a + b oddaje sumę do miejsca wywołania. Przy pytaniach o zdanie nieprawdziwe warto czytać kod element po elemencie: typ zwracany, nazwę, parametry i treść. Zwracaną wartość można wypisać od razu, np. w instrukcji cout.

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. Wysłane zostaną 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.