강의

멘토링

로드맵

Inflearn Community Q&A

1411245375's profile image
1411245375

asked

Learn C Programming by Following Along with Hong Jeong-mo

5.4 Multiplication Operator

질문 있습니다.

Resolved

Written on

·

190

0

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() { int a, b, c; printf("Input seed money : "); scanf("%d", &a); printf("Input target money : "); scanf("%d", &b); printf("Input annual interest (%%) : "); scanf("%d", &c); int year = 0; while (a < b) { a = a + a * c / 100; year++; printf("%d년 : %d원\n", year, a); } }
제가 작성했던 코드는 이러한데요
 
중간 식에서 a = a + a * c / 100; 을
a= a*(1+(c/100));로 작성하니까 숫자가 더해지지가 않던데 왜그런가요?ㅠㅠ
곱셈 나눗셈 연산자 모두 잘 썼고 괄호로 순서만 정해줬는데 a는 계속 변하지 않네요.. 왜그런가요?!
c

Answer 1

1

안녕하세요 :)

 

(c / 100)를 묶어서 (c / 100)를 가장 먼저 계산하면 무조건 0이 나옵니다.

(/는 몫 만 계산한다는 사실에 유의해주세요.)

 

그렇기에 a= a*(1+(c/100)); 는 a = a 가 되어 버리는 것입니다.

 

감사합니다. 

1411245375's profile image
1411245375

asked

Ask a question