Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 8. Karol Tarnowski A-1 p.

Podobne dokumenty
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 8. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 6. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 4. Karol Tarnowski A-1 p.

Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 4. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 3. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 5. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 12. Karol Tarnowski A-1 p.

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 4. Karol Tarnowski A-1 p.

Podstawy programowania. Wykład 6 Złożone typy danych: struktury, unie. Krzysztof Banaś Podstawy programowania 1

Wykład 3 Składnia języka C# (cz. 2)

Struktury Struktura polami struct struct struct struct

Podstawy algorytmiki i programowania - wykład 4 C-struktury

Tablicę 2-wymiarową można przedstawić jako pewien zestaw tablic 1-wymiarowych np.:

Programowanie proceduralne INP001210WL rok akademicki 2018/19 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Język C zajęcia nr 12. Struktury i unie

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Struktury - wprowadzenie

Podstawy programowania w języku C++

Materiał. Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Funkcje Wskaźniki Referencje Tablice dynamiczne Typ string Przeładowania funkcji

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 4. Karol Tarnowski A-1 p.

Tablice (jedno i wielowymiarowe), łańcuchy znaków

Podstawy programowania. Wykład: 8. Wskaźniki. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 13. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 1. Karol Tarnowski A-1 p.

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 13. Karol Tarnowski A-1 p.

Laboratorium nr 12. Temat: Struktury, klasy. Zakres laboratorium:

Informacje ogólne. Karol Trybulec p-programowanie.pl 1. 2 // cialo klasy. class osoba { string imie; string nazwisko; int wiek; int wzrost;

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

Wykład 8: klasy cz. 4

Podstawy programowania. Wykład: 12. Struktury, unie, pola bitowe. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Techniki programowania INP001002Wl rok akademicki 2018/19 semestr letni. Wykład 5. Karol Tarnowski A-1 p.

Podstawy programowania w języku C++

Wykład 1: Wskaźniki i zmienne dynamiczne

C-struktury wykład. Dorota Pylak

Podstawy programowania skrót z wykładów:

Deklaracja struktury w C++

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

Lab 9 Podstawy Programowania

Wykład 5: Klasy cz. 3

Tablice i struktury. czyli złożone typy danych. Programowanie Proceduralne 1

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Podstawy programowania. Wykład 7 Tablice wielowymiarowe, SOA, AOS, itp. Krzysztof Banaś Podstawy programowania 1

Materiał Typy zmiennych Instrukcje warunkowe Pętle Tablice statyczne Wskaźniki Tablice dynamiczne Referencje Funkcje

PRZEWODNIK PO PRZEDMIOCIE

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Podstawy programowania w języku C++

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 9. Karol Tarnowski A-1 p.

Podstawy programowania. Wykład 6 Wskaźniki. Krzysztof Banaś Podstawy programowania 1

Podstawy programowania. Wykład PASCAL. Zmienne wskaźnikowe i dynamiczne. dr Artur Bartoszewski - Podstawy prograowania, sem.

1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?

Programowanie obiektowe, wykład nr 6. Klasy i obiekty

C-struktury wykład. Dorota Pylak

Programowanie obiektowe w języku C++ dr inż. Jarosław Forenc

void Pobierz(Student &a); void Wypisz(Student a); void Ustaw_zaliczenia(Student t[],int r); void Wypisz_najlepszych(Student t[],int r, float prog);

1 Wskaźniki i zmienne dynamiczne, instrukcja przed zajęciami

ZASADY PROGRAMOWANIA KOMPUTERÓW

Podstawy programowania w języku C++

Rozdział 4 KLASY, OBIEKTY, METODY

Konstruktor destruktor Programowanie obiektowe

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Programowanie proceduralne INP001210WL rok akademicki 2015/16 semestr letni. Wykład 6. Karol Tarnowski A-1 p.

Klasa, metody, rozwijanie w linii

Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 5. Karol Tarnowski A-1 p.

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Programowanie w C++ Wykład 5. Katarzyna Grzelak. 26 marca kwietnia K.Grzelak (Wykład 1) Programowanie w C++ 1 / 40

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 6

Klasa jest nowym typem danych zdefiniowanym przez użytkownika. Najprostsza klasa jest po prostu strukturą, np

Klasa, metody, rozwijanie w linii

Pola i metody statyczne. Klasy zawierające pola i metody statyczne

Podstawy Programowania

Nazwa wariantu modułu (opcjonalnie): Laboratorium programowania w języku C++

KURS C/C++ WYKŁAD 2. char znak; znak = a ; Program 2 #include<stdio.h> void main() { char znak; while( (znak = getchar() )!= t ) putchar(znak); }

Rok akademicki: 2013/2014 Kod: JFT s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

1 Wskaźniki i listy jednokierunkowe

Podstawy programowania. Wykład: 6. Tablice statyczne. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy Programowania Obiektowego

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009

PARADYGMATY PROGRAMOWANIA Wykład 4

Elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES)

Wykład 1. Program przedmiotu. Programowanie (język C++) Literatura. Program przedmiotu c.d.:

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Struktury czyli rekordy w C/C++

Język C++ zajęcia nr 2

Algorytmy i złożoności. Wykład 3. Listy jednokierunkowe

