1ํ•™๋…„ (2023)/C ์–ธ์–ด

[C] Study : ์ˆ˜์‹๊ณผ ์—ฐ์‚ฐ์ž - (6) ์—ฐ์‚ฐ์ž์˜ ์šฐ์„ ์ˆœ์œ„์™€ ๊ฒฐํ•ฉ ๊ทœ์น™

waterproof 2023. 8. 28. 14:21

 

 

 


์—ฐ์‚ฐ์ž์˜ ์šฐ์„ ์ˆœ์œ„

 

 ๋งŒ์•ฝ ์•„๋ž˜์™€ ๊ฐ™์ด ํ•˜๋‚˜์˜ ์ˆ˜์‹์ด 2๊ฐœ ์ด์ƒ์˜ ์—ฐ์‚ฐ์ž๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ์—๋Š” ์–ด๋–ค ์—ฐ์‚ฐ์ž๊ฐ€ ๋จผ์ € ์ˆ˜ํ–‰๋  ๊ฒƒ์ธ๊ฐ€? ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์žฅ์—์„œ ๊ฐ€์žฅ ๋จผ์ € ์ˆ˜ํ–‰๋˜๋Š” ์—ฐ์‚ฐ์€ ๋ฌด์—‡์ธ๊ฐ€?

 

x + y * z

 

์šฐ๋ฆฌ๋Š” ์ˆ˜ํ•™์—์„œ ๋ฐฐ์› ๋“ฏ์ด ๊ณฑ์…ˆ๊ณผ ๋‚˜๋ˆ—์…ˆ์ด ๋ง์…ˆ๊ณผ ๋บ„์…ˆ๋ณด๋‹ค ๋จผ์ € ์ˆ˜ํ–‰๋˜์–ด์•ผ ํ•œ๋‹ค.

 

์šฐ์„ ์ˆœ์œ„๋Š” ๋งŽ์€ ์—ฐ์‚ฐ๋“ค ์ค‘์—์„œ ์–ด๋–ค ์—ฐ์‚ฐ์„ ๋จผ์ € ์ˆ˜ํ–‰ํ• ์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ทœ์น™์ด๋‹ค.

 

๊ฐ ์—ฐ์‚ฐ์ž๋“ค์€ ์„œ์—ด์ด ๋งค๊ฒจ์ ธ ์žˆ๋‹ค. ์ฆ‰ ๊ณฑ์…ˆ๊ณผ ๋‚˜๋ˆ—์…ˆ์€ ๋ง์…ˆ์ด๋‚˜ ๋บ„์…ˆ๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค.

 

์ฆ๊ฐ > ๊ณฑ์…ˆ, ๋‚˜๋ˆ—์…ˆ, ๋‚˜๋จธ์ง€ > ๋ง์…ˆ, ๋บ„์…ˆ ์ˆœ์˜ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง„๋‹ค.

 

๋งŒ์•ฝ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋Ÿฌํ•œ ์šฐ์„ ์ˆœ์œ„๋Œ€๋กœ ์—ฐ์‚ฐ์„ ํ•˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ์ˆœ์„œ๋กœ ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ๋Š” ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ๋˜๋Š”๊ฐ€?

 

์ˆ˜ํ•™์—์„œ๋„ ๋ฐฐ์› ๋“ฏ์ด ์ด ๊ฒฝ์šฐ์—๋Š” ๊ด„ํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

 

 

C์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋ชจ๋“  ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ํ‘œ๋กœ ์ •๋ฆฌํ•˜์˜€๋‹ค.

 

 

์šฐ์„  ์ˆœ์œ„์˜ ์ผ๋ฐ˜์ ์ธ ์ง€์นจ

 

  • ์ฝค๋งˆ < ๋Œ€์ž… < ๋…ผ๋ฆฌ < ๊ด€๊ณ„ < ์‚ฐ์ˆ  < ๋‹จํ•ญ
  • ๊ด„ํ˜ธ ์—ฐ์‚ฐ์ž๋Š” ๊ฐ€์žฅ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค. 
  • ๋ชจ๋“  ๋‹จํ•ญ ์—ฐ์‚ฐ์ž๋“ค์€ ์ดํ•ญ ์—ฐ์‚ฐ์ž๋“ค๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค. 
  • ์ฝค๋งˆ ์—ฐ์‚ฐ์ž๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ๋Œ€์ž… ์—ฐ์‚ฐ์ž๊ฐ€ ๊ฐ€์žฅ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค. 
  • ์—ฐ์‚ฐ์ž๋“ค์˜ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ์ƒ๊ฐ๋‚˜์ง€ ์•Š์œผ๋ฉด ๊ด„ํ˜ธ๋ฅผ ์ด์šฉ
    ( x <= 10 ) && ( y >= 20 ) 
  • ๊ด€๊ณ„ ์—ฐ์‚ฐ์ž๋‚˜ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž๋Š” ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค. 
    x + 2 == y + 3 

 

 

