- 랜덤으로 중첩되지 않는 10개의 점을 100X100 의 2차원 평면 위에 놓는다.
※ 각 점의 좌표는 구조체를 사용하여 저장한다.
- 사용자로 부터 좌표를 입력 받는다.
- 사용자로 부터 입력 받은 좌표로 부터 가장 가까운 점의 위치를 출력해 준다.
#include < stdio.h >
#include < stdlib.h >
#include < time.h >
#include < stdlib.h >
#include < time.h >
typedef struct __COORD
{
int x;
int y;
} COORD;
{
int x;
int y;
} COORD;
void main()
{
srand( time( NULL ) );
{
srand( time( NULL ) );
COORD coord[10]; // 좌표정보
int index = 0; // 인덱스.
int index = 0; // 인덱스.
int testIndex = 0;
while ( 1 )
{
testIndex ++;
{
testIndex ++;
bool bFine = true; // 정확한 정보인가?
int tempX = rand() % 100;
int tempY = rand() % 100;
int tempY = rand() % 100;
for (int i = 0; i < index; i++)
{
// 중복처리.
// 이전에 입력한 좌표중에 같은 부분이 있으면, 무효화 하고 다시 입력.
if ( coord[i].x == tempX && coord[i].y == tempY )
{
bFine = false;
break;
}
}
{
// 중복처리.
// 이전에 입력한 좌표중에 같은 부분이 있으면, 무효화 하고 다시 입력.
if ( coord[i].x == tempX && coord[i].y == tempY )
{
bFine = false;
break;
}
}
// 중복된 좌표값이 없으면 이 값을 저장.
if (true == bFine)
{
coord[index].x = tempX;
coord[index].y = tempY;
if (true == bFine)
{
coord[index].x = tempX;
coord[index].y = tempY;
index++;
}
일단 랜덤 좌표값 생성은 완성했는데, 좌표 입력받은다음에 가까운좌표 찾는건 어떻게 찾아야되죠? 만약에 거리가 똑같은 좌표가 두개나올수도있는거고, y축차이+x축차이를 비교해서 가장 작은거 찾으면 될거같긴한데..
도움주시면감사합니다.
}
일단 랜덤 좌표값 생성은 완성했는데, 좌표 입력받은다음에 가까운좌표 찾는건 어떻게 찾아야되죠? 만약에 거리가 똑같은 좌표가 두개나올수도있는거고, y축차이+x축차이를 비교해서 가장 작은거 찾으면 될거같긴한데..
도움주시면감사합니다.
점과 점 사이의 거리를 열개 다 구해
피타고라스 정리 모르나, a^2+b^2=c^2
점과 점사이의 거리를 그냥 우리 고등학교 수학하듯이 공식때리면될까영
교수가 두 점 사이의 거리에 관련하여 추가적인 옵션을 걸지 않았다면 유클리드 기하학을 기반으로 피타고라스 정리를 따르는게 맞을꺼 같은데..