Informatyka - Funkcje i Rekurencja

Funkcje i rekurencja to zaawansowane, ale kluczowe zagadnienia programowania omawiane na maturze rozszerzonej z informatyki. Umiejętność dzielenia programu na mniejsze, wielokrotnie używane fragmenty kodu (funkcje) oraz rozumienie mechanizmu, w którym funkcja wywołuje samą siebie (rekurencja), jest niezbędna do rozwiązywania bardziej złożonych zadań algorytmicznych.

Materiał wyjaśnia podstawowe pojęcia związane z zasięgiem zmiennych: zmienna lokalna jest widoczna i dostępna wyłącznie wewnątrz bloku (funkcji), w którym została zdefiniowana, natomiast zmienna globalna, zadeklarowana poza wszystkimi funkcjami, jest dostępna i modyfikowalna w całym programie. Uczeń poznaje też różnicę między przekazywaniem argumentów przez wartość (funkcja operuje na kopii danych, oryginał pozostaje niezmieniony) a przekazywaniem przez referencję (zmiany wewnątrz funkcji wpływają na zmienną oryginalną).

Centralnym tematem jest rekurencja — technika, w której funkcja wywołuje samą siebie w celu rozwiązania mniejszej wersji tego samego problemu. Kluczowym elementem każdej poprawnej funkcji rekurencyjnej jest warunek bazowy, który zatrzymuje dalsze wywołania — jego brak prowadzi do nieskończonej rekurencji i błędu przepełnienia stosu (stack overflow). Materiał analizuje dwa klasyczne przykłady: silnię ($n! = n \cdot (n-1)!$ dla $n>0$, z $0!=1$) oraz ciąg Fibonacciego ($F_n = F_{n-1} + F_{n-2}$), z konkretnymi obliczeniami wartości dla podanych argumentów.

Uczeń ćwiczy też rozumienie struktury definicji funkcji — nazwy, typu zwracanej wartości (lub typu void dla funkcji niezwracających wyniku) oraz ciała funkcji zawierającego instrukcje. Materiał wyjaśnia rozróżnienie między parametrem (zmienną zdefiniowaną w sygnaturze funkcji) a argumentem (konkretną wartością przekazywaną podczas wywołania) — subtelność często mylona przez uczniów.

Zestaw obejmuje też pojęcie przeciążania funkcji (function overloading) — definiowania wielu funkcji o tej samej nazwie, różniących się liczbą lub typem parametrów, co zwiększa czytelność i elastyczność kodu.

Ten zestaw pytań i fiszek buduje solidne podstawy analizy funkcji rekurencyjnych — umiejętność regularnie sprawdzaną w zadaniach maturalnych z informatyki.

  • Uczeń rozróżnia zmienne lokalne od globalnych pod względem zasięgu
  • Uczeń rozumie różnicę między przekazywaniem argumentów przez wartość a przez referencję
  • Uczeń zna pojęcie warunku bazowego w funkcji rekurencyjnej i jego rolę
  • Uczeń potrafi obliczyć wartość prostej funkcji rekurencyjnej (np. silnia, ciąg Fibonacciego) dla podanego argumentu
  • Uczeń wie, jakie konsekwencje ma brak warunku bazowego (przepełnienie stosu)
  • Uczeń rozróżnia pojęcia parametru i argumentu funkcji
  • Uczeń rozumie koncepcję przeciążania funkcji (function overloading)

Materiał tematyczny (bez dokumentu źródłowego): funkcje w programowaniu — parametry, wartość zwracana, zmienne lokalne i globalne, oraz rekurencja (funkcje wywołujące same siebie, np. silnia, ciąg Fibonacciego), zgodnie z zakresem matury rozszerzonej z informatyki.

Przykładowe pytanie

Czym charakteryzuje się zmienna lokalna wewnątrz funkcji?

Zobacz odpowiedź

Jest widoczna i dostępna wyłącznie wewnątrz bloku, w którym została zdefiniowana.

Zmienne lokalne są ograniczone do zakresu (scope) funkcji lub bloku kodu, w którym powstały. Zmienne globalne są dostępne w całym programie, a zmienne statyczne zachowują wartość między wywołaniami.

Spróbuj tego quizu →Podejdź do tego egzaminu →Powtórz te fiszki →

← Informatyka

↑ Matura