Computer >> 컴퓨터 >  >> 프로그램 작성 >> C 프로그래밍

C 점이 X축 또는 Y축과 평행한지 확인하는 프로그램

<시간/>

n개의 포인트가 주어지면 그래프에 따라 포인트가 x축 또는 y축에 평행하거나 축이 없는지 확인해야 합니다. 그래프는 축을 따라 직각으로 측정한 두 변수 간의 관계를 나타내는 그림입니다. 평행선은 철도 트랙이 서로 평행하듯이 모든 지점에서 동일한 거리를 갖는 동일한 선입니다.

그래서 우리는 점이 x축에 평행한지 아니면 y축이 좌표와 축 사이의 거리가 모든 점에서 동일하다는 것을 의미하는지 찾아야 합니다.

축이란 무엇입니까

그래프는 두 축의 x축과 y축을 따라 측정되며 두 축은 모두 포인트 값 0에서 시작하여 특정 변수 값에 따라 확장됩니다. 두 축이 합쳐져 직각삼각형과 같은 도형을 이룬다.

간단한 도식 표현을 통해 명확하게 이해합시다 -

C 점이 X축 또는 Y축과 평행한지 확인하는 프로그램

아래에 사용된 접근 방식은 다음과 같습니다. -

  • 먼저 그래프의 좌표를 (x, y) 좌표로 가져옵니다.
  • 그런 다음 어느 축과 평행한지 확인합니다.
  • y 좌표가 모두 같으면 그래프가 x축과 평행합니다.
  • 그렇지 않으면 x 좌표가 같으면 그래프가 y축에 평행합니다.
  • 그렇지 않으면 그래프가 축과 평행하지 않습니다.

알고리즘

Start
In function void parallel (int n, int a[][2])
   Step 1-> Declare and initialize i and j
   Step 2-> Declare bool x = true, y = true
   Step 3-> Loop For i = 0 and i < n – 1 and i++
   Loop For j = 0 and j < 2 and j++
      If a[i][0] != a[i + 1][0] then,
         Set x as false
      If a[i][1] != a[i + 1][1] then,
         Set y as false
      End loop
   End loop
   Step 4-> If x then,
      Print "parallel to X Axis\n"
   Step 5-> Else if y
      Print "parallel to Y Axis\n"
   Step 6-> Else
      Print "parallel to X and Y Axis\n"
In function int main()
   Step 1-> Declare an array “a[][2]”
   Step 2-> Declare and Initialize n as sizeof(a) / sizeof(a[0])
   Step 3-> Call function parallel(n, a)

예시

#include <stdio.h>
// To check the line is parellel or not

void parallel(int n, int a[][2]) {
   int i, j;
   bool x = true, y = true;
   // checking for parallel to X and Y
   // axis condition
   for (i = 0; i < n - 1; i++) {
      for (j = 0; j < 2; j++) {
         if (a[i][0] != a[i + 1][0])
            x = false;
         if (a[i][1] != a[i + 1][1])
            y = false;
      }
   }
   // To display the output
   if (x)
      printf("parallel to X Axis\n" );
   else if (y)
      printf("parallel to Y Axis\n" );
   else
      printf("parallel to X and Y Axis\n" );
}
int main() {
   int a[][2] = { { 2, 1 },
   { 3, 1 },
   { 4, 1 },
   { 0, 1 } };
   int n = sizeof(a) / sizeof(a[0]);
   parallel(n, a);
   return 0;
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

parallel to Y Axis