Kurs: Wstęp do programowania w języku C zima 2018/19

Język wykładowy Polski
Opiekun Marek Piotrów
Liczba godzin 30 (wyk.) 30 (prac.)
Rodzaj K1 - kurs podstawowy
ECTS 5
Polecany dla I roku Tak
Egzamin Nie
Grupy efektów kształcenia Podstawy informatyki i programowania

Opis przedmiotu:

**Wstęp, czyli jak się ma "Wstęp do programowania w języku C" do "Wstępu do programowania w języku Python"** Studenci 1-go roku studiów 1-go stopnia mogą rozpocząć naukę programowania i podstaw informatyki w jednym z dwóch języków: **C albo Python** (można wybrać tylko jeden z tych dwóch kursów!). Każdy z tych kursów pozwala opanować podstawy informatyki i programowania a w dalszych semestrach doskonalić się w programowaniu w innych (lub tych samych) językach. W szczególności zaczynając od "Kursu: Wstęp do programowania w języku C", nie skazujecie się na zawsze na ten język (i nieznajomość Pythona) oraz _vice versa_. W drugim semestrze studiów (i kolejnych) pojawiają się kursy języków programowania (C++, Java, Ruby, Python), które pozwalają opanować różne języki, przy założeniu, że studenci mają ogólne pojęcie o programowaniu, które zdobywają na obu przedmiotach "Kurs: Wstęp do programowania w języku C/Python". **O samym kursie "Wstęp do programowania w języku C"** Celem tego kursu jest nauczenie i rozwinięcie podstawowych umiejętności programowania w jednym z najbardziej rozpowszechnionych języków imperatywnych - języku C. Wykład jest ilustrowany wieloma przykładami, a towarzyszące mu zajęcia w pracowniach uczą (poprzez wiele drobnych zadań i końcowy projekt) praktyki dobrego programowania. Nie wymaga on od uczestników żadnych wcześniejszych umiejętności programowania, ale studenci startujący od zera będą musieli poświęcić mu więcej pracy w domu, aby szybko wyrównać poziom. Elementy języka są wprowadzane stopniowo, zaczynając od konstrukcji podstawowych, a kończąc na bardziej zaawansowanych zagadnieniach, jak wskaźniki i dynamiczne struktury danych, operacje na plikach czy funkcje rekurencyjne. Ostatnie wykłady poświęcone są obiektowym elementom języka C++. Pochód języków programowania trwa od zarania informatyki. Studium języków C i C++ ułatwia start w naturalną ich kontynuację, do której obecnie zaliczają się ważne z komercyjnego punktu widzenia języki i środowiska: Java (Sun) oraz C# (.NET Microsoft). **Wymagane przygotowanie:** Brak, chociaż przydatna będzie podstawowa umiejętność programowania. **Program:** * Podstawowe konstrukcje języka: instrukcje i deklaracje. * Standardowe typy danych, wyrażenia. * Standardowe wejście/wyjście, filtry. * Funkcje, moduły i struktura programu. * Metody agregacji danych: tablice, struktury i unie. * Wskaźniki. * Dynamiczne zarządzanie pamięcią, standardowe biblioteki C. * Sekwencyjne i swobodne przetwarzanie plików. * Klasy, obiekty i strumienie w C++. **Literatura:** * Kernighan B.W., Ritchie D.M.: Język ANSI C. Seria "Klasyka Informatyki". Warszawa, Wydawnictwa Naukowo-Techniczne 2003. Podręcznik podstawowy. * Schildt B., C: The Complete Reference: covers C++ and ANSI C, Osborne McGraw-Hill, * ISO/IEC 9899 - Programming languages - C (aktualny standard ISO 1999).

Wykłady

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Marek Piotrów
cz 08:00-10:00 (s. 25) 300 108 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.

Pracownie

Lista
Prowadzący Termin zajęć Limit Zapisani Kolejka
Marek Piotrów
śr 10:00-12:00 (s. 108) 12 11 0
Marek Szykuła
śr 16:00-18:00 (s. 7) 12 13 0
Andrzej Łukaszewski
śr 10:00-12:00 (s. 109) 12 13 0
Marek Szykuła
wt 16:00-18:00 (s. 7) 12 12 0
Robert Kraus
wt 16:00-18:00 (s. 110) 12 10 0
Marek Piotrów
cz 10:00-12:00 (s. 7) 12 12 0
Michał Zapotoczny
wt 12:00-14:00 (s. 108) 12 13 0
Andrzej Łukaszewski
śr 08:00-10:00 (s. 109) 12 11 0
Tomasz Drab
cz 10:00-12:00 (s. 109) 12 12 0

UWAGA! Wyższa liczba oznacza wyższy priorytet, po zapisaniu do grupy zostajemy usunięci z kolejek o niższym priorytecie.


Konsultacje prowadzących:


Imię i nazwisko Pokój Konsultacje
Marek Piotrów 348 Czwartek 13-15 - należy zapowiedzieć się przez email
Andrzej Łukaszewski 337 środa 15-16, poniedziałek po 18, proszę wcześniej powiadomić mailem, w innych terminach czy też zdalnie po uzgodnieniu
Robert Kraus email lub MS Teams
Michał Zapotoczny 202 wtorek 12-14 (proszę o wcześniejszy mail)
Tomasz Drab mejlowo
Marek Szykuła 312 E-mail, Discord lub Teams.