안녕하세요 길벗수험서 운영팀입니다.
순서도와 프로그래밍 코드의 배열 첨자가 다르기 때문입니다.
순서도에서 배열 a(10)을 선언하면 a(1) ~ a(10) 까지 10개의 요소를 사용하지만,
프로그래밍 코드에서는 배열 a[10]을 선언하면 a[0] ~ a[9] 까지 10개의 요소를 사용합니다.
이에 따라 첨자를 위주로 반복하는 경우 반복 조건이 달라질 수 있습니다.
(<가 >=로, >가 <=로 서로 뒤집히는 경우는 단순히 코드 작성의 편의를 위해 바꾼 것입니다.)
당연히 배열 첨자의 초기값이 달라지므로 (1과 0) 첨자 역할을 하는 변수가 +1을 하며 시작하게 되면 순서도는 0에서 시작하고 프로그래밍 코드는 -1에서 시작하게 되겠죠.
최대값 또한 <=10이 <10으로 바뀌거나 <10이 <9로 바뀌는 경우도 발생할 수 있겠죠.
조금 달라보일 수 있으나 디버깅을 해보시면서 전반적인 코드를 해석해보시면 순서도와 동일한 알고리즘을 수행하고 있다는 것을 파악하실 수 있으실 것입니다.
행복한 하루되세요 :)
-
관리자2019-05-03 10:13:47
안녕하세요 길벗수험서 운영팀입니다.
순서도와 프로그래밍 코드의 배열 첨자가 다르기 때문입니다.
순서도에서 배열 a(10)을 선언하면 a(1) ~ a(10) 까지 10개의 요소를 사용하지만,
프로그래밍 코드에서는 배열 a[10]을 선언하면 a[0] ~ a[9] 까지 10개의 요소를 사용합니다.
이에 따라 첨자를 위주로 반복하는 경우 반복 조건이 달라질 수 있습니다.
(<가 >=로, >가 <=로 서로 뒤집히는 경우는 단순히 코드 작성의 편의를 위해 바꾼 것입니다.)
당연히 배열 첨자의 초기값이 달라지므로 (1과 0) 첨자 역할을 하는 변수가 +1을 하며 시작하게 되면 순서도는 0에서 시작하고 프로그래밍 코드는 -1에서 시작하게 되겠죠.
최대값 또한 <=10이 <10으로 바뀌거나 <10이 <9로 바뀌는 경우도 발생할 수 있겠죠.
조금 달라보일 수 있으나 디버깅을 해보시면서 전반적인 코드를 해석해보시면 순서도와 동일한 알고리즘을 수행하고 있다는 것을 파악하실 수 있으실 것입니다.
행복한 하루되세요 :)