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

int tab[10]; int zm1 = 0; double zm2 = 0; ... for (int i = 0; i < 10; i++) { zm1 = zm1 + tab[i]; } zm2 = zm1 / 10.0; Tablica tab[] jest wypełniona...

int tab[10];
int zm1 = 0;
double zm2 = 0;
...
for (int i = 0; i < 10; i++)
{
    zm1 = zm1 + tab[i];
}
zm2 = zm1 / 10.0;
Tablica tab[] jest wypełniona dowolnymi liczbami całkowitymi. Jaka wartość znajdzie się w zmiennej zm2 po wykonaniu prezentowanego fragmentu kodu?
A. Średnia arytmetyczna liczb z tablicy.
B. Suma liczb od 1 do 10.
C. Średnia geometryczna liczb od 0 do 9.
D. Suma liczb z tablicy.

Opracowane na podstawie zadania CKE, czerwiec 2019 (arkusz EE.09-X-19.06): W arkuszu było zm2 = zm1 / 10; - w C++ to dzielenie liczb całkowitych, więc średnia zostałaby obcięta do części całkowitej. Zmieniono na zm1 / 10.0.

Poprawna odpowiedź to: Średnia arytmetyczna liczb z tablicy. Pętla for przechodzi po indeksach od 0 do 9, czyli po wszystkich 10 elementach tablicy tab. W każdej iteracji do zmiennej zm1 dodawana jest wartość tab[i], więc po zakończeniu pętli zm1 zawiera sumę wszystkich elementów tablicy. Następnie instrukcja zm2 = zm1 / 10.0 dzieli tę sumę przez liczbę elementów. Użycie 10.0, a nie 10, powoduje dzielenie zmiennoprzecinkowe, więc wynik może mieć część ułamkową. Reguła do zapamiętania: średnia arytmetyczna = suma wartości / liczba wartości. Taki schemat często stosuje się przy obliczaniu średniej ocen, pomiarów lub wyników testów zapisanych w tablicy.
W tym fragmencie istotne są dwie operacje: najpierw sumowanie elementów tablicy, a dopiero potem dzielenie tej sumy przez 10. Odpowiedź Suma liczb z tablicy opisywałaby zawartość zmiennej zm1 tuż po zakończeniu pętli, ale nie wartość zm2, ponieważ później wykonywane jest jeszcze dzielenie przez 10.0. Odpowiedź Suma liczb od 1 do 10 byłaby trafna, gdyby w pętli dodawano na przykład i + 1, a nie tab[i]. Tutaj indeks i służy tylko do wskazania elementu tablicy, nie jest dodawaną wartością. Odpowiedź Średnia geometryczna liczb od 0 do 9 wymagałaby mnożenia wartości i obliczenia pierwiastka odpowiedniego stopnia, a w kodzie występuje dodawanie oraz dzielenie. Poprawna odpowiedź to: Średnia arytmetyczna liczb z tablicy. Typowy błąd polega na pomyleniu indeksów tablicy z jej zawartością albo na pominięciu ostatniej instrukcji przypisania do zm2.

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.