|
|
(83 intermediate revisions not shown) |
Line 1: |
Line 1: |
| <font size="2"> | | <font size="2"> |
- | Semestr letni 2014/2015 | + | Semestr letni 2016/2017 |
| | | |
| '''Laboratorium z programowania w języku C''' do wykładu dr inż. Tomasza Pietrzaka. | | '''Laboratorium z programowania w języku C''' do wykładu dr inż. Tomasza Pietrzaka. |
Line 6: |
Line 6: |
| Prowadzący: | | Prowadzący: |
| | | |
- | mgr inż. Małgorzata Janik
| + | dr inż. Małgorzata Janik |
| | | |
- | pok. 114 GF, majanik@if.pw.edu.pl | + | pok. 117d GF, malgorzata.janik@pw.edu.pl |
| | | |
- | Konsultacje: pon. 10:00-11:00, 13:00-14:00 w pokoju 114 + umowa na inne terminy drogą mailową. | + | Konsultacje: śr. 13:00-14:00, cz. 11:00-12:00 w pokoju 117d + umowa na inne terminy drogą mailową. |
| | | |
- | [http://www.if.pw.edu.pl/~topie/?str=2360 Regulamin PP] znajduje się do wglądu na [http://www.if.pw.edu.pl/~topie stronie dr Pietrzaka]. Rozkład zajęć oraz regulamin laboratorium można znaleźć na stronie [http://www.if.pw.edu.pl/~labkomp/ stronie Laboratorium Komputerowego]. | + | '''Przed przyjściem na konsultacje należy się umówić z prowadzącym poprzez e-mail.'''<br> |
| + | |
| + | [http://www.if.pw.edu.pl/~topie/?str=2470 Regulamin PP] znajduje się do wglądu na [http://www.if.pw.edu.pl/~topie stronie dr Pietrzaka]. Rozkład zajęć oraz regulamin laboratorium można znaleźć na stronie [http://www.if.pw.edu.pl/~labkomp/ stronie Laboratorium Komputerowego]. |
| </font> | | </font> |
- |
| |
- | <!-- Wykłady znajdują się na stronie dr Hanny Zbroszczyk: [http://www.if.pw.edu.pl/~gos/ Wykłady]. -->
| |
- |
| |
- |
| |
- | <b>Wyniki</b>
| |
| | | |
| <!-- [https://docs.google..... Grupa wtorek 8:00 - 10:00] --> | | <!-- [https://docs.google..... Grupa wtorek 8:00 - 10:00] --> |
Line 27: |
Line 24: |
| [http://www.if.pw.edu.pl/~majanik/files/PP/prezentacja1_zadania.pdf Laboratorium 0 - wstęp] (laboratorium niepunktowane) | | [http://www.if.pw.edu.pl/~majanik/files/PP/prezentacja1_zadania.pdf Laboratorium 0 - wstęp] (laboratorium niepunktowane) |
| | | |
- | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie1_2015 Laboratorium 1 - wczytywanie z pliku] | + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_1_2018 Laboratorium 1 - wczytywanie z pliku] |
| | | |
- | Laboratorium 2 | + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_2 Laboratorium 2 - pętle i instrukcje warunkowe] |
| | | |
- | Laboratorium 3 | + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_3 Laboratorium 3 - tablice jednowymiarowe] |
| | | |
- | Laboratorium 4 | + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_4 Laboratorium 4 - łańcuchy znaków] |
| | | |
- | Laboratorium 5
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/2018/PRACA_DOMOWA_1.pdf Praca domowa 1] |
| | | |
- | Laboratorium 6
| + | <!-- |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium1 Kontrolne 1 - pierwsze zajęcia kontrolne] |
| | | |
- | Laboratorium 7
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium1_2017 Kolokwium 1 - pierwsze zajęcia kontrolne] |
| + | --> |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_5 Laboratorium 5 - funkcje] |
| | | |
- | Laboratorium 8
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_6 Laboratorium 6 - struktury] |
| | | |
- | Laboratorium 9
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/2018/PRACA_DOMOWA_2.pdf Praca domowa 2], [http://www.if.pw.edu.pl/~majanik/files/PP/2017/getchar.h getchar.h] |
| | | |
- | Laboratorium 10
| + | Kolokwium 2 - drugie zajęcia kontrolne |
| | | |
- | Laboratorium 11 - projekt | + | Laboratorium 7 |
| | | |
- | Laboratorium 12 - projekt | + | Laboratorium 8 |
| | | |
- | Laboratorium 13 - projekt | + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie_9 Laboratorium 9 - powtórzenie] |
| | | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/2018/DOMOWE_3_LISTA.pdf Praca domowa 3] |
| | | |
| + | Kolokwium 3, wersja minimum: [http://www.if.pw.edu.pl/~majanik/files/PP/2018/grawzycie_minimum gra_minimum] , więcej komórek: [http://www.if.pw.edu.pl/~majanik/files/PP/2018/grawzycie gra] , żeby uruchomić: chmod +x grawzycie ./grawzycie |
| | | |
- | <b>Zadania przygotowawcze</b>
| + | Kolokwium 4 |
| | | |
- | Oprócz przejrzenia wykładów przed laboratoriami polecam przećwiczenie różnych poleceń w domu z książką, lub darmowym [http://qvazar.pl/kurs-c/kurs-c kursem internetowym] (lub innym dowolnym). Kurs [http://qvazar.pl/kurs-c qvazar] zawiera absolutne podstawy podstaw, 99% ćwiczonych w nim instrukcji pojawi się na laboratoriach pręcej czy później (raczej prędzej) i co więcej, ich znajomość będzie również potrzebna podczas kursu C++. Wniosek: ćwiczyć!
| + | <!-- |
| | | |
| | | |
- | <b>Geany na windows'ie</b>
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie2_2017 Laboratorium 2 - pętle i instrukcje warunkowe] (zastępstwo) |
| | | |
- | Ze strony Geany: [http://www.geany.org/ http://www.geany.org/] ściągamy najnowszy pakiet "Full Installer" dla Windows [http://www.geany.org/Download/Releases Releases] geany-1.24_setup.exe.
| + | [http://www.if.pw.edu.pl/~lgraczyk/PP2017/lab03/zadanie3_20.03.2017.pdf Laboratorium 3 - tablice jednowymiarowe] (zastępstwo) |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium1_2017 Kolokwium 1 - pierwsze zajęcia kontrolne] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie4_2017 Laboratorium 4 - char*, alokacja pamięci] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie5_2017 Laboratorium 5 - funkcje] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie6_2017 Laboratorium 6 - struktury] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad7_2016 Laboratorium 7 - struktury wewnątrz struktur, podział na pliki, Makefile] (grupa 1) |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad7_2016_2 Laboratorium 7 - struktury, podział na pliki, Makefile] (grupa 2) |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium2_2017 Kolokwium 2 - drugie zajęcia kontrolne] (grupa 1) |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium2_2017_2 Kolokwium 2 - drugie zajęcia kontrolne] (grupa 2) |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/2017/zadanie8_2017_latwiejsze.pdf Laboratorium 8 - tablice dwuwymiarowe] |
| + | |
| + | Laboratorium 9 - listy jednokierunkowe (wejściówka również z tego wykładu, na którym pojawiły się listy) |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/2017/Kontrolne3_GameOfLife.pdf Kolokwium 3 - trzecie zajęcia kontrolne] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Kolokwium4_2017 Kolokwium 4 - czwarte zajęcia kontrolne] |
| + | --> |
| + | |
| + | <!-- |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad1_2016 Laboratorium 1 - wczytywanie z pliku] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad2_2016 Laboratorium 2 - pętle i instrukcje warunkowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad3_2016 Laboratorium 3 - tablice jednowymiarowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad4_2016 Laboratorium 4 - wskaźniki, alokacja pamięci i łańcuchy znaków] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad5_2016 Laboratorium 5 - funkcje, switch-case] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad6_2016 Laboratorium 6 - struktury] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad7_2016 Laboratorium 7 - struktury wewnątrz struktur, podział na pliki, Makefile] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad8_2016 Laboratorium 8 - wykorzystanie operacji bitowych] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad9_2015 Laboratorium 9 - struktury - c.d. ] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zad10_2016 Laboratorium 10 - powtórzenie, tablice dwuwymiarowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt1.pdf Laboratorium 11 - projekt cz. 1] |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/getchar.h getchar.h] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt2.pdf Laboratorium 12 - projekt cz. 2] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt3.pdf Laboratorium 13 - projekt cz. 3] |
| + | --> |
| + | |
| + | <!-- |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie1_2015 Laboratorium 1 - wczytywanie z pliku] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie2_2015 Laboratorium 2 - pętle i instrukcje warunkowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie3_2015 Laboratorium 3 - tablice jednowymiarowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie4_2015 Laboratorium 4 - wskaźniki, alokacja pamięci i łańcuchy znaków] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie5_2015 Laboratorium 5 - funkcje, switch-case] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie6_2015 Laboratorium 6 - struktury] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie7_2015 Laboratorium 7 - struktury wewnątrz struktur, podział na pliki, Makefile] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie8_2015 Laboratorium 8 - struktury wewnątrz struktur, podział na pliki, - c.d. ] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie9_2015 Laboratorium 9 - wykorzystanie operacji bitowych] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/wiki/index.php/C/Zadanie10_2015 Laboratorium 10 - powtórzenie, tablice dwuwymiarowe] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt1.pdf Laboratorium 11 - projekt cz. 1] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt2.pdf Laboratorium 12 - projekt cz. 2] |
| + | |
| + | [http://www.if.pw.edu.pl/~majanik/files/PP/Projekt3_ostatni.pdf Laboratorium 13 - projekt cz. 3],[http://www.if.pw.edu.pl/~majanik/files/PP/projekt3_demo projekt3_demo], [http://www.if.pw.edu.pl/~majanik/files/PP/getchar.h getchar.h]. Żeby włączyć demo trzeba odpowiednio ustawić uprawnienia (chmod +x projekt3_demo). |
| + | |
| + | --> |
| + | |
| + | <b>Zadania przygotowawcze</b> |
| | | |
- | Instalujemy. To już pozwoli nam na uruchomienie środowiska Geany. Ustawiamy środowisko podobnie jak na laboratoriach:
| + | Oprócz przejrzenia wykładów przed laboratoriami polecam przećwiczenie różnych poleceń w domu z książką, lub darmowym [http://qvazar.pl/kurs-c/kurs-c kursem internetowym] (lub innym dowolnym). Kurs [http://qvazar.pl/ qvazar] zawiera absolutne podstawy podstaw, 99% ćwiczonych w nim instrukcji pojawi się na laboratoriach prędzej czy później (raczej prędzej) i co więcej, ich znajomość będzie również potrzebna podczas kursu C++. Wniosek: ćwiczyć! |
- | [http://www.if.pw.edu.pl/~topie/dyd/14-15/pp/pp2015_instrukcja.pdf instrukcja]. Jednakże po próbie kompilacji spotkamy się z komunikatem: | + | |
- | Nazwa 'gcc' nie jest rozpoznawalna jako polecenie wewnętrzne lub zewnętrzne.
| + | |
- | Dzieje się tak, gdyż windows nie ma domyślnie zainstalowanego kompilatora gcc. Możemy go doinstalować używając [http://www.cygwin.com Cygwin'a] bądź [http://www.mingw.com MinGW].
| + | |
| | | |
- | <b> MinGW </b>
| |
| | | |
- | Wchodzimy na stronę [http://www.mingw.org/wiki/Getting_Started Getting Started] i podążamy za znajdującymi się tam instrukcjami. Zwracam uwagę na główne kroki:
| + | <b>[http://www.if.pw.edu.pl/~majanik/wiki/index.php?title=Geany_na_windows Geany na windows'ie]</b> |
- | * Ściągamy [https://sourceforge.net/projects/mingw/files/latest/download najnowszą wersję] MinGW.
| + | |
- | * Instalujemy w katalogu C:\MinGW (lub dowolnym innym, byle bez spacji)
| + | |
- | * Po instalacji w nowym okienku zaznaczamy:
| + | |
- | ** mingw32-base
| + | |
- | ** mingw32-gcc-g++
| + | |
- | ** mingw32-gcc-objc
| + | |
- | * Menu → Installation → Apply Changes
| + | |
- | * Po zainstalowaniu wszystkiego sprawdzamy czy mamy odpowiedni program: w katalogu C:\MinGW\bin powinno się pojawić <b>gcc.exe</b>.
| + | |
- | * Musimy dodać jeszcze odpowiednią ścieżkę do zmiennej środowiskowej PATH.
| + | |
- | ** W windows 7 robimy to przez: Start → wpisujemy "Edytuj zmienne" / "environment variables" (w zależnośći od wersji językowej systemu) → <b>Edytujemy zmienną PATH po średniku dodając C:\MinGW\bin.</b>
| + | |
- | ** Jeśli posiadamy inną wersję windowsa sprawdzamy, jak na naszym systemie ustawia się zmienne środowiskowe w googlach.
| + | |
- | * Po ustawieniu zmiennej resetujemy komputer!
| + | |
| | | |
- | Gdy po tym wszystkim włączymy Geany, kompilacja powinna przebiegać bez problemów.
| |
| | | |
| <!-- | | <!-- |
dr inż. Małgorzata Janik
pok. 117d GF, malgorzata.janik@pw.edu.pl
Konsultacje: śr. 13:00-14:00, cz. 11:00-12:00 w pokoju 117d + umowa na inne terminy drogą mailową.
Oprócz przejrzenia wykładów przed laboratoriami polecam przećwiczenie różnych poleceń w domu z książką, lub darmowym kursem internetowym (lub innym dowolnym). Kurs qvazar zawiera absolutne podstawy podstaw, 99% ćwiczonych w nim instrukcji pojawi się na laboratoriach prędzej czy później (raczej prędzej) i co więcej, ich znajomość będzie również potrzebna podczas kursu C++. Wniosek: ćwiczyć!