Obiekt klasy jest definiowany poprzez jej składniki. Składnikami są różne zmienne oraz funkcje. Składniki opisują rzeczywisty stan obiektu.

Podstawy programowania - 1

Podstawy programowania. Wykład PASCAL. Wstęp do programowania obiektowego. dr Artur Bartoszewski - Podstawy programowania, sem.

Języki i techniki programowania Ćwiczenia 2

TEMAT : KLASY DZIEDZICZENIE

Konstruktory. Streszczenie Celem wykładu jest zaprezentowanie konstruktorów w Javie, syntaktyki oraz zalet ich stosowania. Czas wykładu 45 minut.

Operacje wejścia/wyjścia odsłona pierwsza

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 2. Karol Tarnowski A-1 p.

int suma; pralka czerwona; // definicja egzemplarza obiektu pralka * wskaŝ; // definicja wskaźnika pralka & ruda = czerwona; // definicja referencji

Programowanie obiektowe, wykład nr 7. Przegląd typów strukturalnych - klasy i obiekty - c.d.

Transkrypt:

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy Wykład 8 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B

Plan prezentacji Podział kodu programu Struktury definiowanie struktur dostęp do składowych struktur wskaźniki przykłady typedef Struktury cykliczne lista drzewo Na podstawie: G. Perry, D. Miller, Język C Programowanie dla początkujących

Pliki nagłówkowe W złożonych programach istnieje konieczność rozdzielenia kodu źródłowego na kilka plików

Pliki nagłówkowe deklaracje funkcji funkcja główna kod źródłowy funkcji

Pliki nagłówkowe main.c

Pliki nagłówkowe sort.h

Pliki nagłówkowe max.c

Struktury Tablice pozwalają przechowywać wiele wartości, ale wszystkie muszą być tego samego typu Jeżeli chcemy przechowywać dane różnych typów dotyczące jednego obiektu możemy wykorzystać strukturę

Struktury Przykład dane dotyczące studenta: imię (tablica znaków), nazwisko (tablica znaków), numer indeksu (liczba całkowita), rok studiów (liczba całkowita), średnia ocen (liczba rzeczywista),

Struktury Definicja W celu korzystania ze struktury należy zdefiniować jej składowe struct [etykieta struktury]{ }; definicja składowej; definicja składowej;... definicja składowej;

Struktury Definicja Przykładowa definicja struktury reprezentującej punkt na płaszczyźnie 2D struct point{ float x; float y; };

Struktury Definicja Definicja struktury określa układ składowych w strukturze Zdefiniowanie struktury nie jest równoznaczne z utworzeniem zmiennej Zmienne typu strukturalnego są deklarowane analogicznie jak zmienne typów podstawowych struct point a, b;

Struktury Dostęp do składowych Dostęp do składowych struktury uzyskuje się przy pomocy operatora. (kropka) nazwazmiennejstrukturalnej.nazwaskładowej Zmienne typu strukturalnego są deklarowane analogicznie jak zmienne typów podstawowych struct point a, b;

Struktury Przykład

Struktury Wskaźniki Ze względu na to, że struktury mogą mieć duży rozmiar, korzystne może być posługiwanie się wskaźnikami na struktury Korzystne może być przekazywanie struktur do funkcji przez referencję Dostęp do struktur wskazywanych przez wskaźnik uzyskuje się operatorem -> wskaźniknastrukturę->nazwaskładowej (*wskaźniknastrukturę).nazwaskładowej

Struktury Przykład

Struktury Przykład

Struktury Strukturę można inicjalizować, umieszczając po definicji listę wartości początkowych struct point a = {3.20, 2.00};

Struktury Można definiować struktury zawierające inne struktury Przykładowo informacje o trójkącie można przechowywać w strukturze zdefiniowanej następująco struct triangle { }; struct point 0; struct point 1; struct point 2;

Struktury Trzy pola można zastąpić tablicą struktur struct triangle { }; struct point ertices[3];

Struktury Podobnie można zdefiniować strukturę opisującą wielokąt struct polygon { int n; struct point * ertices; };

typedef Język C dysponuje mechanizmem, który umożliwia tworzenie nowych nazw typów danych typedef okreslenie_typu nowa_nazwa; typedef int Length; Length len, maxlen; Length *lengths[];

typedef

Struktury cykliczne Polem struktury może być wskaźnik na taką strukturę tego typu struktury nazywamy strukturami cyklicznymi Polem struktury nie może być sama struktura

Struktury cykliczne Przykład ptr1 ptr2 ptr3 NULL

Lista List NULL

Lista Dodaj element (na początku) List NULL

Lista Dodaj element (wewnątrz) List NULL

Lista Wypisz (iteracyjnie) n List NULL

Lista Usuń pierwszy element List n NULL

Drzewo Tree left left right left right right left left left right right right

Podsumowanie Rozdzielanie programu na kilka plików źródłowych Struktury danych definiuj struktury, gdy chcesz zgrupować dane zdefiniuj strukturę, zanim zadeklarujesz zmienną jej typu dostęp do składowych uzyskuje się przy użyciu operatora. (kropka) operator -> służy do odwoływania się do składowej struktury wskazywanej zmienną wskaźnikową przykładowe złożone struktury danych: lista, drzewo