๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
C ์–ธ์–ด/Basics

[C์–ธ์–ด]์ค‘๊ฐ„๊ณ ์‚ฌ:1+2+..+k=sum์ด n์„ ๋„˜์ง€ ์•Š๋Š” ๊ฐ’์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ

by IworldT 2021. 10. 23.
๋ฐ˜์‘ํ˜•

c์–ธ์–ด ์ค‘๊ฐ„๊ณ ์‚ฌ ๊ธฐ์ถœ๋ฌธ์ œ ํ’€์ด๋ฅผ ์ด์–ด์„œ ํ•ด๋ณด์ž.

์‚ฌ์šฉ์ž์—๊ฒŒ n ๊ฐ’์„ ์ž…๋ ฅ๋ฐ›์•„ ๊ทธ ๊ฐ’๊นŒ์ง€ ๋ชจ๋‘ ๋”ํ•˜๊ณ , ๋”ํ•œ ๊ฐ’์ด ์ž…๋ ฅ๊ฐ’์„ ๋„˜์ง€ ์•Š๋Š” ์ตœ๋Œ€๊ฐ’์„ ์ฐพ๋Š” ๋ฌธ์ œ๋‹ค.

 

๋ฌธ์ œ


n๊ฐ’์„ ์ž…๋ ฅํ•˜๋ฉด 1+2+...+k=sum ์ด n์„ ๋„˜์ง€ ์•Š์„ ๋•Œ ์ฆ‰, sum<=n์ธ k ๊ฐ’๊ณผ sum ๊ฐ’์„ ๊ตฌํ•˜์—ฌ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.


๋ฐ˜์‘ํ˜•

 

 

ํ’€์ด

n๊ฐ’์€ scanf๋กœ ๋ฐ›์•„์ฃผ๋ฉด ๋˜๊ณ , sum๊ณผ k๋Š” ์šฐ์„  0์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•ด์ค€๋‹ค.

๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋˜๋Š”๋ฐ, ๋‚˜๋Š” for๋ฌธ ๋Œ€์‹  while์„ ์‚ฌ์šฉํ–ˆ๋‹ค. ์–ด๋–ค ๋ฐ˜๋ณต๋ฌธ์„ ์“ฐ๋Š๋ƒ์— ๋”ฐ๋ผ ๋‚ด๋ถ€ ๋กœ์ง์ด ๋‹ฌ๋ผ์ ธ์•ผํ•˜๋ฏ€๋กœ, ์šฐ์„  ํ’€์ด๋ฐฉ๋ฒ•์„ ์ž˜ ํ™•์ธํ•ด๋ณด์ž.

์˜ˆ๋ฅผ ๋“ค์–ด n ๊ฐ’์„ 500์œผ๋กœ ๋ฐ›์•˜์„ ๋•Œ, sum๊ฐ’์ด 500์„ ๋„˜์ง€ ์•Š๋Š” ์กฐ๊ฑด์„ while์— ์ž…๋ ฅํ•ด์ค„ ๊ฒƒ์ด๋‹ค.

while(sum<=n)์ด๋ฏ€๋กœ, sum์ด 500์„ ์ดˆ๊ณผํ•œ ์ฑ„๋กœ ๋ฐ˜๋ณต๋ฌธ์„ ํ†ต๊ณผํ•˜๊ฒŒ ๋œ๋‹ค.

๊ทธ๋ž˜์„œ ๋ฐ˜๋ณต๋ฌธ์—์„œ ํƒˆ์ถœํ•œ sum๊ณผ k๋ฅผ ์ถœ๋ ฅ ์ง์ „์— ํ•œ๋ฒˆ์”ฉ ๋นผ์ฃผ๋Š” ๋กœ์ง์„ ์ถ”๊ฐ€ํ•˜์ž.

 

 

์ฝ”๋“œ

#include<stdio.h>

int main(){

	int n, sum=0, k=0;
    
    printf("n๊ฐ’ ์ž…๋ ฅ:");
    scanf_s("%d", &n);
    
    while(sum<=n){
    	k++;		// k++๋ฅผ ๋จผ์ € ์ถ”๊ฐ€ํ•ด์ฃผ์ž. ์ˆœ์„œ ์ค‘์š”!
        sum += k;
	}
    
    // sum๊ฐ’์ด n์„ ์ดˆ๊ณผํ•ด์„œ ๋ฐ˜๋ณต๋ฌธ์„ ์‹คํ–‰ํ•˜์ง€ ์•Š๊ณ  ํƒˆ์ถœํ•œ๊ฒƒ. ์ฆ‰ ์ง์ „ ๋‹จ๊ณ„๋กœ ๋Œ์•„๊ฐ€์ค˜์•ผ ํ•จ.
    
    sum -= k;	// ๋ฐฉ๊ธˆ ๋”ํ•œ k๊ฐ’์„ ์ง€์›Œ์คŒ(k--์ „์— ์‹คํ–‰ํ•ด์•ผ ํ•จ!)
    k--;		// k๋„ ํ•œ ๋‹จ๊ณ„ ์ค„์—ฌ์คŒ
    
    printf("k=%d sum=%d", k, sum);
    
    return 0;
}

 

 

 

์‹คํ–‰๊ฒฐ๊ณผ

 

 

 

 

C์–ธ์–ด, ์‰ฝ๊ฒŒ ํ’€์–ด์“ด C์–ธ์–ด Express , ์—ฐ์†๋œ ์ˆ˜ ๋”ํ•˜๊ธฐ , ๋‹ค ๋”ํ•œ ๊ฐ’ ๊ตฌํ•˜๊ธฐ , ์ค‘๊ฐ„๊ณ ์‚ฌ , ์‹œํ—˜๋Œ€๋น„ , ๊ธฐ์ถœ๋ฌธ์ œ ํ’€์ด

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€