C언어로 나누기 프로그램을 만드는데
x/y로 몫까진 구했는데 나머지가 나오게 하는 법을
몰라서 네이버 지식in을 찾아보았다.
a / b => a를 b로 나눈 값의 몫 (예> 3 / 4 = 0, 5 / 2 = 2)
a % b -> a를 b로 나눈 값의 나머지 (예> 3 % 4 = 3, 5 % 2 = 1)
즉 정확한 값을 구하기 위해서는
몫 + (나머지 * 0.1) 를 하시면 됩니다.
나머지에 0.1을 곱하는 이유는 소수로 만들기 위해서입니다.
아래는 간단한 예제입니다.
#include <stdio.h>
int main(void)
{
int a, b;
float result;
printf("값을 입력하세요.(a b) :");
scanf("%d %d", &a, &b );
printf("몫 : %d\n", (a/b));
printf("나머지 : %d\n", a%b);
printf("값 : %f\n", (a/b) + (a%b*0.1) );
return 0;
}/
[출처-gunys 님의 답변]
그랬던 거였군!!! x%y구나...!
그래서 결국 만드는데 성공했다.
덤으로 삼각형의 넓이를 구하는 것도 만들어 봤는데
나눗셈보다 쉬웠다.
다음엔 원의 넓이를 구하는 프로그램을 만들어야겠다.
informatica 주소
(카이스트 사이버 영재캠프 수강생이 아니면 가입불가)
http://koistudy.net/
2011/06/14 23:45
아, 이때는 정수의 계산이라는 개념이 없었던 때라...
나머지를 구하는 법은 커녕
왜 15/2가 7인지 엄청 고민했었다.
나중에 실수나 casting에 대해 배우고 나서야 깨달았다 ㅋㅋ