순서도 답 중 4번이 없어서 C언어 코드를 보고 유추해보니 Top=Top-1인데 Underflow가 되었으면 배열에 값이 없다는 것 아닌가요? 근데 거기서 어떻게 다시 -1을 할 수 있는 것인지 이해가 잘 되지 않습니다.
또한 순서도에서 J, K, i가 변수인데 변수가 +1이 되는 과정이 없고 K는 입력만, J는 계속 1에서 변화가 없는데 어떻게 2가 되는지 특히 i=PUSH[K]이 부분이 이해가 되지 않습니다 K는 그대로의 값이 아닌가요? i도 값이 어디서 나오는건지 순서도 전체적으로 전부 이해가 되지 않습니다.
안녕하세요.
Underflow가 발생하면 "UNDERFLOW"를 출력하고 RETURN -1을 만나 호출한 곳으로 돌아갑니다.
TOP=TOP-1이 수행되는 경우는 TOP < 1 가 NO인 경우로 자료가 있는 경우입니다.
J, K는 증가되는 것이 아니라 하나의 처리가 요청되면
즉 J가 1, K가 10가 입력되면
J가 1이므로 입력, 즉 PUSH 작업을 K값 10을 가지고 처리합니다.
그 과정에서 i값은 변화가 생깁니다.
하나의 작업이 끝나면 다시 J와 K를 입력받아 처리를 수행합니다.
그렇게 J와 K를 입력받아 처리하더 J에 1이나 2가 아닌 값이 입력되면 스택의 값을 출력하고 종료하게 됩니다.
오늘도 즐거운 하루 되세요.
-
*2017-03-30 10:54:35
안녕하세요.
Underflow가 발생하면 "UNDERFLOW"를 출력하고 RETURN -1을 만나 호출한 곳으로 돌아갑니다.
TOP=TOP-1이 수행되는 경우는 TOP < 1 가 NO인 경우로 자료가 있는 경우입니다.
J, K는 증가되는 것이 아니라 하나의 처리가 요청되면
즉 J가 1, K가 10가 입력되면
J가 1이므로 입력, 즉 PUSH 작업을 K값 10을 가지고 처리합니다.
그 과정에서 i값은 변화가 생깁니다.
하나의 작업이 끝나면 다시 J와 K를 입력받아 처리를 수행합니다.
그렇게 J와 K를 입력받아 처리하더 J에 1이나 2가 아닌 값이 입력되면 스택의 값을 출력하고 종료하게 됩니다.
오늘도 즐거운 하루 되세요.