Notice
Recent Posts
Recent Comments
Link
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Tags
more
Archives
Today
Total
관리 메뉴

문타쿠, 공부하다.

[C언어 코딩 도장] Unit 14. 곱셈, 나눗셈하기 본문

C언어/C언어 코딩 도장

[C언어 코딩 도장] Unit 14. 곱셈, 나눗셈하기

개발새발 문타쿠 2023. 8. 23. 00:39

14.1 곱셈, 나눗셈하기

"정수의 곱셈과 나눗셈"

#include <stdio.h>

int main(void)
{
	int num1;
	int num2;

	num1 = 2 * 3;
	num2 = 7 / 2;

	printf("%d\n", num1);
	printf("%d\n", num2);

	return 0;
}

  • 정수끼리 나눗셈을 하면 결과 값도 정수이다.

  • 정수는 0으로 나눌 수 없으며, 정수를 0으로 직접 나누면 컴파일 에러가 발생한다.

  • 변수에 정수와 0을 저장해서 나누면 콤파일 에러는 발생하지 않지만 실행을 하면 에러가 발생한다.

"실수의 곱셈과 나눗셈"

#include <stdio.h>

int main(void)
{
	float num1;
	float num2;

	num1 = 2.73f * 3.81f;
	num2 = 7.0f / 2.0f;

	printf("%f\n", num1);
	printf("%f\n", num2);

	return 0;
}

  • 위의 코드에서 실수끼리 곱했을 때 결과 값으로 10.4013이 나와야하는데 10.401299가 나온다. -> 오차 발생
  • 실수의 계산에서는 곱셈뿐만 아니라 덧셈, 뺄셈, 나눗셈에서도 오차가 발생한다.

  • 실수도 소스 코드에서 0으로 직접 나누면 컴파일 에러가 발생한다.

  • 변수에 실수와 0.0을 저장해서 나누면 정수와는 다르게 inf(무한대)가 나온다.

"0을 어떤 수로 나누면 어떻게 될까?"

#include <stdio.h>

int main(void)
{
	int num1;

	num1 = 0 / 10;

	printf("%d\n", num1);

	return 0;
}
#include <stdio.h>

int main(void)
{
	float num1 = 0.0f;
	float num2 = 10.0f;
	float num3;

	num3 = num1 / num2;

	printf("%f\n", num3);

	return 0;
}
  • 0을 어떤 수로 나누면 결과는 0이다.

14.2 변수 하나에서 값을 곱하거나 나누기

#include <stdio.h>

int main(void)
{
	int num1 = 2;
	int num2 = 7;

	num1 = num1 * 3;
	num2 = num2 / 2;

	printf("%d\n", num1);
	printf("%d\n", num2);

	return 0;
}
#include <stdio.h>

int main(void)
{
	int num1 = 2;
	int num2 = 7;

	num1 *= 3;
	num2 /= 2;

	printf("%d\n", num1);
	printf("%d\n", num2);

	return 0;
}