Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <cstdlib>
- #include <iostream>
- #include <ctype.h>
- #include <cstring>
- #include <cmath>
- using namespace std;
- int main()
- {
- char ciag[100];
- int tab[10]={NULL};
- cin.getline(ciag, 100);
- int licznik=0,tmp=0, pomoc;
- for (int i=0; i<strlen(ciag); i++)
- if (!isdigit(ciag[i]) && !isspace(ciag[i]))
- {
- tmp=1;
- break;
- }
- else if (isspace(ciag[i]))
- {
- licznik++;
- }
- if (!tmp && (licznik==5 || licznik==7) )
- {
- if (licznik==5)
- pomoc=0;
- else
- pomoc=1;
- tmp = 0;
- int licz = licznik+1;
- int mn = 1;
- for (int i = strlen(ciag)-1; i >= 0; i--)
- {
- if (!isspace(ciag[i]))
- {
- tmp+=(ciag[i]-48)*mn;
- mn*=10;
- }
- else
- {
- tab[licznik--] = tmp;
- tmp=0;
- mn=1;
- }
- }
- tab[licznik--] = tmp;
- //for (int i = 0; i < licz; i++)
- //cout << tab[i] << ", ";
- }
- else
- cout<<"Nie jestes zabawny xD!";
- // A B C D
- // tab 0 1 2 3 4 5 6 7
- // 3 4 0 0 3 0
- // 3 4 0 0 3 0 0 4
- float a,b,c,d,e,f;
- int pomoc_1;
- //trojkaty
- if (pomoc==0)
- {
- a=sqrt(pow(tab[0]-tab[2],2) + pow(tab[1]-tab[3],2));
- b=sqrt(pow(tab[2]-tab[4],2) + pow(tab[3]-tab[5],2));
- c=sqrt(pow(tab[0]-tab[4],2) + pow(tab[1]-tab[5],2));
- cout<<a<<endl;
- cout<<b<<endl;
- cout<<c<<endl;
- if ((a+b-0.1<=c && a+b+0.1>=c ) || (a+c-0.1<=b && a+c+0.1>=b) || (c+b-0.1<=a && c+b+0.1>=a))
- cout<<"To nie trojkat :((("<<endl;
- else
- cout<<"To jest trojkat :D"<<endl;
- if (a==b && b==c)
- cout<<"Toz to trojkat rownoboczny !"<<endl;
- if ((a-0.1 <= sqrt(pow(b,2)+pow(c,2)) && a+0.1>=sqrt(pow(b,2)+pow(c,2))) || (b-0.1 <= sqrt(pow(a,2)+pow(c,2)) && b+0.1>=sqrt(pow(a,2)+pow(c,2))) || (c-0.1 <= sqrt(pow(b,2)+pow(a,2)) && c+0.1>=sqrt(pow(b,22)+pow(a,2))))
- {
- cout<<"Toz to trojkat prostokatny !"<<endl;
- }
- if (a!=b && b!=c && c!=a)
- cout<<"Toz to trojkat roznoboczny !"<<endl;
- if ((a==b && a!=c) || (a==c && a!=b) || (b==c && b!=a))
- cout<<"Toz to trojkat rownoramienny !"<<endl;
- }
- //czworokaty
- if (pomoc==1)
- {
- // A B C D
- // tab 0 1 2 3 4 5 6 7
- // 3 4 0 0 3 0
- // 0 0 4 0 4 4 0 4
- a=sqrt(pow(tab[0]-tab[2],2) + pow(tab[1]-tab[3],2));
- b=sqrt(pow(tab[2]-tab[4],2) + pow(tab[3]-tab[5],2));
- c=sqrt(pow(tab[4]-tab[6],2) + pow(tab[5]-tab[7],2));
- d=sqrt(pow(tab[6]-tab[0],2) + pow(tab[7]-tab[1],2));
- e=sqrt(pow(tab[0]-tab[4],2) + pow(tab[1]-tab[5],2));
- f=sqrt(pow(tab[2]-tab[6],2) + pow(tab[3]-tab[7],2));
- cout<<a<<endl;
- cout<<b<<endl;
- cout<<c<<endl;
- cout<<d<<endl;
- if ((a+b+c-0.1<d && a+b+c+0.1>=d ) || (a+d+b-0.1<=c && a+d+b+0.1>=c) || (c+b+a-0.1<=b && c+b+a+0.1>=b) || (c+b+d-0.1<=a && c+b+d+0.1>=a))
- cout<<"Prosze nie podawac co najmniej 3 punktow znajdujacych sie na 1 prostej, dziekuje :)"<<endl;
- else if (b!=c && b!=d && d!=a && c!=a)
- cout<<"Toz to czworokat dziwny"<<endl;
- else
- {
- if (b==c && c==d & d==a)
- {
- if (e-0.1 <= sqrt(pow(b,2)+pow(c,2)) && e+0.1>=sqrt(pow(b,2)+pow(c,2)))
- cout<<"Toz to kwadrat"<<endl;
- else
- cout<<"Toz to romb"<<endl;
- }
- else if ((a==b && b!=c && c==d && d!=a) || (a!=b && b==c && c!=d && d==a))
- cout<<"Toz to deltoid"<<endl;
- else
- {
- if (e-0.1 <= sqrt(pow(b,2)+pow(c,2)) && e+0.1>=sqrt(pow(b,2)+pow(c,2)))
- cout<<"Toz to prostokat"<<endl;
- else
- cout<<"Toz to rownoleglobok"<<endl;
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement