To jest stara wersja strony!


Języki i Metody Programowania 2 - Semestr letni 2015/2016

Organizacja zajęć i zasady zaliczenia

  • Ogólne zasady, które Państwa obowiązują: GRIS - proszę przeczytać, zrozumieć, ew. wątpliwości zgłosić na 1.-2. zajęciach
    • Proszę zwrócić uwagę na sposób informowania Państwa o aktualnościach, tryb konsultacji, zasady dotyczące kolokwiów i obecności.
  • Zajęcia w pierwszej części semestru prowadzi mgr inż. Krzysztof Kutt.
    Zajęcia w drugiej części semestru poprowadzi mgr inż. Mateusz Ślażyński.
  • Ocena końcowa jest średnią ocen z pierwszej i drugiej części semestru. Każdą z nich trzeba niezależnie od siebie zaliczyć.

I część: Podstawy programowania obiektowego w C++

Harmonogram

L.p. Termin Laboratorium
1.25.02.2016Wprowadzenie do programowania w C++
2.03.03.2016Dynamiczne zarządzanie pamięcią i operacje na plikach
3.10.03.2016Klasy i obiekty I
4.17.03.2016Klasy i obiekty II
5.31.03.2016Przeciążanie operatorów
6.07.04.2016Dziedziczenie i polimorfizm
7.14.04.2016Kolokwium

Laboratoria uzupełniające - obowiązują na kolokwium!

  1. Makefile - opis budowania programów w środowisku UNIX, potrzebne do laboratorium Klasy i obiekty I

Zasady zaliczenia

  • Na zaliczenie pierwszej części semestru składają się:
    • Ćwiczenia na laboratoriach: 6 lab * 5 pkt = 30 pkt
    • Kolokwium: 30 pkt
  • Powyższe punkty stanowią 100% maksymalnej łącznej liczby punktów (MAX).
  • Zgodnie z GRIS do wartości MAX nie wliczają się plusy za aktywność przyznawane za wykonanie odpowiednich ćwiczeń.
    • 5 plusów = 1 pkt
  • Rozwiązania zadań na plusy można przedstawić TYLKO na zajęciach.
  • Rozwiązania zadań na punkty można przedstawić na zajęciach albo przesłać mailem na kkutt@agh.edu.pl przed kolejnymi zajęciami (najpóźniej minutę przed rozpoczęciem kolejnych zajęć; np. jeżeli jest się zapisanym do grupy w czwartek o 08:00, zadania można wysłać do 07:59 w dniu kolejnych zajęć).
  • Na laboratorium można pracować pojedynczo lub w parach

Kolokwium

  • Kolokwium rozwiązywane jest na kartkach (nie trzeba nic przynosić poza długopisem).
  • Kolokwium trwa 60 minut.
  • Obowiązuje na nim materiał ze wszystkich laboratoriów (instrukcje + zadania na plusy i punkty).
  • Jest 18 pytań za 1,2,3 punkty – w sumie 30 pkt za całe kolokwium.
    • Pytania za 1 pkt to pytania krótkiej odpowiedzi (min. 1 słowo, zwykle ok. 1 zdanie), np.: „Jakie znasz typy prymitywne (wbudowane) języka C++? Wymień co najmniej 8.”
    • Pytania za 2 pkt zawierają kawałek kodu w C++. Należy w nich albo odpowiedzieć na pytanie „co zostanie wyświetlone po uruchomieniu tego kodu” albo znaleźć błąd i go naprawić (błędy są w większości zaczerpnięte z programów oddawanych na laboratorium i przesyłanych na maila ;-) )
    • Pytania za 3 pkt związane są z napisaniem kilku (ok. 5) linii kodu, np.: „Napisz ciało funkcji: void show(char[] filename); która wypisuje na ekranie cały plik o nazwie filename. Białe znaki nie muszą być zachowane w oryginalnej formie (np. zamiast trzech spacji obok siebie może być tylko jedna spacja na ekranie).
  • Na kolokwium należy przyjść na grupę do której jest się zapisanym, zgodnie z listami ocen udostępnianymi przez prowadzącego. Gdyby ktoś chciał przyjść na inną grupę, musi to zgłosić do prowadzącego najpóźniej tydzień przed kolokwium!

