전체적으로 이해가 잘안되서 그런데 자세히 설명 부탁드려요 ㅠㅠ
안녕하세요 길벗수험서 운영팀입니다.
rand() 함수는 무작위 값을 뽑아냅니다.
srand() 함수는 rand() 함수의 기준값을 지정합니다.
time() 함수는 현재 시간을 초단위로 환산하여 반환합니다.
즉, 매 초마다 srand함수로 rand의 기준값을 변경하여, rand를 사용할 때 매 초마다 값이 무작위로 추출되게 됩니다.
(srand, time 없이 rand함수를 사용하면 특정 공식에 따른 값이 고정되어 출력됩니다.)
이점을 염두에 두시고 코드를 보세요.
rand()%6+1 은 무작위로 뽑히는 rand()함수의 값을 6으로 나눈 나머지(0~5) 값에 1을 더해 주사위 값을 구합니다.
(주사위 값인 1~6이 무작위로 나오겠죠.)
이 때 해당 주사위 값의 횟수를 저장하기 위해 주사위 값에 -1을 한 배열의 위치에 저장합니다.
hist[0]에는 주사위가 1이 나올 때 마다 +1을 하여 횟수를 저장하고,
hist[1]에는 주사위가 2가 나올 때 마다 +1을 하여 횟수를 저장하고,
....
hist[5]에는 주사위가 6이 나올 때 마다 +1을 하여 횟수를 저장합니다.
이후 이 값을 출력할 때, hist[i]를 출력하면서, i+1 주사위는 hist[i]번 나왔다고 출력하는 것입니다.
행복한 하루되세요 :)
-
관리자2019-06-24 15:24:51
안녕하세요 길벗수험서 운영팀입니다.
rand() 함수는 무작위 값을 뽑아냅니다.
srand() 함수는 rand() 함수의 기준값을 지정합니다.
time() 함수는 현재 시간을 초단위로 환산하여 반환합니다.
즉, 매 초마다 srand함수로 rand의 기준값을 변경하여, rand를 사용할 때 매 초마다 값이 무작위로 추출되게 됩니다.
(srand, time 없이 rand함수를 사용하면 특정 공식에 따른 값이 고정되어 출력됩니다.)
이점을 염두에 두시고 코드를 보세요.
rand()%6+1 은 무작위로 뽑히는 rand()함수의 값을 6으로 나눈 나머지(0~5) 값에 1을 더해 주사위 값을 구합니다.
(주사위 값인 1~6이 무작위로 나오겠죠.)
이 때 해당 주사위 값의 횟수를 저장하기 위해 주사위 값에 -1을 한 배열의 위치에 저장합니다.
hist[0]에는 주사위가 1이 나올 때 마다 +1을 하여 횟수를 저장하고,
hist[1]에는 주사위가 2가 나올 때 마다 +1을 하여 횟수를 저장하고,
....
hist[5]에는 주사위가 6이 나올 때 마다 +1을 하여 횟수를 저장합니다.
이후 이 값을 출력할 때, hist[i]를 출력하면서, i+1 주사위는 hist[i]번 나왔다고 출력하는 것입니다.
행복한 하루되세요 :)