Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- class Trojkat
- {
- double a, b, c;
- double sort_a, sort_b, sort_c; /* żeby nie zmieniać przy wypisywaniu kolejności zmiennych
- po posortowaniu potrzebujemy kopię - jeśli Cię to nie insteresuje,
- możesz usunąć te zmienne i pracować na oryginalnych zmiennych a, b, c.
- */
- void sortuj_boki(); /* do łatwego sprawdzenia, czy prostokątny */
- void zamien(double &x, double &y); /* do posortowania */
- public:
- Trojkat();
- void wprowadz();
- void wypisz();
- bool czy_prostokatny();
- };
- int main()
- {
- Trojkat trojkat;
- unsigned n;
- std::cout<<"Podaj liczbe trojkatow:\t";
- std::cin>>n;
- for(unsigned i = 1; i <= n; ++i)
- {
- std::cout<<i<<". trojkat.\n";
- trojkat.wprowadz();
- trojkat.wypisz();
- }
- return 0;
- }
- Trojkat::Trojkat()
- {
- a = 0;
- b = 0;
- c = 0;
- }
- void Trojkat::zamien(double &x, double &y)
- {
- double z = x;
- x = y;
- y = z;
- }
- void Trojkat::sortuj_boki()
- {
- sort_a = a;
- sort_b = b;
- sort_c = c;
- if(sort_a > sort_b) zamien(sort_a, sort_b);
- if(sort_b > sort_c) zamien(sort_b, sort_c);
- if(sort_a > sort_b) zamien(sort_a, sort_b);
- }
- void Trojkat::wprowadz()
- {
- std::cout<<"Podaj pierwszy bok:\t";
- std::cin>>a;
- std::cout<<"Podaj drugi bok:\t";
- std::cin>>b;
- std::cout<<"Podaj trzeci bok:\t";
- std::cin>>c;
- }
- void Trojkat::wypisz()
- {
- std::cout<<"Trojkat o bokach "<<a<<", "<<b<<", "<<c;
- if(czy_prostokatny()) std::cout<<" jest prostokatny.\n";
- else std::cout<<" nie jest prostokatny.\n";
- }
- bool Trojkat::czy_prostokatny()
- {
- sortuj_boki();
- if(sort_a*sort_a + sort_b*sort_b == sort_c*sort_c) return true;
- else return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement