티스토리 뷰
Programming Language/C basic
[C언어] CHAPTER 08 함수 / Programming 14 / 두 점 사이의 거리 계산
또야 2021. 4. 4. 17:08반응형
2차원 공간에서의
두 점 사이의 거리는
다음 공식으로 구할 수 있다.
$d = sqrt{(x_{1}-x_{2})^2 + (y_{1}-y_{2})^2}$
get_distance(double x1, double y1, double x2, double y2)
함수를 작성한다.
제곱근은 sqrt() 라이브러리 함수를 사용한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#include <stdio.h>
#include <math.h>
double get_distance(double x1, double y1, double x2, double y2);
int main(void)
{
double x1, y1, x2, y2, output;
printf("첫번째 점의 좌표를 입력하시오 (x, y) : ");
scanf_s("%lf %lf", &x1, &y1);
printf("두번째 점의 좌표를 입력하시오 (x, y) : ");
scanf_s("%lf %lf", &x2, &y2);
output = get_distance(x1, y1, x2, y2);
printf("두 점 사이의 거리는 %lf입니다.", output);
return 0;
}
double get_distance(double x1, double y1, double x2, double y2)
{
return sqrt(pow(x1 - x2, 2) + pow(y1 - y2,2));
}
|
cs |
- 설명
첫번째 점(x1, y1)과
두번째 점(x2, y2)의 좌표를
main() 함수에서 입력받아
get_distance() 함수의 매개변수로 전달한다.
get_distance() 함수에서는
위의 공식을 프로그래밍화한다.
#include <math.h>가 필요하며,
pow(x1 - x2, 2)는 제곱 값을 구하는 함수로
x1에서 x2값을 뺀 것의 제곱 값이다.
sqrt() 함수는 제곱근을 구한다.
최종 결과를 반환하여
main()의 output에 저장하고
두 점 사이의 거리를 출력한다.
pow(x1 - x2, 2) 말고도
(x1 - x2) ** 2를 사용해도 된다.
double 형으로 변수들을 지정했는데
실수로 형식 지정자를 다르게 쓰면
정확한 값이 출력되지 않으니 주의해야 한다.
- 결과
반응형
'Programming Language > C basic' 카테고리의 다른 글
[C언어] CHAPTER 09 함수와 변수 / Programming 02 / 주사위의 각 면이 나온 횟수 출력 (0) | 2021.04.04 |
---|---|
[C언어] CHAPTER 09 함수와 변수 / 은행 계좌 구현하기 (0) | 2021.04.04 |
[C언어] CHAPTER 08 함수 / Programming 12 / 입력한 값만큼 * 막대 그래프 그리기 (0) | 2021.04.04 |
[C언어] CHAPTER 08 함수 / Programming 11 / 0.0부터 1.0까지의 난수 반환하기 (0) | 2021.04.04 |
[C언어] CHAPTER 08 함수 / Programming 07 / 소득세 구하기 (0) | 2021.04.04 |
댓글
반응형
Recent Post.
Recent Reply.
- Thanks for comming.
- 오늘은
- 명이 방문했어요
- 어제는
- 명이 방문했어요