Uniwersytet Warszawski - Centralny System Uwierzytelniania
Strona główna

Programowanie

Informacje ogólne

Kod przedmiotu: 1100-1F23
Kod Erasmus / ISCED: 11.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (brak danych)
Nazwa przedmiotu: Programowanie
Jednostka: Wydział Fizyki
Grupy: Fizyka, I stopień; przedmioty obowiązkowe dla I roku
Nauczanie fizyki; przedmioty dla I roku
Punkty ECTS i inne: 3.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.
Język prowadzenia: polski
Kierunek podstawowy MISMaP:

fizyka

Założenia (opisowo):

Przedmiot przeznaczony jest dla studentów, którzy mają nieduże doświadczenie z programowaniem w języku C++ lub nigdy w tym języku nie programowali.


Od semestru letniego 2022/2023 przedmiot będzie prowadzony na dwóch poziomach:

1) podstawowym - dla osób, które nigdy nie programowały w żadnym języku lub uważają programowanie za trudny przedmiot

2) średnio-zaawansowanym - dla pozostałych osób


Uwaga !!!! Przy rejestracji do grup proszę zwrócić uwagę na poziom grupy (w uwagach). Grupy 2,5 i 9 to poziom podstawowy, a pozostałe - średnio-zaawansowany.


Na obu poziomach zaczniemy od zupełnych podstaw, ale na poziomie trudniejszym na początkowe tematy poświęcimy niewiele czasu.


Na poziomie podstawowym nie będzie elementów programowania obiektowego

i wobec tego kryteria zaliczenia na obu poziomach będą inne.


Zalecane jest zaliczenie przedmiotów: Technologie Informacyjne i Komunikacyjne 1100-1F11 lub 1100-1Ind12

Tryb prowadzenia:

w sali

Skrócony opis:

Ćwiczenia będą poświęcone opanowaniu języka C++ w zakresie składni, podstawowych elementów a także podstawowych struktur danych.

Wykład jest w dużym procencie wprowadzeniem do tego co będzie

robione na ćwiczeniach . Od pewnego momentu wykłady będą zawierały

materiał, który będzie na ćwiczeniach przerabiany tylko w grupach średnio-zaawansowanych.

Pełny opis:

Program:

1. Wprowadzenie

a) C++ a Python i inne języki programowania

b) Algorytmy, kod źródłowy jako zapis algorytmu

c) Kod źródłowy i program, kompilacja, uruchamianie programu

d) Jak stworzyć środowisko do pisania programów w C++

e) Reprezentacje liczb i znaków w komputerze

2. Podstawy języka C++

a) Najprostszy program, struktura programu

b) Standardowe strumienie wejściowe i wyjściowe

c) Zmienne, operatory i wyrażenia

d) Instrukcja warunkowa i pętle

e) Funkcje

f) Wybrane elementy składni z nowych wersji języka C++

3. Proste tablice i pojemniki STL

a) Tablice jednowymiarowe i ich zastosowania

b) "Inteligentna" tablica - vector z biblioteki STL

Poziom średnio-zaawansowany:

c) Inne pojemniki STL

d) Więcej o zwykłych tablicach

e) Wskażniki

f) Argumenty funkcji main

g) Dynamiczne rezerwowanie pamięci

4. Strumienie

a) Więcej o standardowym wejściu i wyjściu

b) Praca z plikami

Poziom średnio-zaawansowany:

c) istringstream,ostringstream

4. Klasy

Poziom średnio-zaawansowany:

a) Konstruktory, prywatne i publiczne metody

b) Funkcje get i set, przyjaciele

c) Przeładowanie operatorów

d) Klasa string

Tylko na wykładzie:

- podstawy obsługi wyjątków w C++

- dziedziczenie, funkcje wirtualne, polimorfizm

- make/makefiles (opcjonalnie)

Nakład pracy studenta:

Wykład = 15 godzin tygodniowo

Ćwiczenia = 30 godzin tygodniowo

Praca w domu - im więcej praktyki tym lepiej

Literatura:

J. Grębosz, Symfonia C++ standard (dostępna w dużych ilościach w bibliotece,

zawiera większość przerabianego materiału). J.Grębosz opisał nowsze standardy języka C++ w kontynuacjach/rozszerzeniach tej książki.

Efekty uczenia się:

Studenci, którzy zaliczą przedmiot, powinni:

na poziomie podstawowym:

---------------------------------------------

znać składnię języka C++; umieć zapisać proste algorytmy; znać podstawowe instrukcje sterujące (pętle, instrukcje warunkowe), umieć tworzyć własne funkcje, korzystać z tablic i pojemnika vector, wczytywać dane z tekstowych plików i zapisywać wyniki działania programów do plików.

Powinni także umieć korzystać z internetowej bazy danych zawierajacej informacje o standardowej bibliotece C++.

Na poziomie zaawansowanym dodatkowo:

----------------------------------------------------------------------

studenci powinni między innymi znać podstawy programowania obiektowego i umieć tworzyć własne klasy; umieć korzystać ze wskaźników,, używać argumentów funkcji main i różnych pojemników STL.

Metody i kryteria oceniania:

Zasady zaliczenia 2022/2023, poziom podstawowy:

...

Zasady zaliczenia 2022/2023, poziom średnio-zaawansowany:

...

Zasady zaliczenia 2020/2021:

1) Sprawdzian pisany na kartkach: dwa programy + pytania testowe z wykładu.

2) 5-minutowe "kartkówki" przy komputerze na początku każdych ćwiczeń.

3) Duży program do napisania w domu + rozmowa zaliczeniowa

na temat tego programu i materiału wykładowego w czasie sesji.

4) Obecność na ćwiczeniach (można mieć co najwyżej dwie nieusprawiedliwione nieobecności).

Na ćwiczeniach wymagana jest znajomość materiału wykładowego z wszystkich wykładów wygłoszonych przed terminem danych ćwiczeń.

Możliwe jest zaliczenie eksternistyczne - zgłoszenia przyjmowane są

na pierwszych trzech wykładach.

Zajęcia w cyklu "Semestr letni 2022/23" (jeszcze nie rozpoczęty)

Okres: 2023-02-20 - 2023-06-18
Wybrany podział planu:


powiększ
zobacz plan zajęć
Typ zajęć:
Ćwiczenia, 30 godzin, 70 miejsc więcej informacji
Wykład, 15 godzin, 70 miejsc więcej informacji
Koordynatorzy: Katarzyna Grzelak
Prowadzący grup: Eryk Buk, Katarzyna Grzelak, Jan Klamka, Tomasz Mikołajków, Antoni Mikos-Nuszkiewicz, Magdalena Posiadała-Zezula, Michał Suchorowski, Mateusz Zych
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Zaliczenie na ocenę
Wykład - Zaliczenie na ocenę
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski.
ul. Banacha 2
02-097 Warszawa
tel: +48 22 55 44 214 https://www.mimuw.edu.pl/
kontakt deklaracja dostępności USOSweb 6.8.1.0-65ff8df66 (2023-01-24)