Darmowe konto pozwoli wrócić do niego później.
Polecenie
Napisz algorytm (w postaci pseudokodu lub w wybranym języku programowania), który dla danej dodatniej liczby całkowitej n obliczy długość jej reprezentacji kwadratowej wyznaczanej metodą zachłanną. Twój algorytm powinien być zgodny z poniższą specyfikacją.
Uwaga: W zapisie algorytmu możesz korzystać tylko z instrukcji sterujących, operatorów arytmetycznych (dodawania, odejmowania, mnożenia, dzielenia, dzielenia całkowitego i reszty z dzielenia), operatorów logicznych, porównań i instrukcji przypisywania lub samodzielnie napisanych funkcji i procedur wykorzystujących powyższe operacje. Zabronione jest używanie funkcji wbudowanych, dostępnych w językach programowania, zwłaszcza funkcji pierwiastek.
Specyfikacja:
Dane
Darmowe konto pozwoli wrócić do niego później.
n – dodatnia liczba całkowita
Wynik
dl – długość reprezentacji kwadratowej liczby n, otrzymanej metodą zachłanną
Przykład:
Dla n = 12 wynikiem jest dl = 4.
s ← 0
kw ← 1
dopóki kw * kw < n wykonuj
kw ← kw + 1
jeżeli kw * kw > n, to kw ← kw - 1
s ← n – kw * kw
dl ← 1
dopóki s > 0 wykonuj
jeżeli kw * kw < s, to
s ← s – kw * kw
dl ← dl + 1
w przeciwnym razie
kw ← kw - 1
wypisz dl
za poprawny algorytm, w tym: za poprawne wartości początkowe zmiennych i za poprawne ustalenie największego składnika reprezentacji kwadratowej – 2 punkty, za poprawną organizację pętli obliczającej długość reprezentacji kwadratowej – 1 punkt, za poprawne wyznaczanie kolejnych elementów reprezentacji kwadratowej i poprawne ich zliczanie – 1 punkt.
Za każde inne niż przedstawione, ale całkowicie poprawne rozwiązanie spełniające warunki zadania przyznajemy maksymalną liczbę punktów.
Ocena według schematu punktowania CKE, zwykle w 15–30 s
Dowiedz się, ile punktów naprawdę zdobywasz. Zrób zdjęcie kartki albo wklej odpowiedź: Maturownik+ porówna ją ze schematem punktowania, policzy punkty i wytłumaczy, gdzie i dlaczego je tracisz.