안녕하세요
본권97페이지 모의고사문제1회와 기출문제집 42페이지문제는 원리가 같지만 알고리즘은 좀 틀리네요
복권의 알고리즘은 이해가 되지만 기출문제알고리즘은 좀 이상해서 설명부탁드립니다
1.k=su/2라고 하는데 su가 홀수인 경우를 대비해서 INT(su/2)가 정확하지않나요?
2.REM=su-(su/j)*j 인 경우 su가 어떤경우에도 REM가 0이 되는건데 이것 도 정확하나요?(판단기호는 내용을 판단해서구별하기 위해 사용하는것으로 알고있습니다)
바쁘시겟지만 제가 좀 급하기에 빠른 답변 부탁드립니다.
수고하세요
안녕하세요.
기출문제집 41쪽 문제의 처리 조건을 보면 '/' 연산자의 기능을 소수점 이하가 발생하면 버리는 즉 INT 함수를 사용한 것과 같은 원리로 동작된다고 제시되어 있습니다.
문제의 처리조건은 반드시 확인하셔야 합니다.
REM = SU-(SU/J)*J
는 판단 기호가 아니라 SU-(SU/J)*J를 계산하여 REM에 저장한다는 의미입니다.
이후 그 값이 0인지는 아래쪽에서 판단을 하는 것이구요.
SU-(SU/J)*J는 나머지를 구하는 것으로 대부분 0을 갖지만 무조건 0을 갖지는 않습니다.
나머지가 0인 경우는 약수로 문제에서 요구하는 자신을 제외한 약수를 모두 더한 것이 자신과 같아지는 수일 가능성이 있는 것이죠.
이것들을 대상으로 누적된 SUM 값과 자신이 같다면 개수(CNT)를 누적하고 해당 값(SU)을 출력합니다.
오늘도 즐거운 하루 되세요.
"
-
*2013-07-05 09:24:31
안녕하세요.
기출문제집 41쪽 문제의 처리 조건을 보면 '/' 연산자의 기능을 소수점 이하가 발생하면 버리는 즉 INT 함수를 사용한 것과 같은 원리로 동작된다고 제시되어 있습니다.
문제의 처리조건은 반드시 확인하셔야 합니다.
REM = SU-(SU/J)*J
는 판단 기호가 아니라 SU-(SU/J)*J를 계산하여 REM에 저장한다는 의미입니다.
이후 그 값이 0인지는 아래쪽에서 판단을 하는 것이구요.
SU-(SU/J)*J는 나머지를 구하는 것으로 대부분 0을 갖지만 무조건 0을 갖지는 않습니다.
나머지가 0인 경우는 약수로 문제에서 요구하는 자신을 제외한 약수를 모두 더한 것이 자신과 같아지는 수일 가능성이 있는 것이죠.
이것들을 대상으로 누적된 SUM 값과 자신이 같다면 개수(CNT)를 누적하고 해당 값(SU)을 출력합니다.
오늘도 즐거운 하루 되세요.