Kod05 03

Z Repozytorium Wiedzy
Skocz do: nawigacja, szukaj
#include <iostream>
using namespace std;
int jaki_trojkat (int a, int b, int c);
int main() {
	int a,b,c,rodzaj;
	a=b=c=0;
	do {
		cout << "Podaj dlugosc boku a: ";
		cin >> a;
		cout << "Podaj dlugosc boku b: ";
		cin >> b;
		cout << "Podaj dlugosc boku c: ";
		cin >> c;
		if (a<=0 or b<=0 or c<=0) cout << "Co najmniej jeden z bokow ma dlugosc rowna lub mniejsza od 0.\nPodaj dlugosci wieksze od 0.\n";
	} while (a<=0 or b<=0 or c<=0);
	rodzaj = jaki_trojkat(a, b, c);
	if (rodzaj==1) cout << "Mamy trojkat rownoboczny!\n";
	if (rodzaj==2) cout << "Mamy trojkat zdegenerowany, rownoramienny!\n";
	if (rodzaj==3) cout << "Mamy trojkat zdegenerowany!\n";
	if (rodzaj==4) cout << "Mamy trojkat rownoramienny!\n";
	if (rodzaj==5) cout << "Mamy trojkat prostokatny!\n";
	if (rodzaj==6) cout << "Mamy trojkat!\n";
	if (rodzaj==0) cout << "Kod bledu 0 (brak trojkata)\n";	
	return 0;
}

int jaki_trojkat (int a, int b, int c) {
		if (a==b and b==c) 
		{
		 return 1;
		} 
		else 
		  if ((a+b==c or b+c==a or a+c==b) and (((a==b or b==c or c==a )and (a+b>=c and b+c>=a and a+c>=b)))) 
		  {
		  return 2;
		  }
			else
			  if (a+b==c or b+c==a or a+c==b) 
			  {
			  return 3;
			  }
				else
				  if ((a==b or b==c or c==a )and (a+b>=c and b+c>=a and a+c>=b)) 
				  {
				  return 4;
				  }
					else
					  if ((((a*a)+(b*b))==(c*c)) or (((a*a)+(c*c))==(b*b)) or (((c*c)+(b*b))==(a*a))) 
					  {
					  return 5;
					  }
					    else
					       if (a+b>c and b+c>a and a+c>b)
					       {
   					       return 6;
					       } else return 0;
}
Zobacz: Licencja kodów źródłowych