Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.

Podobne prezentacje


Prezentacja na temat: "C++ mgr inż. Tomasz Turba Politechnika Opolska 2016."— Zapis prezentacji:

1 C++ mgr inż. Tomasz Turba Politechnika Opolska 2016

2 Zajęcia [05.04.2016]  Przestrzenie nazw i zagnieżdżanie  Struktury  Dane jak tabela  Struktura w funkcji  Dostęp do struktury wskaźnikiem  Zadanie domowe

3 Przestrzenie nazw  Zalety:  Mogą zastąpić dużo zmiennych statycznych i globalnych  Przy tworzeniu biblioteki funkcji, klas, nagłówka namespace twoja_nazwa { //tutaj możemy tworzyć zmienne, funkcje, struktury } using twoja_nazwa; //wywołanie wszystkich definicji twoja_nazwa::metoda(); //inicjalizacja

4 #include namespace pole_figur { const double PI = 3.14; double kolo(const double PI, short r) { return(PI * r * r); } int main() { using std::cout; using std::endl; using namespace pole_figur; double r; cout << "Podaj promien kola [R]: "; std::cin >> r; cout << "\nPole kola = " << pole_figur::kolo(PI, r) << endl; getch(); return 0; }

5 Struktury – WTF?  Struktura danych ułatwia zorganizowanie danych w wygodniejszy sposób niż tabela.  Dostęp do danych obiektowy.  Kropka – dostęp do danych (nowe frameworki = autopodpowiedź) struct uzers //nazwa struktury { //opis struktury std::string imie; std::string haslo; short wiek; std::char plec; };

6 #include using namespace std; struct uZers { std::string imie; std::string nazwisko; std::string haslo; short wiek; char* plec; }; int main() { uZers TomaszTurba = { "Tomek", "Turba", "passw0rd", 30, "M" }; //LUB uZers KevinMittnick; KevinMittnick.imie="Kevin"; KevinMittnick.nazwisko="Mittnick"; KevinMittnick.haslo="hackTEHplanet!"; KevinMittnick.wiek=45; KevinMittnick.plec="M"; cout << "Lista uZers:" << endl << "Imie: " << TomaszTurba.imie << endl << "Imie: " << KevinMittnick.imie; getch(); return(0); }

7 Dynamiczne wypełnianie struktur  Zgodnie z deklaracją  Dostęp jak w tablicy  Tworzenie OBIEKTU struktury  Przypisanie struktury: struct panie { short grupa; short wiek; }; … panie Marta, Ania; Marta.grupa=13; Marta.wiek=20; Marta=Ania;

8 #include using namespace std; struct uZers { std::string imie; std::string nazwisko; }; int main() { uZers Uzytkownicy[3]; for(short i=0;i<3;i++) { cout << "Podaj imie: "; cin >> Uzytkownicy[i].imie; cout << "Podaj nazwisko: "; cin >> Uzytkownicy[i].nazwisko; } cout << "Wprowadzone dane: " << endl; for(short i=0;i<3;i++) { cout << "Uzytkownik " << i+1 imie: " << Uzytkownicy[i].imie << ", nazwisko: " << Uzytkownicy[i].nazwisko << endl; } getch(); return(0); }

9 Funkcje w strukturze Wyniki Pitagoras(Trojkat pobierzboki); void WyswietlWyniki(const Wyniki wynik);

10 Wskaźniki w strukturze struktura * wskaznik =& dane; wskaznik->liczba;

11 Zadanie domowe  Project Manager poprosił Cię o napisanie programu dla firmy Asseco który będzie pomagał liczyć przepracowane godziny N-pracowników określając ich indywidualne wynagrodzenie (iloczyn stawka*godziny). Wykorzystaj wiedzę nt. struktur, funkcji i opcjonalnie wskaźników.  Wprowadź dane pracowników  Pokaż wszystkie dane pracowników wraz z obliczeniem wynagrodzenia (funkcją)  Czekaj na wybór widoku przez użytkownika dopóki nie wciśnie „4” = exit  Widoki:  1=Wiek – sortowanie pracowników po wieku (od najstarszego)  2=Stawka – sortowanie pracowników po wysokości stawki (od najwyższej)  3=Przepracowane – sortowanie pracowników po ilości przepracowanych godzin (od największej)  4=Koniec = exit  Wyświetl sortowanie i wróć do menu lub zakończ if getchar(‚4’);

12  KROK 0: Podaj liczbę pracowników do wprowadzenia: N (max=3)  KROK 1: Struktura pracownika = string Imię, string Nazwisko, short Wiek, float/real Stawka, short Przepracowana_liczba_godzin.  KROK 2: Podaj dane pracownika i++ = (…)  … Podaj dane pracownika i<n = (…)  KROK 3: Funkcją wypisz na ekranie wszystkich pracowników w postaci:  Pracownik: Imię Nazwisko  Wiek: XX  Stawka: YY.ZZ PLN  Przepracowano: HH godzin  Wynagrodzenie: YYY.ZZ PLN (stawka*przepracowano)  KROK 4: Czekaj na wybór widoku użytkownika:  Wybierz sortowanie:  1 = WIEK  2 = STAWKA  3 = PRZEPRACOWANE  4 = KONIEC  KROK 5: Wypisz widok z kroku 4 na ekranie i powróć do KROK 4  KROK 6 = Jeżeli wybrano „4” = exit();

13 Klasa

14 Metoda

15 Konstruktor i destruktor

16 Zadanie domowe


Pobierz ppt "C++ mgr inż. Tomasz Turba Politechnika Opolska 2016."

Podobne prezentacje


Reklamy Google