안녕하세요 길벗수험서 운영팀입니다.
489쪽의 해설을 기준으로 설명드리겠습니다.
먼저 6번의 rand()%6+1은 1~6까지의 난수를 반환받는 식에 해당합니다.
이를 배열 hist[0]~hist[5]에 분리하여 저장하기 위해서는 난수로 받은 값에 -1을 해주어야 하죠.
즉, 3이 나오면 hist[2]에 저장하고, 5가 나오면 hist[4]에 저장하는 식입니다.
출력할 때는 이를 고려해야 합니다.
반환된 난수 1~6은 hist[0]~hist[5] 에 저장되었으니
i가 0일 때 1(i+1)의 값은 hist[0]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 1일 때 2(i+1)의 값은 hist[1]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 2일 때 3(i+1)의 값은 hist[2]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 3일 때 4(i+1)의 값은 hist[3]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 4일 때 5(i+1)의 값은 hist[4]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 5일 때 6(i+1)의 값은 hist[5]에 저장되어 있으니 hist[i]를 출력해줘야 하는 것입니다.
행복한 하루되세요 :)
-
관리자2019-05-28 11:48:04
안녕하세요 길벗수험서 운영팀입니다.
489쪽의 해설을 기준으로 설명드리겠습니다.
먼저 6번의 rand()%6+1은 1~6까지의 난수를 반환받는 식에 해당합니다.
이를 배열 hist[0]~hist[5]에 분리하여 저장하기 위해서는 난수로 받은 값에 -1을 해주어야 하죠.
즉, 3이 나오면 hist[2]에 저장하고, 5가 나오면 hist[4]에 저장하는 식입니다.
출력할 때는 이를 고려해야 합니다.
반환된 난수 1~6은 hist[0]~hist[5] 에 저장되었으니
i가 0일 때 1(i+1)의 값은 hist[0]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 1일 때 2(i+1)의 값은 hist[1]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 2일 때 3(i+1)의 값은 hist[2]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 3일 때 4(i+1)의 값은 hist[3]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 4일 때 5(i+1)의 값은 hist[4]에 저장되어 있으니 hist[i]를 출력해줘야 하고,
i가 5일 때 6(i+1)의 값은 hist[5]에 저장되어 있으니 hist[i]를 출력해줘야 하는 것입니다.
행복한 하루되세요 :)
-
관리자2019-05-29 11:48:51
안녕하세요 길벗수험서 운영팀입니다.
가능한 수험생의 입장에서 설명드리고 노력하고 있으나, 질문의 의도를 정확히 파악하지 못하거나 수험생이 어디까지 이해하고 질문하였는지 이해하지 못해 가능한 식을 풀이하는 방식으로 해설드리는 경우가 많습니다.
이후 가능한 정확한 답변을 드리도록 노력하겠습니다.
행복한 하루되세요 :)
-
*2019-05-28 21:56:08
설명이 여기는 너무 부족합니다 다른 수험생에게 물어보니
rand함수는 난수이기 때문에 그걸 6으로 나누면 나머지 값이 무조건 0~5까지의 값이
나온다고 들었습니다 그래서 +1해주는거고 주사위는 1~6이니까 이게 맞습니까?
만약 맞다면 이 설명이 훨씬 알아듣기 쉬웠는데 이런 설명 좀 부탁드립니다.
식을 적어놓고 풀이과정만 적으시면 기초중에 기초인 저는 이해가 너무 어렵습니다.
질문을 적어도 그 다음날 답변이 오는데 이런 답변이 오면 힘빠집니다 시간도 없는데