Poznaj kluczowe koncepcje informatyki, od systemów liczbowych po rekurencję i...
Algorytmika i Programowanie w Python dla Początkujących






Systemy liczbowe i metoda połowienia
System dwójkowy używa tylko cyfr 0 i 1 do zapisu liczb. Żeby zamienić liczbę z systemu dziesiętnego na dwójkowy, dzielimy ją przez 2 aż do uzyskania 0, zapisując reszty z dzielenia od dołu do góry. Na przykład 29₁₀ = 11101₂.
Odwrotna konwersja (z dwójkowego na dziesiętny) jest równie prosta. Każda pozycja w liczbie dwójkowej odpowiada kolejnym potęgom liczby 2. Na przykład 10001001₂ = 128 + 8 + 1 = 137₁₀.
Metoda połowienia to algorytm służący do znajdowania miejsca zerowego funkcji w określonym przedziale (a,b). Polega na dzieleniu przedziału na połowy i sprawdzaniu, w której części znajduje się miejsce zerowe. Algorytm powtarzamy, aż osiągniemy żądaną dokładność E.
💡 Wskazówka: Metodę połowienia możesz wykorzystać nie tylko do znajdowania miejsc zerowych, ale również do obliczania pierwiastków liczb!

Fraktale i programowanie żółwia
Fraktale to fascynujące obiekty matematyczne, które powstają przez nieskończone powtarzanie tej samej operacji. Ich charakterystyczną cechą jest samopodobieństwo – mały fragment ma taki sam kształt jak całość. Popularne przykłady to trójkąt Sierpińskiego, krzywa Kocha czy smok Heighwaya.
Do rysowania fraktali świetnie nadaje się moduł turtle w Pythonie. Podstawowe komendy to: fd(n) (do przodu), bk(n) (do tyłu), rt(alfa) (skręt w prawo), lt(alfa) (skręt w lewo), pu() (podniesienie pisaka) i pd() (opuszczenie pisaka).
Rekurencja to potężna technika programowania, polegająca na wywoływaniu funkcji przez samą siebie. Rozwiązujemy problem dzieląc go na mniejsze, podobne problemy, aż dojdziemy do przypadku podstawowego. Rekurencja daje zwięzły kod, ale może być nieefektywna czasowo i pamięciowo.
⚠️ Uważaj: Przy pisaniu funkcji rekurencyjnych zawsze pamiętaj o warunku końcowym, który zatrzyma wywoływanie - w przeciwnym razie twój program nigdy się nie zakończy!

Rekurencja w praktyce
Rekurencja świetnie sprawdza się przy obliczaniu silni. Na przykład 4! możemy rozłożyć na 4·3!, a 3! na 3·2! itd., aż dojdziemy do przypadku podstawowego 0! = 1. Następnie obliczamy wszystkie wartości wstecz.
Podobnie działa rekurencyjne obliczanie potęg. Na przykład 2⁴ = 2³·2, a 2³ = 2²·2 itd., aż do 2⁰ = 1. Ten schemat pozwala na łatwe zaimplementowanie funkcji potęgującej.
Ciąg Fibonacciego to klasyczny przykład wykorzystania rekurencji. Definiujemy go jako:
- F(1) = 1, F(2) = 1 (przypadki podstawowe)
- F = F + F dla n > 2
🔍 Ciekawostka: Ciąg Fibonacciego występuje w naturze w wielu miejscach - od układu liści na łodydze po spirale w muszlach czy układ nasion słonecznika!

Implementacje algorytmów w Pythonie
Funkcja konwertująca liczbę z systemu dwójkowego na dziesiętny mnoży każdą cyfrę przez odpowiednią potęgę dwójki i sumuje wyniki:
def na10(dana):
pom = 0
for i in range(len(dana)):
x = int(dana[-i-1])
pom = pom + x * 2**i
return pom
Konwersja z systemu dziesiętnego na dwójkowy wykorzystuje dzielenie z resztą:
def na2(liczba):
if liczba == 0:
return 0
pom = ""
while liczba > 0:
pom = str(liczba % 2) + pom
liczba = liczba // 2
return pom
Do rysowania drzewa binarnego używamy rekurencji i modułu turtle. Funkcja rysuje drzewo o określonej wysokości i liczbie poziomów:
💻 Praktyka czyni mistrza: Spróbuj zmodyfikować kod drzewa binarnego, zmieniając kąty rozgałęzień lub dodając kolory - otrzymasz zupełnie nowe wzory!

