Computer >> Máy Tính >  >> Lập trình >> C ++

Kiểm tra xem một điểm nằm bên trong, bên ngoài hay trên parabol trong C ++

Giả sử, một parabol đã cho (tọa độ đỉnh (h, k) và khoảng cách từ tiêu điểm và đỉnh là a), một điểm khác cũng được cho trước. Chúng ta phải tìm xem điểm đó có nằm bên trong parabol hay không. Để giải nó, chúng ta phải giải phương trình sau cho điểm đã cho (x, y)

\ left (y-k \ right) ^ 2 =4a \ left (x-h \ right)

Nếu kết quả nhỏ hơn 0, thì giá trị này hiện bên trong parabol nếu nó bằng 0 thì nó nằm trên parabol và nếu lớn hơn 0 thì ở bên ngoài parabol.

Ví dụ

#include <iostream>
#include <cmath>
using namespace std;
int isInsideParabola(int h, int k, int x, int y, int a) {
   int res = pow((y - k), 2) - 4 * a * (x - h);
   return res;
}
int main() {
   int x = 2, y = 1, h = 0, k = 0, a = 4;
   if(isInsideParabola(h, k, x, y, a) > 0){
      cout <<"Outside Parabola";
   }
   else if(isInsideParabola(h, k, x, y, a) == 0){
      cout <<"On the Parabola";
   } else{
      cout <<"Inside Parabola";
   }
}

Đầu ra

Inside Parabola