Facebook
From Small Kangaroo, 2 Months ago, written in C++.
Embed
Download Paste or View Raw
Hits: 98
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5.  
  6. int det(int a[3][3])
  7. {
  8.   int W1 = (
  9.             (a[0][0] * a[1][1] * a[2][2]) +
  10.             (a[0][1] * a[1][2] * a[2][0]) +
  11.             (a[0][2] * a[1][0] * a[2][1])
  12.           )
  13.           -
  14.           (
  15.             (a[0][1] * a[1][0] * a[2][2]) +
  16.             (a[0][0] * a[1][2] * a[2][1]) +
  17.             (a[0][2] * a[1][1] * a[2][0])
  18.           );
  19.      return W1;
  20. }
  21.  
  22. int det2(int b[3][3])
  23. {
  24.     int W2 = (
  25.             (b[0][0] * b[1][1] * b[2][2]) +
  26.             (b[0][1] * b[1][2] * b[2][0]) +
  27.             (b[0][2] * b[1][0] * b[2][1])
  28.           )
  29.           -
  30.           (
  31.             (b[0][1] * b[1][0] * b[2][2]) +
  32.             (b[0][0] * b[1][2] * b[2][1]) +
  33.             (b[0][2] * b[1][1] * b[2][0])
  34.           );
  35.  
  36.     return  W2;
  37. }
  38.  
  39. int det3(int c[3][3])
  40. {
  41.     int W3 = (
  42.             (c[0][0] * c[1][1] * c[2][2]) +
  43.             (c[0][1] * c[1][2] * c[2][0]) +
  44.             (c[0][2] * c[1][0] * c[2][1])
  45.           )
  46.           -
  47.           (
  48.             (c[0][1] * c[1][0] * c[2][2]) +
  49.             (c[0][0] * c[1][2] * c[2][1]) +
  50.             (c[0][2] * c[1][1] * c[2][0])
  51.           );
  52.  
  53.     return  W3;
  54. }
  55.  
  56.  
  57.  
  58.  
  59. int main()
  60. {
  61.     ifstream plik;
  62.     ofstream plikZapis;
  63.     plik.open("dane.txt");
  64.     plikZapis.open("wynik.txt");
  65.     int x1,x2,x3,x4,y1,y2,y3,y4;
  66.  
  67.     while( !plik.eof() )
  68.     {
  69.         plik >> x1 >> y1 >> x2 >> y2 >> x3 >> y3 >> x4 >> y4;
  70.     }
  71.  
  72.     int tab[3][3] = {x1,y1,1,
  73.                      x2,y2,1,
  74.                      x4,y4,1};
  75.  
  76.     int tab2[3][3] = {x2,y2,1,
  77.                       x3,y3,1,
  78.                       x4,y4,1};
  79.  
  80.     int tab3[3][3] = {x3,y3,1,
  81.                       x1,y1,1,
  82.                       x4,y4,1};
  83.  
  84.     if(det(tab) < 0 && det2(tab2) < 0 && det3(tab3) < 0 ) plikZapis << "Punkt D znajduje sie w trojkacie.";
  85.     if(det(tab) > 0 && det2(tab2) > 0 && det3(tab3) > 0 ) plikZapis << "Punkt D znajduje sie w trojkacie.";
  86.     if(det(tab) == 0 || det2(tab2) == 0 || det3(tab3) == 0 ) plikZapis << "Punkt D znajdusie sie na jednym z odcinkow trojkata.";