Krzywa Kocha i zastosowania praktyczne
Krzywa Kocha to popularny fraktal, który możemy narysować rekurencyjnie:
def koch(bok, n):
if n == 0:
fd(bok)
return
koch(bok/3, n-1)
lt(60)
koch(bok/3, n-1)
rt(120)
koch(bok/3, n-1)
lt(60)
koch(bok/3, n-1)
Z krzywej Kocha możemy stworzyć płatek Kocha, rysując trzy krzywe Kocha połączone pod kątem 120 stopni:
def platek(n):
bok = 300
lt(60)
for i in range(3):
koch(bok, n)
rt(120)
rt(60)
Praktycznym zastosowaniem metody połowienia jest funkcja znajdująca miejsce zerowe funkcji z zadaną dokładnością:
def miejsce_zerowe(eps):
a = 0
b = 100
while abs(b-a) > eps:
c = (a+b)/2
if f(c) > 0:
b = c
else:
a = c
return c
🎯 Zastosowanie: Metoda połowienia, chociaż nie jest najszybsza, jest bardzo stabilna i niezawodna - dlatego używa się jej w wielu praktycznych sytuacjach, od znajdowania pierwiastków po optymalizację parametrów.
Myśleliśmy, że nigdy nie zapytasz...
Podobne notatki
Najpopularniejsze notatki z Matematyka
9Właściwości funkcji liniowej
Zrozumienie funkcji liniowej: definicja, współczynniki a i b, monotoniczność oraz sposób wyznaczania równania prostej. Dowiedz się, jak określić dziedzinę, zbiór wartości oraz punkty przecięcia z osiami. Idealne dla uczniów przygotowujących się do egzaminów z matematyki.
Skróty klawiszowe
Skróty klawiszowe
Nauka i technologia
Poznaj podstawowe terminy związane z nauką i technologią, takie jak Bluetooth, przeglądarka internetowa i kamera wideo, w języku angielskim.
Podstawy Pythona
Odkryj podstawowe funkcje Pythona, w tym potęgowanie, deklarowanie zmiennych, wczytywanie danych oraz konwersję typów. Idealne dla początkujących programistów. Zawiera przykłady kodu i wyjaśnienia kluczowych koncepcji.
Relacyjne Bazy Danych
Zrozumienie relacyjnych baz danych: definicje, typy relacji (jeden do jednego, jeden do wielu, wiele do wielu), klucze podstawowe i obce, oraz modele baz danych. Idealne dla studentów informatyki i osób pragnących zgłębić temat baz danych.
Podstawy Sieci Komputerowych
Zrozumienie podstawowych koncepcji sieci komputerowych, w tym protokołów TCP/IP, topologii sieci, systemów liczbowych oraz bezpieczeństwa w sieci. Materiał obejmuje kluczowe elementy architektury sieci, takie jak routery, przełączniki i karty sieciowe. Idealne dla studentów informatyki i osób pragnących zgłębić tematykę sieci komputerowych.
Podstawy Grafiki Komputerowej
Zrozumienie grafiki komputerowej: różnice między grafiką wektorową a rastrową, formaty plików (PDF, SVG, EPS, PNG, TIFF, PSD, JPG, BMP, GIF), modele kolorów (RGB, CMYK, HSV) oraz kompresja danych. Idealne dla studentów informatyki i web developmentu.
Systemy Liczbowe: Działania
Zrozumienie systemów liczbowych: dwójkowy, dziesiętny i szesnastkowy. Praktyczne przykłady działań arytmetycznych, konwersji między systemami oraz kluczowe zasady dodawania, odejmowania, mnożenia i dzielenia. Idealne dla uczniów przygotowujących się do egzaminów.
Znaczniki HTML i selektory CSS
Krótki opis wybranych znaczników HTML i selektorów CSS.
Najpopularniejsze notatki
9Karta rowerowa
UwU
Wprowadzenie do lektury Zemsta
Sprawdź znajomość czasu i miejsca akcji oraz głównych wątków komedii Aleksandra Fredry.
Nauka znaków drogowych
Uczenie się zanków drogowych na sprawdzian-kartkówkę
Polski e8
Egzamin ósmoklasisty
biologia- ryby klasa 6
Przed odpowiedzią ustnią idealny do powtórki ❤️
Quiz-Dziady cz.2
Ten quiz sprawdzi twoją wiedzę z Dziadów🫶!
Przedwiośnie: Analiza Tematów
Zanurz się w analizę powieści 'Przedwiośnie' Stefana Żeromskiego. Odkryj kluczowe motywy, takie jak dojrzewanie, rewolucja i podróż, oraz ich znaczenie w kontekście niepodległej Polski. Notatka zawiera szczegółowe omówienie bohaterów, narracji oraz symboliki, co czyni ją idealnym materiałem do nauki i przygotowania do egzaminów.
Wprowadzenie do lektury Pan Tadeusz
Zapoznasz się z genezą utworu, czasem i miejscem akcji oraz galerią najważniejszych postaci epopei Adama Mickiewicza.
Balladyna- quiz do lektury | egzamin ósmoklasisty
quiz z lektury „Balladyna” 🥰 idealny jako powtórka przed egzaminem
Zobacz, co mówią o nas nasi użytkownicy. Pokochali nas — pokochasz też i Ty.
Aplikacja jest bardzo prosta i dobrze przemyślana. Do tej pory znalazłem wszystko, czego szukałem i mogłem się wiele nauczyć z innych notatek! Na pewno wykorzystam aplikację do pomocy przy robieniu prac domowych! No i oczywiście bardzo pomaga też jako inspiracja do robienia swoich notatek.
Ta aplikacja jest naprawdę świetna. Jest tak wiele notatek i pomocnych informacji [...]. Moim problematycznym przedmiotem jest język niemiecki, a w aplikacji jest w czym wybierać. Dzięki tej aplikacji poprawiłam swój niemiecki. Polecam ją każdemu.
Wow, jestem w szoku. Właśnie wypróbowałam aplikację, ponieważ widziałam ją kilka razy reklamowaną na TikToku jestem absolutnie w szoku. Ta aplikacja jest POMOCĄ, której potrzebujesz w szkole i przede wszystkim oferuje tak wiele rzeczy jak notatki czy streszczenia, które są BARDZO pomocne w moim przypadku.
Algorytmika i Programowanie w Python dla Początkujących
Poznaj kluczowe koncepcje informatyki, od systemów liczbowych po rekurencję i fraktale! W tych notatkach znajdziesz praktyczne informacje o konwersji między systemami liczbowymi, algorytmach, programowaniu żółwia w Pythonie i tworzeniu fascynujących struktur matematycznych.

