Jak napisać program, który rozpozna jaka to figura czworoboczna? [C++]
Ostatnio zmodyfikowano 2018-11-26 19:18
karol_k Temat założony przez niniejszego użytkownika |
Jak napisać program, który rozpozna jaka to figura czworoboczna? [C++] » 2018-11-25 10:05:17 Mam takie zadanko: -program wczytuje x,y kątów czworokąta od lewego dolnego kolejno: x1,y1,x2,y2,...,x4,y4; -później program ma rozpoznać jaka to figura: K - kwadrat P - prostokąt R - romb C - inna czworoboczna figura -na koniec oblicza jej pole; Oto przykład jaki podano w tym zadaniu: Dla danych wejściowych: poprawnym wynikiem jest: 0 4 7 4 7 0 0 0 P 28
Do końca nie wiem jak się za to zabrać. Wystarczyłoby nawet rozpoznać czy figura jest kwadratem, ale nie do końca chce mi to działać :/ Kodu nie pokaże, bo i tak tam nic nie napisałem, oprócz totalnych głupot (nie chce się skompromitować).
Z góry dziękuję za pomoc. |
|
pekfos |
» 2018-11-25 14:46:06 Wyznacz długości krawędzi oraz to, czy wszystkie kąty są prostopadłe. Kąt A-B-C jest prostopadły, gdy iloczyn skalarny wektorów AB i BC jest zerowy. Jeśli wszystkie kąty są prostopadłe, masz kwadrat/prostokąt, jeśli nie, to masz romb/inne. Dalej zidentyfikujesz na podstawie długości krawędzi. |
|
karol_k Temat założony przez niniejszego użytkownika |
Pytanie » 2018-11-25 20:29:26 Czyli mam zrobić taki warunek?: if(boka*bokb*cos(90)==0) |
|
pekfos |
» 2018-11-25 21:31:49 |
|
mateczek |
» 2018-11-26 15:04:38 Jeśli wektory są prostopadłe to mają tak jakby "przeciwne" współrzędne np Wektor (1,3) jest prostopadły do wektora (-3,1) teraz przykład dla trzech punktów podanych w kolejności A (0,0) B (1,3) C (-5,1) Wektor AB = (1-0,3-0)= (1,3) Wektor BC (-5 -1,3-1) = (-6, 2) Teraz wystarczy przemnożyć if( AB.x * BC.x + AB.y * BC.y == 0 ) { } |
|
karol_k Temat założony przez niniejszego użytkownika |
Odp » 2018-11-26 19:18:54 Muszę to zrobić bez wektorów, ale sobie już poradzę. |
|
« 1 » |