์—ฐ์‚ฐ์ž์˜ ๊ฒฐํ•ฉ ๊ทœ์น™

 

 ๋งŒ์•ฝ ์•„๋ž˜์˜ ์ˆ˜์‹๊ณผ ๊ฐ™์ด ๋™์ผํ•œ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ€์ง€๋Š” ์—ฐ์‚ฐ๋“ค์ด ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์žˆ์œผ๋ฉด ์–ด๋–ค ๊ฒƒ์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•˜์—ฌ์•ผ ํ•˜๋Š”๊ฐ€? ์ฆ‰ x * y์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•˜๋Š”๊ฐ€ ์•„๋‹ˆ๋ฉด y * z๋ฅผ ๋จผ์ € ์ˆ˜ํ–‰ํ•˜๋Š”๊ฐ€?

 

x * y * z

 

 ์ด๊ฒƒ๋„ ์—ฐ์‚ฐ์ž๋งˆ๋‹ค ๋‹ฌ๋ผ์ง„๋‹ค. (์—ฐ์‚ฐ์ž์˜ ๊ฒฐํ•ฉ ๊ทœ์น™)

 

 ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž์˜ ๊ฒฝ์šฐ์—๋Š” ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์—ฐ์‚ฐ์ด ์ˆ˜ํ–‰๋œ๋‹ค. ์ฆ‰ x*y ๊ฐ€ ๋จผ์ € ์ˆ˜ํ–‰๋œ๋‹ค.

 

 ๊ฒฐํ•ฉ ๊ทœ์น™์ด๋ž€ ๋™์ผํ•œ ์šฐ์„ ์ˆœ์œ„์˜ ์—ฐ์‚ฐ์ด ์žˆ๋Š” ๊ฒฝ์šฐ์— ๋ฌด์—‡์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•˜๋Š๋ƒ์— ๋Œ€ํ•œ ๊ทœ์น™์ด๋‹ค.

 

 

์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž๋ฅผ ๋น„๋กฏํ•œ ๋Œ€๋ถ€๋ถ„์˜ ์ดํ•ญ ์—ฐ์‚ฐ์ž๋“ค์€ ์™ผ์ชฝ์— ์žˆ๋Š” ์—ฐ์‚ฐ์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

๋ฐ˜๋ฉด์— ๋‹คํ•ญ ์—ฐ์‚ฐ์ž๋“ค๊ณผ ๋Œ€์ž… ์—ฐ์‚ฐ์ž๋Š” ์˜ค๋ฅธ์ชฝ ์—ฐ์‚ฐ์„ ๋จผ์ € ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

 

 

์˜ˆ์ œ #1

 

 ์•„๋ž˜์™€ ๊ฐ™์€ ๋ณต์žกํ•œ ๋ฌธ์žฅ์—์„œ๋Š” ์–ด๋–ค ์—ฐ์‚ฐ์ด ๋จผ์ € ์ˆ˜ํ–‰๋ ๊นŒ?

 

๊ด„ํ˜ธ ์•ˆ์˜ ์—ฐ์‚ฐ์€ ๊ฐ€์žฅ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค. ๋”ฐ๋ผ์„œ ๊ฐ€์žฅ ๋จผ์ € ์ˆ˜ํ–‰๋œ๋‹ค.

 

๋‹ค์Œ์—๋Š” ๊ณฑ์…ˆ, ๋บ„์…ˆ, ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž๋“ค์€ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๊ฐ™์œผ๋ฏ€๋กœ ์™ผ์ชฝ์—์„œ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์ˆ˜ํ–‰๋œ๋‹ค.

 

๋ง์…ˆ์€ ๊ทธ ๋‹ค์Œ์— ์ˆ˜ํ–‰๋˜๋ฉฐ ๋Œ€์ž… ์—ฐ์‚ฐ์ž๋Š” ๊ฐ€์žฅ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ์œผ๋ฏ€๋กœ ๋งˆ์ง€๋ง‰์— ์ˆ˜ํ–‰๋œ๋‹ค.

 

 

 

์˜ˆ์ œ #2

 

 ๋‹ค์Œ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ธฐ ์ „์— ์ˆ˜์‹์˜ ๊ฐ’์„ ์˜ˆ์ธกํ•˜์—ฌ ๋ณด์ž.

 

#include <stdio.h>

int main(void) {
	int a = 10;
	int b = 20;
	int c = 30;
	int d = 3;
	int result;

	result = a + b * c / d;
	printf("์—ฐ์‚ฐ๊ฐ’: %d\n", result);
	
	result = (a + b) * c / d;
	printf("์—ฐ์‚ฐ๊ฐ’: %d\n", result);
		
	result = a = b = 1;
	printf("์—ฐ์‚ฐ๊ฐ’: %d\n", result);
	
	return 0;
}