SZUKAJ NA TYM BLOGU
Zadanie 2. Analiza algorytmu (0–6) z .EINP-R1-100-2105 (AnalizaAlgorytmu)
Niech n będzie nieujemną liczbą całkowitą, a T[1..n] – tablicą zawierającą n liczb całkowitych.
Dla n = 0 tablica T jest pusta (nie zawiera żadnego elementu).
Wykonaj analizę poniżej zapisanej funkcji d(x), która rozszerza tablicę T o liczbę całkowitą x,
a następnie przeprowadza pewną reorganizację zawartości tej tablicy.
d(x):
n ← n + 1
T[n] ← x
s ← n
dopóki ((s div 2) ≥ 1) oraz (T[s] > T[s div 2]) wykonuj
pom ← T[s]
T[s] ← T[s div 2]
T[s div 2] ← pom
s ← s div 2
Uwaga: w tym zadaniu przyjmujemy, że:
• tablica T może być powiększana;
• jeśli wartość lewego argumentu operatora oraz jest równa fałsz, to wartość prawego
argumentu nie jest wyliczana;
• div jest operatorem oznaczającym część całkowitą z dzielenia.
Zadanie 2.1. (0–2)
Uzupełnij tabelę – wpisz zawartość tablicy T po wykonaniu d(x) z podanym parametrem x:
| n | T[1..n] | x | T po wykonaniu d(x) |
| 4 | 26, 3, 5, –4 | 5 | 26, 5, 5, –4, 3 |
| 4 | 36, 15, 17, 3 | -5 |
|
| 7 | 27, 6, 13, 4, –3, –2, –3 | 30 |
|
Zadanie 2.2. (0–2)
Podaj zawartość tablicy T po wykonaniu wszystkich sześciu wywołań funkcji d kolejno z parametrami: 6, –4, 12, 27, 26, 8, przy początkowo pustej tablicy T.
................................................................................................................
Zadanie 2.3. (0–2)
Do początkowo pustej tablicy T wstawiono za pomocą funkcji d kolejno liczby całkowite od 1 do k – 1. Wstawiamy teraz do tablicy T kolejną liczbę k za pomocą d(k). Zapisz, ile razy w trakcie wykonywania d(k) sprawdzany jest warunek pętli dopóki: „((s div 2) ≥ 1) oraz (T[s] > T[s div 2])” dla podanych wartości k.
| k | Ile razy sprawdzany jest warunek pętli dopóki podczas wykonywania d(k)? |
| 4 | 3 razy |
| 16 | |
| 1025 |
Zadanie 2. Symetryczny ciąg (0–5) z .MIN-R1_1P-202 (AnalizaAlgorytmu)
Argumentami procedury sym (a, b) są dwie nieujemne liczby całkowite a i b. Wywołanie tej procedury spowoduje wypisanie pewnego ciągu liczb całkowitych.
sym(a, b)
jeżeli a ≠ 0
sym(a – 1, b + 1)
wypisz a * b
sym(a – 1, b + 1)
Zadanie 2.1. (0–2)
Uzupełnij tabelę – podaj wynik działania procedury sym (a, b) dla wskazanych argumentów a i b.
| a | b | sym(a, b) |
| 3 | 1 | 3 4 3 3 3 4 3 |
| 4 | 2 | 5 8 5 9 5 8 5 8 5 8 5 9 5 8 5 |
| 3 | 3 | |
| 4 | 1 |
Zadanie 2.2. (0–3)
Uzupełnij tabelę – podaj długość ciągu liczbowego otrzymanego w wyniku wywołania procedury sym (a, b) dla wskazanych argumentów a i b.| a | b | sym(a, b) |
| 3 | 2 | 7 |
| 4 | 4 | 15 |
| 5 | 1 | |
| 6 | 6 | |
| 10 | 2020 |
| Wypełnia egzaminator |
Nr zadania | 2.1 | 2.2 |
| Maks. liczba pkt. | 2 | 3 | |
| Uzyskana liczba pkt. |