diff --git a/7-Enum/1-Switch/main.cpp b/7-Enum/1-Switch/main.cpp new file mode 100644 index 0000000..06eb438 --- /dev/null +++ b/7-Enum/1-Switch/main.cpp @@ -0,0 +1,89 @@ +/* +Enum jest to typ wyliczeniowy +Pozwala na zadeklarowanie stałych liczbowych +Deklaracja enum występuje przed funkcją main() +Wartości enum używamy już potem w funkcji main() +enum kończy się średnikiem + + SCHEMAT + enum nazwa { + przyklad1 + przyklad2 + przyklad3 + }; + + USTAWIANIE DOMYSLNYCH WARTOSCI + enum nazwa { + przyklad0 = 7 //DOMYŚLNA WARTOŚĆ 7 + przyklad1 //DOMYSLNA WARTOSC 8 + przyklad2 //DOMYSLNA WARTOSC 9 + }; + +ZAD. Zadanie w switchu +Przedstawic uzytkownikowi pola jakich figur moga zostac obliczone +-Kwadrat o boku a +-Prostokat o bokach a, b +-Trojkat o boku a i wysokosci h +-Pole kola o promienu r + +Uzytkownik wybiera ktore pole chce policzyc. +W zaleznosci od wyboru popros uzytkownika o wprowadzenie odpowiednich danych, sprawdzic czy dlugosci sa liczbami dodatnimi +jezeli nie to wyswietl komunikat ze dlugosci bokow musza byc liczbami dodatnimi +*/ + +#include +#include + +using namespace std; + +int main() { + int wybor; + double a, b, h, r; + + cout << "Wybierz: Kwadrat(1), Prostokat(2), Trojkat(3), Koleso(4)"; + cin >> wybor; + + switch (wybor) { + case 1: + cout << "Podaj bok kwadratu (a): "; + cin >> a; + if (a <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Kwadratu wynosi = " << a * a; + } + break; + case 2: + cout << "Podaj boki prostokata (a, b): "; + cin >> a >> b; + + if (a <= 0 || b <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Prostokata wynosi = " << a * b; + } + break; + case 3: + cout << "Podaj bok i wysokosc trojkata (a, h): "; + cin >> a >> h; + if (a <= 0 || h <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole trojkata wynosi = " << (a * h)/2; + } + break; + case 4: + cout << "Podaj promien kola (r): "; + cin >> r; + if (r <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Kolesa wynosi = " << M_PI * (r * r); + } + break; + default: + cout << "Niepoprawy wybor"; + } + + return 0; +} diff --git a/7-Enum/2-Enum/main.cpp b/7-Enum/2-Enum/main.cpp new file mode 100644 index 0000000..ba1833e --- /dev/null +++ b/7-Enum/2-Enum/main.cpp @@ -0,0 +1,105 @@ +/* +Enum jest to typ wyliczeniowy +Pozwala na zadeklarowanie stałych liczbowych +Deklaracja enum występuje przed funkcją main() +Wartości enum używamy już potem w funkcji main() +enum kończy się średnikiem + + SCHEMAT + enum nazwa { + przyklad1 + przyklad2 + przyklad3 + }; + + USTAWIANIE DOMYSLNYCH WARTOSCI + enum nazwa { + przyklad0 = 7 //DOMYŚLNA WARTOŚĆ 7 + przyklad1 //DOMYSLNA WARTOSC 8 + przyklad2 //DOMYSLNA WARTOSC 9 + }; + +ZAD. Zadanie w switchu +Przedstawic uzytkownikowi pola jakich figur moga zostac obliczone +-Kwadrat o boku a +-Prostokat o bokach a, b +-Trojkat o boku a i wysokosci h +-Pole kola o promienu r + +Uzytkownik wybiera ktore pole chce policzyc. +W zaleznosci od wyboru popros uzytkownika o wprowadzenie odpowiednich danych, sprawdzic czy dlugosci sa liczbami dodatnimi +jezeli nie to wyswietl komunikat ze dlugosci bokow musza byc liczbami dodatnimi +*/ + +#include +#include + +using namespace std; + +//DEFINICJA TYPU WYLICZENIOWEGO +enum figury { + kwadrat = 1, + prostokat, + trojkat, + kolo +}; + +int main() { + int wybor; + double a, b, h, r; + + cout << "Wybierz: " << endl; + cout << kwadrat << " - Kwadrat\n"; + cout << prostokat << " - Prostokat\n"; + cout << trojkat << " - Trojkat\n"; + cout << kolo << " - Kolo\n"; + cout << "Twoj Wybor: "; + cin >> wybor; + + //static_cast(wybor) - TO RZUTOWANIE (KONWERSJA) TYPU INT NA FIGURY. + //Uzywamy static_cast by bezpiecznie przeksztalcic liczbe na konkretna wartosc wyliczeniowa figury + + switch (static_cast(wybor)) { + case kwadrat: + cout << "Podaj bok kwadratu (a): "; + cin >> a; + if (a <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Kwadratu wynosi = " << a * a; + } + break; + case prostokat: + cout << "Podaj boki prostokata (a, b): "; + cin >> a >> b; + + if (a <= 0 || b <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Prostokata wynosi = " << a * b; + } + break; + case trojkat: + cout << "Podaj bok i wysokosc trojkata (a, h): "; + cin >> a >> h; + if (a <= 0 || h <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole trojkata wynosi = " << (a * h)/2; + } + break; + case kolo: + cout << "Podaj promien kola (r): "; + cin >> r; + if (r <= 0) { + cout << "Dlugosc musi byc dodatnia"; + } else { + cout << "Pole Kolesa wynosi = " << M_PI * (r * r); + } + break; + default: + cout << "Niepoprawy wybor"; + } + + return 0; +} diff --git a/8-Funkcje/1/main.cpp b/8-Funkcje/1/main.cpp new file mode 100644 index 0000000..ef6a437 --- /dev/null +++ b/8-Funkcje/1/main.cpp @@ -0,0 +1,3 @@ +/* + +*/ \ No newline at end of file