Cpp-Podstawy/7-Enum/1-Switch/main.cpp
2025-05-07 09:51:37 +02:00

89 lines
2.4 KiB
C++

/*
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 <iostream>
#include <cmath>
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;
}