Politechnika Wrocławska, Studium Kształcenia Podstawowego, sem. zimowy 2012/2013

Wykład:  INE 0051 - PODSTAWY PROGRAMOWANIA - C++

Proponowane terminy sprawdzianów kontrolnych z wykładu:

       I.     5  grudnia  2012

- przykładowe zadania 1  ( na 1 sprawdzian ), 
   WYNIKI 1 SPRAWDZIANU

       II.  23  stycznia 2012    

- przykładowe zadania 2  ( na 2 sprawdzian )
   WYNIKI 2 SPRAWDZIANU i oceny końcowe

 popr.  30  stycznia 2013 - poprawka sprawdzianów z wykładu dla SKP
   
( środa, godz. 13:00-14:00, sala 23/C3 )

   
Aktualne informacje (np. wyniki zaliczeń, terminy wpisów) będą podawane na  Tablicy ogłoszeń

Proponowany program laboratorium do wykładu.
Archiwalne materiały do wykładu z roku 2011


Zakres wykładu:  Podstawy programowania na przykładzie języka C++   (prow. dr Marek Piasecki)

Informacje o prowadzącym, zasady zaliczenia wykładu (PDF).
  1. Wprowadzenie: Algorytmiczne języki programowania. Program komputerowy i proces jego opracowywania.
    Struktura programu źródłowego w C/C++. Przykłady prostych programów.

    Podstawowe typy całkowite i rzeczywiste . Definiowanie i inicjacja zmiennych prostych.
    Operatory i wyrażenia: Operator przypisania. Operatory i wyrażenia arytmetyczne.
    Operatory przypisania arytmetycznego, inkrementacji i dekrementacji. Operatory relacji, wyrażenia logiczne.
    slajdy do wykładu: ( W1.PDF )
     

  2. Podstawowe operacje wejścia i wyjścia:  Podejście proceduralne - funkcje standardowe scanf i printf.
    Podejście obiektowe - strumienie standardowe cin, cout, operatory pobierania i wstawiania do strumienia.
    Sterowanie wykonaniem programu. Instrukcje warunkowe if, if-else, konstrukcja else-if.
    Zagniezdżanie instrukcji if. Instrukcja switch.
    slajdy do wykładu: ( W2.PDF )
     
                                ( Dodatkowe przykłady ilustrujące if/else )

  3. Instrukcje iteracyjne:while, do-while, for. Badanie warunku zakończenia pętli.
    Pętle zagnieżdżone. Instrukcje break i continue.

    Przykłady programów z wykorzystaniem w/w instrukcji.
    slajdy do wykładu: ( W3.PDF ) 

    Inne materiały: console color, gotoxy, clrscr

  4. Tablice w języku C - deklaracja i inicjacja - dostęp do elementów za pomocą operatora indeksu.
    Operacje na tablicach z wykorzystaniem pętli for. Tablice wielowymiarowe.
    slajdy do wykładu: ( W4.PDF )

  5. Wskaźniki: Wskaźniki zmiennych i ich adresy, arytmetyka wskaźników.
    Związek pomiędzy wskaźnikami a tablicami. Praca z tablicami w zapisie wskaźnikowym.
    slajdy do wykładu: ( W5.PDF )

  6. Funkcje: pojęcie funkcji. Deklaracja i definicja funkcji. Prototyp funkcji.
    Zwracanie wartości funkcji. Przekazywanie parametrów przez wartość.

    Parametry funkcji: przekazywanie parametrów funkcji przez wartość, adres, referencję.
    Zwracanie jednej i wielu wartości. Przekazywanie zmiennych prostych, tablic, łańcuchów.
    Funkcje operujące na pamięci: <mem.h> (memset, memcpy, memcmp, memmove, itp.) 
    slajdy do wykładu: ( W6.PDF )
                                (
    Dodatkowe przykłady tworzenia własnych funkcji )

  7. Teksty - tablice znakowe w języku C.
    Standardowe funkcje łańcuchowe z biblioteki <string.h> (strcpy, strcmp, strcat, strlen, itd.)

    Przykłady przetwarzania danych tekstowych (operacje na łańcuchach znaków).

    slajdy do wykładu: W7.PDF )
                                (
    Dodatkowe przykłady funkcji przetwarzających teksty )
     

  8. Dynamiczne przydzielanie pamięci. Tworzenie tablic i łańcuchów o zadawanej wielkości.
    slajdy do wykładu: ( W8.PDF )

  9. Typ strukturalny i jego definicja. Deklaracja i inicjacja zmiennych strukturalnych.
    Zagnieżdżanie struktur.Rozszerzenie struktury o metody składowe. Atrybuty dostępu.
     
    slajdy do wykładu: W9.PDF )
                                ( Dodatkowe przykłady przetwarzania tablic struktur )

  10. Obsługa plików zewnętrznych. Pliki binarne i tekstowe.
    Podejście proceduralne: Standardowe funkcje do obsługi plików z biblioteki <stdio.h>.

    Wejście i wyjście dla znaków, łańcuchów i danych formatowanych. Wejście i wyjście blokowe (binarne).
    slajdy do wykładu: W10.PDF )
                                ( Dodatkowe przykłady przetwarzania plików )


    Podejście obiektowe: Klasa fstream. Podstawowe metody i operatory.
    slajdy do wykładu: ( W10b.PDF )

  11. Wskaźniki a tablice wielowymiarowe. Tablice wskaźników, wskaźniki na tablice.
    Wskaźniki na funkcje. Funkcja qsort.
    Różne kombinacje wskaźników.
    slajdy do wykładu: ( W11.PDF )

 

Literatura:

Jerzy Grębosz          “Symfonia C++”

Robert Lafore              “Programowanie w języku C przy użyciu Turbo C++”
Andrzej Zalewski         “Programowanie w językach C i C++ z wykorzystaniem pakietu Borland C++”
Kris Jamsa                 “Wygraj z C++”
Kent Reisdorph           “C++ Builder 6 - dla każdego” (do laboratorium z wykorzystaniem środowiska C++ Builder)
----------------------------------------------
Bjarne Stroustrup     “Język C++ “
Robert Sedgewick    “Algorytmy w C ++ “
----------------------------------------------
Brian Kernigham, Dennis Ritchie   “Język ANSI C“

 


Zagadnienia do opracowania na laboratorium:

- Poznanie środowiska programistycznego  Dev-C++  lub  Microsoft Visual Studio
- Pisanie i uruchamianie programów konsolowych z użyciem:
       a) zmiennych prostych oraz instrukcji warunkowych
       b) pętli i tablic (zapis indeksowy)
       c) definiowanie funkcji oraz przekazywanie parametrów,
       d) przetwarzanie łańcuchów (zapis indeksowy i wskaźnikowy),
       e) tablice struktur - wczytywanie, wyświetlanie, wyszukiwanie, obliczenia
       g) składowanie danych w pliku dyskowym (tekst oraz binarnie)


Szczegółowy program laboratorium 2012/2013