#include <stdio.h>
void main() {
int i, total = 0;
for (i = 0; i < 10; i++) {
if (!(i % 2)) continue;
total = total + i;
}
printf("%d n", total);
}
이거 답이 25인데 나는 55가 나오는데? ㅜㅜ
i가 1, 3, 5, 7, 9
total 값이 1+(1+3)+(4+5)+(9+7)+(16+9)=55인것 같은데 틀린 답이거든
보니까 total 값을 누적을 안시키고 그냥 1+3+5+7+9로 해버린것 같은데
for문은 원래 그렇게함? total 값도 계속 누적 시켜야 하는거 아니냐? ㅜㅜ
조건문 ((i % 2)!=0)로 해바여
아니다 ((i % 2)==0)
1부터 10까지 싹 더하면 55임. 조건문이 발동이 안되는듯
내 풀이로 55가 나오는데 이게 틀린 답이거든 정답은 25인데 내 풀이 방법이 틀린건데 즉 왜 total=total+i에서 누적이 안되는거임?
정답 풀이는 아마 total=total+i => 1=0+1, 3=0+3, 5=0+5, 7=0+7, 9=0+9로 계산 하는것 같은데
님이 원하는게 1+3+5+7+9 = 25 이게 나오는거 아님?
total=total+i => 1=0+1, 4=1+3, 9=4+5, 16=9+7, 25=16+9 이렇게 total 값을 누적해서 더해줘야 하는거 아님? <- 이게 틀린 풀이이거든 for문에서는 이렇게 하면 안되는거임?
원하는게 아니고 저게 시험 문제인데 난 답을 55를 선택 했는데 정답은 25였음
아 뭔소린가했네
1+(1+3)+(4+5)+(9+7)+(16+9) 이게 아니라 마지막의 16+9 = 25만 봐야져
i 말고 i 2로 해보셔요