인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

최원준141124님의 프로필 이미지
최원준141124

작성한 질문수

홍정모의 따라하며 배우는 C언어

5.4 곱하기 연산자

질문 있습니다.

해결된 질문

작성

·

174

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는 계속 변하지 않네요.. 왜그런가요?!

답변 1

1

안녕하세요 :)

 

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

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

 

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

 

감사합니다. 

최원준141124님의 프로필 이미지
최원준141124

작성한 질문수

질문하기