이 문제에서는 직선 위의 두 점 좌표가 주어지며, 이를 활용해 C++로 직선의 기울기를 구하는 프로그램을 작성하는 것이 목표입니다.
문제 설명
주어진 직선 위의 두 점 좌표를 이용하여 해당 직선의 기울기를 계산합니다.
예제로 이해하기
입력
p1(-1, 1), p2(3, 3)
출력
0.5
위 예제에서 점 (-1, 1)과 점 (3, 3)을 지나는 직선의 기울기는 0.5입니다.
해결 접근 방법
직선의 기울기를 구하려면, 직선 위의 임의의 두 점 P1(x1, y1)과 P2(x2, y2)를 이용하는 기하학 공식을 사용하면 됩니다.
기울기(Slope) = (y2 − y1) / (x2 − x1)
즉, y좌표의 변화량을 x좌표의 변화량으로 나눈 값이 바로 기울기입니다.
구현 예제 코드
#include<iostream>
using namespace std;
float calcSlope(float point[2][2]){
float slope = ((point[1][1] - point[0][1]) / (point[1][0] - point[0][0]));
return slope;
}
int main() {
float points[2][2] = {{-1, 1}, {3, 3}};
cout<<"The slope of the line is "<<calcSlope(points);
}
실행 결과
The slope of the line is 0.5
코드 설명
calcSlope() 함수는 2×2 배열 형태로 전달받은 두 점의 좌표를 이용해 기울기 공식을 적용한 뒤 그 값을 반환합니다. main() 함수에서는 두 점 (-1, 1)과 (3, 3)을 배열에 저장하고, calcSlope() 함수를 호출하여 계산된 기울기를 화면에 출력합니다.
참고 사항
x2 − x1이 0이 되는 경우(수직선)에는 분모가 0이 되어 나눗셈 오류가 발생할 수 있습니다. 따라서 실제 프로젝트에서는 분모가 0인지 먼저 검사하는 예외 처리 코드를 추가하는 것이 안전합니다.