Programowanie i algorytmy

Rozkład tematów z algorytmiki

Przykładowy rozkład tematów z przedmiotu "PROGRAMOWANIE I ALGORYTMIKA" (150 godzin)

1 Lekcja organizacyjna, PSO, BHP
2 Pojęcia wstępne związane z programowaniem
3 Struktura programu w C++
4 Komentarze, czytelność kodu
5 Pojęcie zmiennej oraz jej typy
6 Typy zmiennych - ćwiczenia
7 Rzutowanie typów
8 Operatory przypisania
9 Operatory arytmetyczne
10 Standardowe wejście/wyjście cin/cout, manipulatory
11 Stałe w C++
12 Znaki w C++, kody ASCII
13 Powtórzenie wiadomości
14 Praca klasowa
15 Omówienie i poprawa pracy klasowej
16 Wprowadzenie do instrukcji warunkowej if-else
17 Instrukcja warunkowa - ćwiczenia
18 Instrukcja warunkowa - ćwiczenia
19 Instrukcja wielokrotnego wyboru - switch - case
20 Instrukcja wielokrotnego wyboru - ćwiczenia
21 Srawdzenie wiadomości
22 Instrukcja iteracyjna for
23 Instrukcja iteracyjna while/ do while
24 Instrukcja iteracyjna - ćwiczenia
25 Instrukcja iteracyjna - ćwiczenia
26 Powtórzenie wiadomości
27 Praca klasowa
28 Omówienie i poprawa pracy klasowej
29 Funkcje w C++ - wprowadzenie
30 Tworzenie i wywoływanie funkcji
31 Funkcja typu void
32 Funkcja z wartością zwrotną
33 Funkcja a referencja
34 Przeciążanie nazw funkcji
35 Funkcje - ćwiczenia
36 Powtórzenie wiadomości
37 Praca klasowa
38 Omówienie i poprawa pracy klasowej
39 Pojęcie tablicy jednowymiarowej
40 Tablice znaków
41 Tablica wielowymiarowa
42 Tablice ćwiczenia
43 Tablice ćwiczenia
44 Tablica jako argument funkcji
45 Tablica jako wskaźnik - wprowadzenie
46 Tablice dynamiczne
47 Powtórzenie wiadomości
48 Praca klasowa
49 Omówienie i poprawa pracy klasowej
50 Rekurencja - wprowadzenie
51 Rekurencja - ćwiczenia
52 Rekurencja - ćwiczenia
53 Sprawdzenie wiadomości
54 Wskaźniki - wprowadzenie
55 Wskaźniki - ćwiczenia
56 Wskaźniki - ćwiczenia
57 Sprawdzenie wiadomości
58 Struktury - wprowadzenie
59 Struktury - ćwiczenia
60 Struktury - ćwiczenia
61 Unie i typ wyliczeniowy
62 Powtórzenie wiadomości
63 Praca klasowa
64 Omówienie i poprawa pracy klasowej
65 Pojęcie algorytmu i sposoby jego zapisu
66 Schematy blokowe - wprowadzenie
67 Schematy blokowe - ćwiczenia
68 Schematy blokowe - ćwiczenia
69 Lista kroków - wprowadzenie
70 Lista kroków - ćwiczenia
71 Złożoność algorytmiczna - wprowadzenie
72 Złożoność algorytmiczna - ćwiczenia
73 Programowanie zachłanne
74 Metoda dziel i zwyciężaj
75 Programowanie dynamiczne
76 Sprawdzenie wiadomości
77 Badanie czy liczba jest pierwsza
78 Rozkład liczby na czynniki pierwsze
79 Pozycyjne reprezentacje liczb
80 Algorytm Euklidesa
81 Liczby Fibonacciego
82 Wyszukiwanie binarne
83 Wyszukiwanie elementu najmniejszego i największego w zbiorze
84 Wyszukiwanie elementu najmniejszego i największego w zbiorze - alg. optymalny
85 Schemat Hornera
86 Wyszukiwanie wzorca w tekście
87 Sprawdzanie czy tekst jest palindromem
88 Szyfr przestawieniowy
89 Szyfr cezara
90 Sortowanie przez wstawianie
91 Sortowanie przez selekcję
92 Sortowanie przez wstawianie
93 Sortowanie przez scalanie
94 Sortowanie szybkie
95 Zagadka wież Hanoi
96 Pakowanie plecaka
97 Wydawanie reszty
98 Algorytm Euklidesa - NWW, operacje na ułamkach
99 Sito Eratostenesa
100 Przeszukiwanie liniowe z wartownikiem
101 Znajdowanie podciągów o określonych własnościach
102 Odwrotna Notacja Polska
103 Stabilny algorytm rozwiązania równania kwadratowego
104 Potęgowanie szybkie, modularne, binarne
105 Metoda połowienia przedziałów
106 Całkowanie numeryczne - metoda trapezów
107 Całkowanie numeryczne - metoda prostokątów
108 Algorytm Huffmana
109 Powtórzenie wiadomości
110 Praca klasowa
111 Omówienie i poprawa pracy klasowej
112 Wprowadzenie do dynamicznych struktur danych
113 Pojęcie stosu i jego implementacja
114 Kolejka fifo
115 Lista jednokierunkowa
116 Lista dwukierunkowa oraz lista cykliczna
117 Drzewo binarne
118 Kolejka priorytetowa
119 Pojęcie grafu - wprowadzenie
120 Przeszukiwanie grafu w głąb
121 Przeszukiwanie grafu wszerz
122 Dynamiczne struktury danych - ćwiczenia
123 Dynamiczne struktury danych - ćwiczenia
124 Dynamiczne struktury danych - ćwiczenia
125 Powtórzenie wiadomości
126 Praca klasowa
127 Omówienie i poprawa pracy klasowej
128 Programowanie obiektowe - wprowadzenie
129 Tworzenie klas - wprowadzenie
130 Klasa a obiekt
131 Część publiczna, prywatna i chroniona klasy
132 Pojęcie konstruktora i destruktora
133 Przeciążanie konstruktorów
134 Tworzenie klas - ćwiczenia
135 Tworzenie klas - ćwiczenia
136 Powtórzenie wiadomości
137 Praca klasowa
   
1 Dziedziczenie - wprowadzenie
2 Klasa bazowa i klasa pochodna
3 Dziedziczenie - ćwiczenia
4 Dziedziczenie - ćwiczenia
5 Przeciążanie operatorów - wprowadzenie
6 Przeciążanie operatorów - ćwiczenia
7 Przeciążanie operatorów - ćwiczenia
8 Funkcje, metody i klasy zaprzyjaźnione
9 Funkcje, metody i klasy zaprzyjaźnione - ćwiczenia
10 Biblioteka string
11 Biblitoeka algorithm
12 STL - wprowadzenie