C언에 관한 문제 입니다.. 제가 풀다가..^^;; 막혀서...2문제인데요
허리품
(1)
N[10]이 정의 되어 있다.
여기에 0부터 9까지의 수를 배열에 무작위로 저장하는 프로그램을 만드시오.#includestdio.h --------------------- 틀린점 있나 확인좀 해주세요^^
#includestdlib.h --------------------프로그램 실행하면 나오기는 하는데..ㅠㅠ
#includetime.hvoid srand( unsigned int seed);
void main(void)
{
int n[10];
int i,j,temp;
srand(time(NULL));
for(i=0;i10;i++)
{
temp=rand()%10;
for(j=0;j=i;j++)
{
if(n[j]==temp)
{
temp=n[i-1];
i--;
}
}
n[i]=temp;
}
for(i=0;i10;i++)
printf(%d ,n[i]);
}
(2)
999칸짜리 집합 N과 1000칸짜리 집합M이 있다.
M에는 1부터 1000까지의 수가 들어 있는데, 수를 하나씩 무작위로 꺼내 집합 N에 넣는다.
이때 남는 수를 확인할 수 있는 프로그래밍 하시오.
처리시간 빠르게/.
#includestdio.h
#includestdlib.h
#includetime.h
void srand( unsigned int seed);void main(void)
{
int n[999];
int m[1000];
int i,j,k;
srand(time(NULL));
for(i=0;i=999;i++)
{
m[i]=i;
k=rand()%1000;
n[i]=m[k];
m[k]=0; --------------여기부터 막혔어요.. ㅠㅠ 도저히.. ㅠㅠ 머릴 굴려도.. ㅠㅠ
-------------누가좀 알려주시거나.. 자세히 설명좀해주세요..ㅠ
-
늘봄
(' ㅎㅎ
-
돋되다
\누워서 읽는 알고리즘\ 이라는 책에 나오는 문제 입니다.
1~1000을 더한수에서 임의의 수 999개를 더한 값을 빼면 됩니다. -
일진누나
가장 빠른 방법은 역시 메모리 비교 겠지요. 1~1000 까지라면 0 과 연산자 OR 을 대입해서 계산하면 되겠군요