I_P_W14_M03_C++ Algorytmy liczbowe w języku C++
Liczby to jeden z najstarszych i najbardziej uniwersalnych obszarów zastosowania algorytmów. W tym rozdziale dowiesz się, jak za pomocą języka C++ rozwiązywać problemy matematyczne, które pojawiają się zarówno w codziennym życiu, jak i w bardziej zaawansowanych dziedzinach informatyki.
Zajmiemy się sprawdzaniem, czy liczba jest pierwsza, obliczaniem największego wspólnego dzielnika (NWD) i najmniejszej wspólnej wielokrotności (NWW), analizą liczb doskonałych i zaprzyjaźnionych.
Każdy algorytm zostanie przedstawiony krok po kroku, z wyjaśnieniem działania oraz implementacją w języku C++. Dzięki temu, nie tylko nauczysz się pisać poprawny kod, ale także rozumieć jego logikę i zastosowanie. Rozdział ten pomoże ci rozwinąć umiejętność myślenia algorytmicznego — kluczową kompetencję każdego programisty.
Czy potrafisz wymienić wszystkie liczby pierwsze od 1 do 100? Sprawdź, jak ci poszło, analizując poniższy diagram.

Czy wiesz, że algorytmy oparte na liczbach pierwszych są fundamentem bezpieczeństwa w internecie? Wiele systemów szyfrowania, takich jak RSA, wykorzystuje fakt, że bardzo trudno jest rozłożyć dużą liczbę na czynniki pierwsze. Choć sprawdzenie, czy liczba jest pierwsza, jest stosunkowo proste, to odwrotna operacja — faktoryzacja — staje się ekstremalnie trudna dla bardzo dużych liczb. To właśnie ta „trudność” chroni twoje dane podczas zakupów online, logowania do banku czy wysyłania wiadomości.
Zastosujesz w praktyce wiedzę dotyczącą algorytmów liczbowych.
Prześledzisz przykładowe algorytmy liczbowe zapisane w języku C++.
Przeanalizujesz, napisaną w języku C++, implementację algorytmu służącego do sprawdzania, czy liczby są pierwsze, zaprzyjaźnione, doskonałe czy bliźniacze.
Wykonasz kilka ćwiczeń związanych z algorytmami liczbowymi.