Lp. |
tematyka wykładu |
punktacja |
tematyka laboratorium i ćwiczeń |
typ zaj. |
punktacja |
1 |
Podstawowe pojęcia: algorytm, program, informatyka, programowanie. Narzędzia wspomagające programowanie. Pojęcie typu i wartości. Pierwszy program w języku C: przykład |
||||
2 |
Stałe: typ i wartość. Zmienne: typ, wartość, nazwa. Nazwa i referencja - wprowadzenie. Typy podstawowe języka C. |
Konta, system plików, komunikacja ze światem. zadania |
l |
||
3 |
Pojecie definicji zmiennej. Operatory arytmetyczne i przyrównania. Operator podstawienia. Priorytety i łączność operatorów . Informacja o instrukcji if. Informacja o pętli for. przykład 1 przykład 2 Tablica i wskaźnik. Instrukcja switch - wielowejściowy blok kodu łamigłówka 1. Pojęcie iteracji. Parametry formalne i aktualne. |
System plików, procesy, edytor, jak uruchomić program. zadania |
l |
0-5 |
|
4 |
Sortowanie tablicy - przez wstawianie i bąbelkowo - por. przykład i drugi przykład Przykłady użycia pętli i podziału kodu na funkcje. |
pierwszy program zadania |
l |
0-5 |
|
5 |
Funkcja jako nazwany blok kodu. Pojęcie zmiennej lokalnej i globalnej. Przysłanianie zmiennych. Parametry formalne i aktualne: łamigłówka 1, łamigłówka 2, łamigłówka 3. Przykład z wykladu ilustrujacy przekazywanie parametrów przez wartość, referencję i wskaźnik (Uwaga: przekazywanie przez referencje działa w języku C++, wymagany kompilator tego języka). Instrukcja return. Niejawne rzutowania podczas uzgadniania parametrów formalnych i aktualnych oraz przy ustalaniu wartości zwracanej. Jeszcze jeden przykład. |
środowisko uruchomieniowe zadania |
l |
0-5 |
|
6 |
Wskaźniki – idea i zasada analizy. Arytmetyka wskaźników. Relacje między tablicami i wskaźnikami. Argumenty funkcji main: argc i argv. Przykład – funkcja wypisująca na standardowym wyjściu posortowane słownikowo argumenty wywołania. |
proste funkcje opis laboratorium |
l |
||
7 |
Dynamiczna alokacja i dealokacja pamięci. Operator sizeof. Stos i sterta. Przykład z wczytywaniem tablicy dynamicznie alokowanej. |
jw. , rozdanie zadań projektowych opis laboratorium |
l |
||
8 |
l |
0-10 |
|||
9 |
Powtórka dotychczasowego materiału.przyklad z wykladu |
zasięg zmiennych opis ćwiczenia |
c |
||
10 |
kolokwium kolokwium z poprzedniej edycji przedmiotu kolokwium z obecnej edycji przedmiotu |
0-25 |
struktury, klasy pamięci opis ćwiczenia |
c |
|
11 |
Struktura (struct) jako typ zagregowany z dostępem do składowych przez nazwę. Strumienie: stdin, stdout, stderr, strumienie plikowe. Typ FILE*. Kolejki LIFO, FIFO i priorytetowa: zasada działania. |
mechanizmy wywołań funkcji |
c |
||
12 |
Realizacja kolejek za pomocą tablic jest tutaj, natomiast realizacja za pomocą listy liniowej jednokierunkowej (LIFO) i dwukierunkowej (FIFO) jest tutaj. Uwaga: proszę zastanowić się nad listową reprezentacją kolejki priorytetowej. |
c |
|||
13 |
Rekurencja - analogia do zasdy indukcji matematycznej, przyklad obliczania wartosci funkcji silnia. Rozwiązywanie problemów przez ich rekurencyjną dekompozycję. Rekurencja z odrywaniem i przez podział. Przykład na problemie wież Hanoi. Tu mozna znaleźć jeszcze jedno i drugie rozwiazanie tego samego problemu, nie rozniace sie algorytmem lecz sposobem zapisu i towarzyszacymi mu komentarzami. |
rekurencja opis ćwiczenia |
c |
||
14 |
Rekurencji ciag dalszy. Realizacja zadania konika szachowego, rozbita na 3 pliki: solwer, interfejs uzytkownika, plik naglowkowy. Prosze zwrocic uwage na deklaracje zmiennych globalnych poprzez extern. Pojecie wskaznika do funkcji, przyklad sortowania babelkowego tablicy czegokolwiek. |
Przeszukiwanie z nawrotami opis ćwiczenia |
c |
||
15 |
kolokwium kolokwium z poprzedniej edycji przedmiotu kolokwium z aktualnej edycji przedmiotu |
0-25 |
odbiór zadań projektowych |
l |
0-25 |
Do zdobycia jest w sumie 100 punktów. Warunkiem koniecznym zaliczenia jest zdobycie w sumie co najmniej 13 punktów (na 50) z kolokwiów wykładowych i co najmniej 13 punktów (na 50) z laboratoriów i ćwiczeń.
Ocena z przedmiotu będzie wystawiana na podstawie zdobytej liczby punktów wg schematu:
liczba punktów |
ocena |
0-50 |
2 |
51-60 |
3 |
61-70 |
3.5 |
71-80 |
4 |
81-90 |
4.5 |
91-100 |
5 |
Trzy ćwiczenia laboratoryjne są punktowane w skali 0-5 i trwają 2 godziny. Ćwiczenie 10-punktowe (miniprojekt) jest wykonywane w czasie dwóch kolejnych tygodni zajęć. Projekt jest oceniany w skali 0-25 i terminem jego oddania jest ostatni termin laboratorium w semestrze.
Prowadzący ćwiczenia mogą przyznać za aktywność do 5 dodatkowych punktów, jednak łączna ocena z części ćwiczeniowej nie może przekroczyć 50 punktów, a dodatkowe punkty można przyznać jeśli ocena z części ćwiczeniowej przekracza 15 punktów. Podobne zasady obowiązują na wykładzie.
Kolokwia wykładowe polegają na samodzielnym rozwiązaniu zadań; można na nich korzystać z własnych notatek i książek, natomiast nie wolno korzystać z urządzeń elektronicznych.
N. Wirth: Algorytmy + struktury danych = programy
B.
Kernighan, D. Ritchie: Język C
P. Silvester: System
operacyjny unix
Na wykładach używam kompilatora gcc i debuggera ddd.