200쪽 문제에서 순서도에서의 반복문은 이해가 되는데 C언어 코드에서 나오는 반복문 코드는 이해가
잘 안됩니다.
특히 C언어 코드의 반복문에서 증가 값 있잖아요 i++ 여기서 ++이것이 위치가
상황에 따라서 71쪽에서는 for문 예제에서는 ++i 으로 쓰이다가
또 여기서는 i++ 가 쓰이는데 이 ++ 위치에 관해서 설명해 주실 수 있나요?
안녕하세요. 길벗 수험서 운영팀입니다.
선치 후치 수식에서 활용되는 ++의 경우 한 수식 내에서만 그 역할을 다 합니다.
for 반복문의 경우 3개의 수식으로 이루어져 있습니다.
for (①; ②; ③) 이렇게요.
즉, ③에서 단일로 이루어지는 ++의 경우 단순히 i = i + 1의 역할만을 수행합니다.
이것이 한 수식에서 활용되어 값이 달라지는 경우는 108쪽의 문제 2번이 대표적인 문제입니다.
int a = 12, b = 8, c = 2, d = 3;
a /= b++ - c * d;
위와 같은 수식을 수행할 때, 두 번째 줄을 풀이해보면,
a = a / (b++ - c * d);
a = 12 / (8++ - 2 * 3);
이 되죠.
저기서 b(8)뒤에 붙어서 후치수식을 하고 있는 ++의 경우 해당 수식의 연산이 모두 종료된 뒤에 b의 값을 하나 더하게 됩니다.
즉, 12 / (8 - 2 * 3); 을 계산하여 6을 a에 저장하고, 그 이후에 b에 1을 더하여 b는 9가 되는 원리입니다.
for문과 같이 단일로 ++ 또는 --가 쓰는 경우는 단순히 해당 변수에 1을 더하거나, 빼는 연산일 뿐입니다.
행복한 하루되세요.^^
-
*2018-09-17 20:02:10
안녕하세요. 길벗 수험서 운영팀입니다.
선치 후치 수식에서 활용되는 ++의 경우 한 수식 내에서만 그 역할을 다 합니다.
for 반복문의 경우 3개의 수식으로 이루어져 있습니다.
for (①; ②; ③) 이렇게요.
즉, ③에서 단일로 이루어지는 ++의 경우 단순히 i = i + 1의 역할만을 수행합니다.
이것이 한 수식에서 활용되어 값이 달라지는 경우는 108쪽의 문제 2번이 대표적인 문제입니다.
int a = 12, b = 8, c = 2, d = 3;
a /= b++ - c * d;위와 같은 수식을 수행할 때, 두 번째 줄을 풀이해보면,
a = a / (b++ - c * d);
a = 12 / (8++ - 2 * 3);
이 되죠.
저기서 b(8)뒤에 붙어서 후치수식을 하고 있는 ++의 경우 해당 수식의 연산이 모두 종료된 뒤에 b의 값을 하나 더하게 됩니다.
즉, 12 / (8 - 2 * 3); 을 계산하여 6을 a에 저장하고, 그 이후에 b에 1을 더하여 b는 9가 되는 원리입니다.
for문과 같이 단일로 ++ 또는 --가 쓰는 경우는 단순히 해당 변수에 1을 더하거나, 빼는 연산일 뿐입니다.
행복한 하루되세요.^^