Programowanie zaawansowane NI i FM (w C++)


Zajęcia prowadzone są stacjonarnie, z wykorzystaniem platformy repl.it .

Przykładowa strona z dokumentacją C++
Przykładowe kompilatory online: 1 , 2 , 3 , 4
Visual Studio Code: środowisko programistyczne z możliwością zdalnego działania na maszynach OKWF.
Program MobaXterm (dla Windows) do sesji zdalnej w terminalu komputera OKWF
Jak łączyć się z komputerami OKWF:   tutaj
Inna możliwość edycji i kompilacji w domu (MinGW & Code::Blocks).   Kliknij
Zdalny terminal poprzez plugin w Chrome: Secure shell (brak grafiki)
Strona notatek podręcznych na Google Docs
Strona tablicy zdalnej na Google Drawing



𝄞 Tydzień 1

📖   Wykład 1   (wstęp, zasady zaliczenia, warunki, pętle)

♨    Ćwiczenia: zestaw zadań


Tydzień 2

📖   Wykład 2   (pętle, warunki, funkcje)

♨    Ćwiczenia: zestaw zadań

📝   Praca domowa: zad. 2 + zad. 4e

🛈   Dodatkowa pomoc:

·  Zakres zmiennych: biblioteki <climits> i <cfloat>
·  Problem rekurencji: czas wykonywania. Biblioteka <chrono>


Tydzień 3

📖   Wykład 3 + 4   (referencje, typy danych, operatory, wskaźniki)

♨   Zestaw ćwiczeń (nr 3)

🛈   Dodatkowa pomoc:


·  Formatowanie napisów: biblioteka <iomanip>
·  Ciekawostka: ANSI escape sequences (sekwencje specjalne ANSI)
·  static - dla zmiennych i funkcji

📝   Praca domowa: zad. 3

Tydzień 4

📖   Wykład 3 + 4   (referencje, typy danych, operatory, wskaźniki)

♨   Zestaw ćwiczeń (nr 4)

🛈   Dodatkowa pomoc:

·  W jakich sytuacjach stosujemy podwójny wskaźnik?

📝   Praca domowa: {Z2b z serii 3 i Z2b z serii 4} w jednym kodzie + {Zad. 4 z serii 4} w drugim kodzie.


Tydzień 5

📖   Wykład 5   (tablice, C-stringi, alokacja dynamiczna, stringi)

♨   Zestaw ćwiczeń (nr 5)

🛈   Podręczna pomoc:

·  Gimnastyka na referencjach, wskaźnikach i tablicach
·  Schemat sortowania bąbelkowego

📝   Praca domowa: zadanie 3 i 4 z serii 5.


Tydzień 6

📖   Wykład 6   (template, static, lambda)

♨   Zestaw ćwiczeń

📝   Praca domowa:   Zadanie 4 z serii 6.


Tydzień 7

📖   Wykład 7 + 8   (klasy: wstęp, konstruktory, operatory, header file, cd.)

♨   Zestaw ćwiczeń (nr 7)

📝   Praca domowa:   Z3: sama klasa MyString bez operator() Z4: sama klasa Osoba, bez main


Tydzień 8

📖   Wykład 7 + 8   (klasy: wstęp, konstruktory, operatory, header file, cd.)

♨   Zestaw ćwiczeń (nr 8)

📝   Praca domowa:   Dokończyć zad. 2 oraz zrobić zad. 3 z serii 8.


Tydzień 9

📖   Wykład 9   (template class, pair, tuple, valarray, iteratory, algorithm)

♨   Zestaw ćwiczeń (nr 9)

📝   Praca dla chętnych:   Zad. 4 z serii 9 (na dodatkowy 1 punkt).


Tydzień 10

📖   Wykład 10   (STL: wstęp, iteratory, pętle, metody, mapy, algorithm)

♨   Zestaw ćwiczeń (nr 10)

🛈   Dodatkowa pomoc:

·  Własna reguła sortowania dla kontenera map
·  Biblioteka <random>   do losowania ze znanych rozkładów prawdopodobieństwa

📝   Praca domowa:   Zad. 3 z serii 10.


Tydzień 11

📖   Wykład 11   (dziedziczenie klas: wstęp, prywatność, polimorfizm)

♨   Zestaw ćwiczeń (nr 11)

🛈   Biblioteka   Eigen

·  Informacje
·  Demonstratory na repl.it

📝   Praca domowa:   dokończ zad. 1. Wykonaj zad. 2 bez klasy BoseEinstein.


Tydzień 12

📖   Wykład 12   (strumienie: wstęp, odczyt i zapis, str. plikowe i napisowe, wskaźniki)

♨   Zestaw zadań

📝   Praca domowa:   Zad. 5 z serii 12.


Tydzień 13

📖   Wykład 13   (wyjątki: wstęp, stdexcept i in.)

♨   Zestaw ćwiczeń (nr 13)

📝   Praca domowa:   Zad. 3 z serii 13 (do wtorku g. 1300).


Tydzień 14

📖   Wykład 14   (make, gnuplot_i)

♨   Zestaw zadań