Systemy liczbowe i metoda połowienia
System dwójkowy używa tylko cyfr 0 i 1 do zapisu liczb. Żeby zamienić liczbę z systemu dziesiętnego na dwójkowy, dzielimy ją przez 2 aż do uzyskania 0, zapisując reszty z dzielenia od dołu do góry. Na przykład 29₁₀ = 11101₂.
Odwrotna konwersja (z dwójkowego na dziesiętny) jest równie prosta. Każda pozycja w liczbie dwójkowej odpowiada kolejnym potęgom liczby 2. Na przykład 10001001₂ = 128 + 8 + 1 = 137₁₀.
Metoda połowienia to algorytm służący do znajdowania miejsca zerowego funkcji w określonym przedziale (a,b). Polega na dzieleniu przedziału na połowy i sprawdzaniu, w której części znajduje się miejsce zerowe. Algorytm powtarzamy, aż osiągniemy żądaną dokładność E.
💡 Wskazówka: Metodę połowienia możesz wykorzystać nie tylko do znajdowania miejsc zerowych, ale również do obliczania pierwiastków liczb!

Fraktale i programowanie żółwia
Fraktale to fascynujące obiekty matematyczne, które powstają przez nieskończone powtarzanie tej samej operacji. Ich charakterystyczną cechą jest samopodobieństwo – mały fragment ma taki sam kształt jak całość. Popularne przykłady to trójkąt Sierpińskiego, krzywa Kocha czy smok Heighwaya.
Do rysowania fraktali świetnie nadaje się moduł turtle w Pythonie. Podstawowe komendy to: fd(n) (do przodu), bk(n) (do tyłu), rt(alfa) (skręt w prawo), lt(alfa) (skręt w lewo), pu() (podniesienie pisaka) i pd() (opuszczenie pisaka).
Rekurencja to potężna technika programowania, polegająca na wywoływaniu funkcji przez samą siebie. Rozwiązujemy problem dzieląc go na mniejsze, podobne problemy, aż dojdziemy do przypadku podstawowego. Rekurencja daje zwięzły kod, ale może być nieefektywna czasowo i pamięciowo.
⚠️ Uważaj: Przy pisaniu funkcji rekurencyjnych zawsze pamiętaj o warunku końcowym, który zatrzyma wywoływanie - w przeciwnym razie twój program nigdy się nie zakończy!

