S(C) 도 답으로 가능하지 않나요?
안녕하세요 길벗수험서 운영팀입니다.
불가능합니다.
5번 빈칸이 1인 경우 소수가 출력됩니다. 이 경우를 잘 생각해보세요.
입력값 N에 소수인 3이 입력되었다고 가정해봅시다.
소인수분해 과정을 거치면 c는 1, s(c)는 3, n은 1이 됩니다. 이 상태에서 5번 빈칸이 있는 조건문에 도착하게 될 것입니다.
s(c)는 3을 갖고 있기 때문에 1이 아니므로, 출력문인 오른쪽 반복문으로 이동하게 되겠죠.
소수인 경우 s(c)는 자기 수를 갖고 있으므로 빈칸 5번이 s(c)가 되려면
1과 비교하는 것이 아닌 초기 입력값 3과 비교해야 할 것입니다.
하지만 순서도에서 입력값인 n은 소인수 분해를 하는 과정중에 n=n/k 과정을 통해 값이 변화하였으므로, 비교할 수 있는 초기 입력값은 남아있지 않아 조건문이 성립될 수 없습니다.
행복한 하루되세요 :)
-
관리자2019-04-18 10:26:30
안녕하세요 길벗수험서 운영팀입니다.
불가능합니다.
5번 빈칸이 1인 경우 소수가 출력됩니다. 이 경우를 잘 생각해보세요.
입력값 N에 소수인 3이 입력되었다고 가정해봅시다.
소인수분해 과정을 거치면 c는 1, s(c)는 3, n은 1이 됩니다. 이 상태에서 5번 빈칸이 있는 조건문에 도착하게 될 것입니다.
s(c)는 3을 갖고 있기 때문에 1이 아니므로, 출력문인 오른쪽 반복문으로 이동하게 되겠죠.
소수인 경우 s(c)는 자기 수를 갖고 있으므로 빈칸 5번이 s(c)가 되려면
1과 비교하는 것이 아닌 초기 입력값 3과 비교해야 할 것입니다.
하지만 순서도에서 입력값인 n은 소인수 분해를 하는 과정중에 n=n/k 과정을 통해 값이 변화하였으므로, 비교할 수 있는 초기 입력값은 남아있지 않아 조건문이 성립될 수 없습니다.
행복한 하루되세요 :)