Zaliczenia poprawkowe

  • Do zaliczenia poprawkowego mogą przystąpić osoby które:
    • Nie mają zaliczenia lub
    • nie pisały kolokwium i posiadają usprawiedliwienie (osoby takie mogą pisać tylko zaległe kolokwium/a).
  • Do wyników uzyskanych z zaliczenia poprawkowego nie wlicza się:
    • plusów/minusów - w 1. terminie poprawkowym,
    • plusów/minusów i nieusprawiedliwionych nieobecności - w 2. terminie poprawkowym.
  • W 2. terminie poprawkowym można uzyskać co najwyżej ocenę 3.0.

II część: Szablony i kontenery w C++

Sprawy Organizacyjne

Nie zmieściłyby się tutaj, więc proszę zajrzeć na oddzielną stronę.

Ćwiczenia

Zanim zaczniesz pisać program zapoznaj się z wymaganymi konwencjami

L.p. Tytuł Czas trwania Grupa Deadline
1. Szablony funkcji 1 tydzień 2 os. 28.04
2. Szablony klas 1 tydzień 2 os. 05.05

Jak wysyłać wyniki

  1. Przetestować kod:
    1. g*.cpp -o test && ./test'' - :!: proszę użyć kompilatora ''gcc'' w wersji ''4.8.x'' (tak jak na serwerze borg) - Jeżeli kod się nie kompiluje: - proszę go **nie** wysyłać, nie ma po co - Jeżeli kod się kompiluje: - proszę stworzyć katalog o nazwie <numer_grupy>_<nazwisko1>_<nazwisko2>, np. - np. ''mkdir 0_Slazynski_Kutt'', gdzie ''0'' oznacza grupę o 08:00, a ''1'' grupę o 09:39 - skopiować istotne pliki do tego katalogu - np. ''cp *.cpp *.h ./0_Slazynski_Kutt'' - proszę spakować folder do archiwum zip, rar, 7z, lub tar.gz - np. ''tar -zcf 0_Slazynski_Kutt.tar.gz 0_Slazynski_Kutt'' - wysłać paczkę na mail mslaz@agh.edu.pl z tematem: ''Ćwiczenie nr <numer ćwiczenia>'' - np. ''Ćwiczenie nr 1'' - w treści wpisać imiona i nazwiska osób biorących udział w ćwiczeniu - np. ''Mateusz Ślażyński & Krzysztof Kutt'' - :!: załączyć archiwum z ćwiczeniem, to ważne :!: ===== Przydatne materiały ===== * [[http://www.cppreference.com/wiki/start Reference]] * Harvey M. Deitel, Paul J. Deitel, Arkana C++ - dla początkujących * Jerzy Grębosz, Symfonia/Pasja C++ - dla każdego * Bjarne Stroustrup, Język C++ - dla zainteresowanych * Awesome C/C++ - A curated list of awesome C/C++ frameworks, libraries, resources, and shiny things Laboratoria dodatkowe - opcjonalne, ich znajomość nie jest wymagana do kolokwium. Just for fun :-) - Wyjątki - Dziedziczenie i polimorfizm -- przykłady - Biblioteka standardowa ==== Narzędzia ==== * Uniksowy kompilator g++ * Eclipse IDE for C/C++ * MS Visual Studio Express Edition ==== Platformy online z zadaniami do ćwiczenia programowania ==== * https://www.hackerrank.com/domains * https://www.topcoder.com/login/?next=%252Fmy-dashboard%252F * https://leetcode.com * https://projecteuler.net * http://pl.spoj.com/problems/latwe/
pl/dydaktyka/jimp2/2016/start.1461852923.txt.gz · ostatnio zmienione: 2019/06/27 15:52 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0