Rekurencja w praktyce
Rekurencja świetnie sprawdza się przy obliczaniu silni. Na przykład 4! możemy rozłożyć na 4·3!, a 3! na 3·2! itd., aż dojdziemy do przypadku podstawowego 0! = 1. Następnie obliczamy wszystkie wartości wstecz.
Podobnie działa rekurencyjne obliczanie potęg. Na przykład 2⁴ = 2³·2, a 2³ = 2²·2 itd., aż do 2⁰ = 1. Ten schemat pozwala na łatwe zaimplementowanie funkcji potęgującej.
Ciąg Fibonacciego to klasyczny przykład wykorzystania rekurencji. Definiujemy go jako:
- F(1) = 1, F(2) = 1 (przypadki podstawowe)
- F = F + F dla n > 2
🔍 Ciekawostka: Ciąg Fibonacciego występuje w naturze w wielu miejscach - od układu liści na łodydze po spirale w muszlach czy układ nasion słonecznika!

Implementacje algorytmów w Pythonie
Funkcja konwertująca liczbę z systemu dwójkowego na dziesiętny mnoży każdą cyfrę przez odpowiednią potęgę dwójki i sumuje wyniki:
def na10(dana):
pom = 0
for i in range(len(dana)):
x = int(dana[-i-1])
pom = pom + x * 2**i
return pom
Konwersja z systemu dziesiętnego na dwójkowy wykorzystuje dzielenie z resztą:
def na2(liczba):
if liczba == 0:
return 0
pom = ""
while liczba > 0:
pom = str(liczba % 2) + pom
liczba = liczba // 2
return pom
Do rysowania drzewa binarnego używamy rekurencji i modułu turtle. Funkcja rysuje drzewo o określonej wysokości i liczbie poziomów:
💻 Praktyka czyni mistrza: Spróbuj zmodyfikować kod drzewa binarnego, zmieniając kąty rozgałęzień lub dodając kolory - otrzymasz zupełnie nowe wzory!

