Laboratorium PRI, semestr zimowy 2016/2017
Prowadzący zajęcia:
Piotr Wąsiewicz
- pwasiewi@elka.pw.edu.pl
- Gmach Elektroniki p.227
- Konsultacje PW piatek 14:00-15:00 p.227
Regulamin:
- 4 projekty punktowane 5p, 5p, 10p, 20p
- projekt pierwszy - wymagana wiedza z ćwiczeń 0-3
- projekt drugi - wymagana wiedza z ćwiczeń 0-4
- projekt trzeci - wymagana wiedza z ćwiczeń 0-9 (program powinien wczytywać z pliku i zapisywać do pliku, powinien operować na strukturach dynamicznie alokowanych np. calloc, zawierać nietrywialny algorytm operujący na danych z plików - tematy w laboratorium 10-12)
- projekt czwarty - tematy projektów w laboratorium 10-12 (może być dodane menu graficzne do projektu trzeciego lub np. "inteligentny" algorytm umożliwiający granie z komputerem, dodane bardziej skomplikowane algorytmy szyfrowania, kompresji itp.)
- termin rozdania tematów do uzgodnienia,
- termin oddania projektów do uzgodnienia.
- Aby oddać projekt, należy:
- określić szczegółowe założenia, zwłaszcza co do postaci i zakresu danych oraz przedstawienia wyników działania programu
- zaproponować i narysować algorytm w formie schematu blokowego
- dostarczyć dokumentację techniczną projektu (przykładowa dokumentacja),
- zakodować i uruchomić, a następnie przetestować program
- przesłać kod źródłowy projektu w jednym skompresowanym pliku.
- wyniki działań w powyższych punktach przesłać do akceptacji na email prowadzącego zajęcia w formie elektronicznej wraz z kodem programu
- przedstawić program do oceny w laboratorium (w tym należy pokazać tekst źródłowy programu i zbiory danych użytych do testowania oraz zademonstrować program w działaniu) albo na własnym komputerze (w systemie Linux)
- Strona opracowana na podstawie materiałów przygotowanych przez Arkadiusza Lewandowskiego oraz innych laborantów
Laboratorium 0 | Konta, konsola, środowisko uruchomieniowe. Pierwszy program, standardowe wyjście i wejście.
Laboratorium 1 | Typy proste, "typ" łańcuchowy. Stałe i zmienne. Podstawowe operacje arytmetyczne. | Przykładowe rozwiązania
Laboratorium 2 | Pętle for
, while
, do-while
. Instrukcje sterujące if-else
, switch
, break
, continue
. | Przykładowe rozwiązania
Laboratorium 3 | Funkcje, zmienne globalne i lokalne. Wskaźniki, przekazywanie argumentów do funkcji przez wartość i wskazanie. | Przykładowe rozwiązania
Laboratorium 4 | Wskaźniki, tablice, "typ" łańcuchowy. | Przykładowe rozwiązania
Laboratorium 5 | Proste algorytmy sortowania (sortowanie bąbelkowe, sortowanie przez wstawianie).
Laboratorium 6 | Struktury, typ wyliczeniowy, dynamiczna alokacja pamięci. |
Laboratorium 7 | Złożone struktury danych – lista jednokierunkowa. |
Laboratorium 8 | Obsługa plików (zapis/odczyt; binarnie/tekstowo). |
Laboratorium 9 | Złożone projekty, pliki nagłówkowe, pliki makefile. |
Laboratorium 10-12 - TEMATY PROJEKTÓW | Projekt 3 i 4 (10 i 20 pkt)
Materiały pomocnicze