Tablicowanie funkcji. Największy wspólny podzielnik. Definicja iteracji. Algorytmy iteracyjne. Miary zbiorów. Idea wartownika. Poszukiwanie w zbiorze. Średnia. Minimum i maksimum.
W7. Metody tworzenia algorytmów. „Dziel i zwyciężaj”. Programowanie dynamiczne. Metoda zachłanna.
W8. Algorytmy sortowania. Sortowanie bąbelkowe. Sortowanie prze wybór. Inne algorytmy sortowania. Porównanie algorytmów sortowania. Wprowadzenie do złożoności algorytmów.
(16 godz. ćwiczeń laboratoryjnych w trybie stacjonarnym)
LI. Zapoznanie się ze zintegrowanym środowiskiem programistycznym umożliwiającymi tworzenie działających w systemie Windows (Dev-C++) programów w języku C. Projektowanie i realizacja programów w języku C z zastosowaniem funkcji printf, scanf oraz instrukcji warunkowej if. Pisanie, kompilowanie i uruchamianie prostych programów.
L2 Zmienne i stałe. Typy danych w C. Stałe i preprocesor C. Łańcuchy znakowe. Formatowane wejście/wyjście. Instrukcja warunkowa if. Wstęp do pętli. Projektowanie i realizacja programów w języku C z zastosowaniem podstawowych operatorów. Wyrażenia i instrukcje. Konwersje typów. Funkcje z argumentami. Instrukcja while. Operatory i wyrażenia relacyjne.
L3. Projektowanie i realizacja programów w języku C z zastosowaniem pętli for. Inne operatory przypisania. Operator przecinkowy. Pętla do while. Pętle zagnieżdżone. Tablice. Operator warunkowy ?. Instrukcje continue, switch i break. Funkcje. Prototypy ANSI C.
L4. Projektowanie i realizacja programów w języku C z zastosowaniem rekurencji. Wprowadzenie do wskaźników. Omówienie wskaźników do tablic. Tablice wielowymiarowe. Łańcuchy znakowe i funkcje łańcuchowe. ObsługA plików. Klasa i zasięg zmiennych. Struktury. Unie.
L5. Projektowanie i realizacja programów w języku C z zastosowaniem funkcji biblioteki standardowej. Ćwiczenia dotyczące stylu programowania. Zarządzanie kodem źródłowym. Wybrane techniki inżynierii oprogramowania.
L6. Projektowanie i realizacja programów w języku C implementujących algorytmy liniowe. Wielomiany i schemat Homera. Tablicowanie funkcji. Największy wspólny podzielnik.
L7. Projektowanie i realizacja programów w języku C implementujących algorytmy iteracyjne. Definicja iteracji. Miary zbiorów. Idea wartownika. Poszukiwanie w zbiorze. Średnia. Minimum i maksimum. Metody tworzenia algorytmów. „Dziel i zwyciężaj”. Programowanie dynamiczne. Metoda zachłanna.
L8. Projektowanie i realizacja programów w języku C implementujących algorytmy sortowania. Sortowanie bąbelkowe. Sortowanie prze wybór. Inne algorytmy sortowania. Porównanie algorytmów sortowania. Wprowadzenie do złożoności algorytmów.
(8 godz. nauczanie na odległość - projekty studenckie realizowane drogą elektroniczną)
LI. Projektowanie i realizacja programów z zakresu teorii liczb. Najmniejsza wspólna wielokrotność. Liczby pierwsze i liczby złożone. Poszukiwanie liczb pierwszych. Sito Eratostenesa i faktoryzacja. Redukcja działań.
L2. Projektowanie i realizacja programów w języku C z zastosowaniem napisów. Kody znaków. Wyszukiwanie wzorców. Operowanie napisami. Funkcje biblioteczne operujące na napisach.
11