Krzywa Kocha i zastosowania praktyczne
Krzywa Kocha to popularny fraktal, który możemy narysować rekurencyjnie:
def koch(bok, n):
if n == 0:
fd(bok)
return
koch(bok/3, n-1)
lt(60)
koch(bok/3, n-1)
rt(120)
koch(bok/3, n-1)
lt(60)
koch(bok/3, n-1)
Z krzywej Kocha możemy stworzyć płatek Kocha, rysując trzy krzywe Kocha połączone pod kątem 120 stopni:
def platek(n):
bok = 300
lt(60)
for i in range(3):
koch(bok, n)
rt(120)
rt(60)
Praktycznym zastosowaniem metody połowienia jest funkcja znajdująca miejsce zerowe funkcji z zadaną dokładnością:
def miejsce_zerowe(eps):
a = 0
b = 100
while abs(b-a) > eps:
c = (a+b)/2
if f(c) > 0:
b = c
else:
a = c
return c
🎯 Zastosowanie: Metoda połowienia, chociaż nie jest najszybsza, jest bardzo stabilna i niezawodna - dlatego używa się jej w wielu praktycznych sytuacjach, od znajdowania pierwiastków po optymalizację parametrów.
Myśleliśmy, że nigdy nie zapytasz...
Podobne notatki
Najpopularniejsze notatki z Matematyka
9Właściwości funkcji liniowej
Zrozumienie funkcji liniowej: definicja, współczynniki a i b, monotoniczność oraz sposób wyznaczania równania prostej. Dowiedz się, jak określić dziedzinę, zbiór wartości oraz punkty przecięcia z osiami. Idealne dla uczniów przygotowujących się do egzaminów z matematyki.
Skróty klawiszowe
Skróty klawiszowe
Nauka i technologia
Poznaj podstawowe terminy związane z nauką i technologią, takie jak Bluetooth, przeglądarka internetowa i kamera wideo, w języku angielskim.
Podstawy Pythona
Odkryj podstawowe funkcje Pythona, w tym potęgowanie, deklarowanie zmiennych, wczytywanie danych oraz konwersję typów. Idealne dla początkujących programistów. Zawiera przykłady kodu i wyjaśnienia kluczowych koncepcji.
Relacyjne Bazy Danych
Zrozumienie relacyjnych baz danych: definicje, typy relacji (jeden do jednego, jeden do wielu, wiele do wielu), klucze podstawowe i obce, oraz modele baz danych. Idealne dla studentów informatyki i osób pragnących zgłębić temat baz danych.
Podstawy Sieci Komputerowych
Zrozumienie podstawowych koncepcji sieci komputerowych, w tym protokołów TCP/IP, topologii sieci, systemów liczbowych oraz bezpieczeństwa w sieci. Materiał obejmuje kluczowe elementy architektury sieci, takie jak routery, przełączniki i karty sieciowe. Idealne dla studentów informatyki i osób pragnących zgłębić tematykę sieci komputerowych.
Podstawy Grafiki Komputerowej
Zrozumienie grafiki komputerowej: różnice między grafiką wektorową a rastrową, formaty plików (PDF, SVG, EPS, PNG, TIFF, PSD, JPG, BMP, GIF), modele kolorów (RGB, CMYK, HSV) oraz kompresja danych. Idealne dla studentów informatyki i web developmentu.
Systemy Liczbowe: Działania
Zrozumienie systemów liczbowych: dwójkowy, dziesiętny i szesnastkowy. Praktyczne przykłady działań arytmetycznych, konwersji między systemami oraz kluczowe zasady dodawania, odejmowania, mnożenia i dzielenia. Idealne dla uczniów przygotowujących się do egzaminów.
Znaczniki HTML i selektory CSS
Krótki opis wybranych znaczników HTML i selektorów CSS.
Najpopularniejsze notatki
9Karta rowerowa
UwU
Wprowadzenie do lektury Zemsta
Sprawdź znajomość czasu i miejsca akcji oraz głównych wątków komedii Aleksandra Fredry.
Nauka znaków drogowych
Uczenie się zanków drogowych na sprawdzian-kartkówkę
Polski e8
Egzamin ósmoklasisty
biologia- ryby klasa 6
Przed odpowiedzią ustnią idealny do powtórki ❤️
Quiz-Dziady cz.2
Ten quiz sprawdzi twoją wiedzę z Dziadów🫶!
Przedwiośnie: Analiza Tematów
Zanurz się w analizę powieści 'Przedwiośnie' Stefana Żeromskiego. Odkryj kluczowe motywy, takie jak dojrzewanie, rewolucja i podróż, oraz ich znaczenie w kontekście niepodległej Polski. Notatka zawiera szczegółowe omówienie bohaterów, narracji oraz symboliki, co czyni ją idealnym materiałem do nauki i przygotowania do egzaminów.
Wprowadzenie do lektury Pan Tadeusz
Zapoznasz się z genezą utworu, czasem i miejscem akcji oraz galerią najważniejszych postaci epopei Adama Mickiewicza.
Balladyna- quiz do lektury | egzamin ósmoklasisty
quiz z lektury „Balladyna” 🥰 idealny jako powtórka przed egzaminem
Zobacz, co mówią o nas nasi użytkownicy. Pokochali nas — pokochasz też i Ty.
Aplikacja jest bardzo prosta i dobrze przemyślana. Do tej pory znalazłem wszystko, czego szukałem i mogłem się wiele nauczyć z innych notatek! Na pewno wykorzystam aplikację do pomocy przy robieniu prac domowych! No i oczywiście bardzo pomaga też jako inspiracja do robienia swoich notatek.
Ta aplikacja jest naprawdę świetna. Jest tak wiele notatek i pomocnych informacji [...]. Moim problematycznym przedmiotem jest język niemiecki, a w aplikacji jest w czym wybierać. Dzięki tej aplikacji poprawiłam swój niemiecki. Polecam ją każdemu.
Wow, jestem w szoku. Właśnie wypróbowałam aplikację, ponieważ widziałam ją kilka razy reklamowaną na TikToku jestem absolutnie w szoku. Ta aplikacja jest POMOCĄ, której potrzebujesz w szkole i przede wszystkim oferuje tak wiele rzeczy jak notatki czy streszczenia, które są BARDZO pomocne w moim przypadku.