Podstawy programowania

Slides:



Advertisements
Podobne prezentacje
C++ wykład 2 ( ) Klasy i obiekty.
Advertisements

Język C/C++ Funkcje.
Wstęp do programowania
Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 2 Wojciech Pieprzyca.
Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 4 Wojciech Pieprzyca.
Programowanie obiektowe
Programowanie obiektowe
Programowanie obiektowe
Programowanie obiektowe
Programowanie obiektowe PO PO - LAB 3 Wojciech Pieprzyca.
Prowadzący: mgr inż. Elżbieta Majka
Static, const, volatile.
Dziedziczenie. Po co nam dziedziczenie? class osoba { char * imie, char * imie, * nazwisko; * nazwisko;public: void wypisz_imie(); void wypisz_imie();
Podstawy informatyki Informatyka stosowana Prowadzący: Grzegorz Smyk
Wskaźniki. Definiowanie wskaźników Wskaźnik może wskazywać na obiekt dowolnego typu. int * w; char * Wsk_Znak; float * Wskaz_Real; Przykłady: Wskaźnik.
Struktury.
Tablice.
C++ wykład 2 ( ) Klasy i obiekty.
Podstawy programowania PP – WYK3 Wojciech Pieprzyca.
Podstawy programowania PP – WYK2 Wojciech Pieprzyca.
Podstawy programowania PP – LAB6 Wojciech Pieprzyca.
Podstawy programowania PP – LAB4 Wojciech Pieprzyca.
Podstawy programowania PP – LAB5 Wojciech Pieprzyca.
nowe operatory & . (kropka) * operator rzutowy -> , (przecinek)
Klasy w C++. Deklaracja klasy class NazwaTwojejKlasy { //w tym miejscu piszemy definicje typów, //zmienne i funkcje jakie mają należeć do klasy. }; //tutaj.
Podstawy programowania
Metody Programowania Wykład
Podstawy programowania
Podstawy informatyki 2013/2014
Wskaźnik może wskazywać na obiekt dowolnego typu. int * w; char * Wsk_Znak; float * Wskaz_Float; Przykład: Wskaźnik przechowuje adres obiektu wskazanego.
struct nazwa { lista składników }; Dostęp do składowych struktury Nazwa_Zmniennej_Strukturalnej. Nazwa_Składnika.
Podstawy programowania
Wczytywanie danych z klawiatury, komentarze, zmienne.
Informatyka I Wykład 10 WSKAŹNIKI I ADRESY Jerzy F. Kotowski.
Podstawy informatyki Struktury, operatory, wyjątki
T: Różnice pomiędzy programowaniem strukturalnym a obiektowym
Łódź, 3 października 2013 r. Katedra Analizy Nieliniowej, WMiI UŁ Podstawy Programowania Złożona składnia języka C++
Jerzy F. Kotowski1 Informatyka I Wykład 11 STRUKTURY I UNIE.
Podstawy programowania
Jerzy F. Kotowski1 Informatyka I Wykład 8 STRUKTURA PROGRAMU n Funkcje n Klasy zmiennych n Projekt.
Podstawy programowania w języku C i C++
Jerzy F. Kotowski1 Informatyka I Wykład 14 DEKLARATORY.
Algorytmy rekurencyjne - przykład
PORTAL Z KARTKAMI ŚWIĄTECZNYMI
Programowanie obiektowe
Programowanie obiektowe Wykład 3 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/21 Dariusz Wardowski.
OBIEKTY Utworzenie obiektu var osoba = { „imię”:”Anna”,
PWSZ Gniezno // codefly 2009 Łukasz Tomczak
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++
Programowanie strukturalne i obiektowe C++ Przeładowanie operatorów Robert Nowak.
K URS JĘZYKA C++ – WYKŁAD 1 ( ) Łagodne wprowadzenie do języka C++
K URS JĘZYKA C++ – WYKŁAD 2 ( ) Klasy i obiekty.
Programowanie strukturalne i obiektowe C++ Powtórzenie wiadomości z C++ Robert Nowak.
Przeładowanie funkcji. Dotychczas wiedzieliśmy, że: w danym zakresie ważności może być tylko jedna funkcja o danej nazwie. Kompilator języka C++ daje.
Komendy SQL do pracy z danymi
Tablice Zajęcia 8. Definicja Tablica (z ang. array) jest zmienną złożoną, która składa się z ciągu elementów tego samego typu. W pamięci komputera tablica.
Relacja (ang.relation) Po podzieleniu danych na tabele i zdefiniowaniu pól kluczy podstawowych trzeba wprowadzić do systemu bazy danych informacje na temat.
Mapa STL – C++. Problem polega na tym, że najczęściej chcielibyśmy przechowywać w zbiorze elementy jakiegoś bardziej złożonego typu, których on nie będzie.
Podstawy informatyki Struktury Łukasz Sztangret Katedra Informatyki Stosowanej i Modelowania Prezentacja przygotowana w oparciu o materiały Danuty Szeligi.
K URS JĘZYKA C++ – WYKŁAD 3 ( ) Przenoszenie Składowe statyczne Funkcje wbudowane Argumenty domyślne.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Wprowadzenie do programowania obiektowego
nowe operatory & . (kropka) * operator rzutowy -> , (przecinek)
Zapis prezentacji:

Podstawy programowania PP – WYK6 Wojciech Pieprzyca

Struktury Struktura łączy w sobie kilka zmiennych, które mogą różnić się typami danych. Zazwyczaj zmienne te związanych są ze sobą w jakiś logiczny sposób. Do struktury możemy odwoływać się jako do całości. struct osoba { char imie[20]; char nazwisko[30]; char adres[40]; int wiek; float pensja; }; UWAGA! Deklaracja struktury kończy się średnikiem!

Struktury Strukturę można traktować jako nowy typ danych tzn. możliwe będzie utworzenie zmiennych typu strukturalnego np. jeśli chcemy posiadać zmienną w której będzie można przechować informacje na temat danej osoby np. pracownika to możemy taką zmienną zadeklarować w następujący sposób: osoba pracownik; Inicjalizacja zmiennej strukturalnej danymi może odbyć się już w fazie deklaracji takiej zmiennej podobnie jak to miało miejsce w przypadku tablic: osoba pracownik = {”Jan”,”Kowalski”,”Gliwice”, 28,4567.34};

Struktury Możliwe jest także inicjalizowanie każdego z pól zmiennej strukturalnej z osobna: strcpy(pracownik.imie, ”Jan”); strcpy(pracownik.nazwisko, ”Kowalski”); strcpy(pracownik.adres, ”Gliwice”); pracownik.wiek = 28; pracownik.pensja = 4567.34; Oczywiście możemy utworzyć więcej niż jedną zmienną typu strukturalnego: osoba pracownik2 = {”Marek”,”Nowak”,”Pszczyna”, 33,2345.34};

Struktury A nawet całej tablicy zmiennych strukturalnych: osoba pracownicy[100]; strcpy(pracownicy[0].imie, ”Jan”); strcpy(pracownicy[0].nazwisko, ”Kowalski”); strcpy(pracownicy[0].adres, ”Gliwice”); pracownik.wiek = 28; pracownik.pensja = 4567.34;

Struktury W strukturze mogą znaleźć się także funkcje nazywane wówczas metodami. struct osoba { char imie[20]; char nazwisko[30]; char adres[40]; int wiek; float pensja; void wyswietl() cout << "Imie: " << imie << endl; cout << "Nazwisko: " << nazwisko << endl; cout << "Adres: " << adres << endl; cout << "Wiek:" << wiek << endl; cout << "Pensja" << pensja; } };

Struktury Metodę umieszczoną w strukturze można wywołać posługując się operatorem kropki: pracownik.wyswietl(); Konstruktor Konstruktor to metoda (funkcja) w strukturze danych posiadająca taką samą nazwę jak nazwa struktury. Jeżeli obiekt nie ma jawnie zadeklarowanego konstruktora to jest on tworzony automatycznie w czasie kompilacji. Konstruktor jest wywoływany w czasie tworzenia obiektu.

Struktury Konstruktor nie zwraca żadnego typu i w czasie jego deklaracji nie podajemy żadnego typu. Przykład konstruktora: osoba(char imie[20], char nazwisko[30], char adres[40], int wiek, float pensja) { strcpy(this->imie,imie); strcpy(this->nazwisko,nazwisko); strcpy(this->adres,adres); this->wiek = wiek; this->pensja = pensja; }

Struktury Utworzenie zmiennej strukturalnej z wykorzystaniem konstruktora: osoba pracownik2("Jan","Kowalski","Gliwice", 28,4567.34);

Operacje wej/wyj Operacje wejścia/wyjścia związane są z odczytem i zapisem danych z/do pliku. Wykorzystuje się w tym celu dwa strumienie: - wejściowy (input stream – klasa ifstream) - wyjściowy (output stream – klasa ofstream). Można także użyć uniwersalnej klasy, służącej zarówno jako strumień wejściowy i wyjściowy o nazwie fstream. Działania na plikach z użyciem strumieni wymagają dołączenia biblioteki fstream.h.

Operacje wej/wyj Plik może zostać otwarty w różnych trybach. Najczęściej spotykane są: - ios::in – otwarcie pliku do odczytu, - ios::out – otwarcie pliku do zapisu, - ios::in | ios::out – otwarcie pliku jednocześnie do odczytu i zapisu, - ios::app – otwarcie pliku do dopisywania.

Operacje wej/wyj Przykład otwarcia pliku do zapisu fstream plik(”test.txt”,ios::out); if (!plik) //tutaj sprawdzamy czy plik został //poprawnie otwarty { cout << "Blad otwarcia pliku"; getch(); return 0; }

Operacje wej/wyj plik << "Ksiezyc miodem ocieka na ustach szalonych\n" "Zarloczne sa tej nocy ogrody i domy\n" "Gwiazdy do pszczol tanczacych staly się podobne\n" "Przelewa sie w altanach zlote swiatlo miodowe\n" "Bo z nieba opadajac lagodnie na ziemie\n" "W plastry miodu lacza ksiezyca promienie\n" "I skrycie mi sie roi slodka awantura\n" "Drze przed zadlem ognistym tej pszczoly \n" "Co w rece mi promieni zwodne rzucila swiatlo\n" "I swoj miod ksiezycowy zebrala z rozy wiatrow\n"; plik.close();

Operacje wej/wyj Przykład otwarcia pliku do odczytu fstream plik(”test.txt”,ios::in); if (!plik) //tutaj sprawdzamy czy plik został //poprawnie otwarty { cout << "Blad otwarcia pliku"; getch(); return 0; }

Operacje wej/wyj char linia[80]; //odczyt znak po znaku while (!plik.eof()) //eof() – sprawdza czy to już //koniec pliku { plik.getline(linia); //pobiera linie tekstu z pliku cout << linia << endl; } plik.close(); getch();