๋ฐ์ํ C ์ธ์ด/๋ฌธ์ ํ์ด19 [C์ธ์ด] ์ฐ๋๊ฐ ์ค๋ ์ธ์ง ํ๋จํ๋ ํ๋ก๊ทธ๋จ, is_leap(int year) ํจ์๋ก ์์ฑ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 8์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 8์ฅ 4๋ฒ๋ฌธ์ (3ํ ๊ฐ์ ํ)์ ํ์ด๋ณด์. ๋ฌธ์ ์ฐ๋ฆฌ๋ ์์์ ์ค๋ ์ ๊ตฌํ๋ ์๊ณ ๋ฆฌ์ฆ์ ํ์ตํ์๋ค. ์ด๊ฒ์ ํจ์ is_leap(int year) ํจ์๋ก ์์ฑํ๊ณ ์ด ํจ์๋ฅผ ์ฌ์ฉํ์ฌ์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ฐ๋๊ฐ ์ค๋ ์ธ์ง๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. ํ์ด ์๊ณ ๋ฆฌ์ฆ์ ๋ค์๊ณผ ๊ฐ๋ค. ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) 4๋ ์ผ๋ก ๋๋์ด๋จ์ด์ง๋๋ฐ 100์ผ๋ก๋ ๋๋์ด๋จ์ด์ง์ง ์๋ ๋ ๋, ๋๋ 400์ผ๋ก ๋๋์ด๋จ์ด์ง๋ ๋ ๋๊ฐ ์ค๋ ์ด๋ค. ์ฝ๋ #include void is_leap(int year) { if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) printf("%d.. 2021. 10. 31. [C์ธ์ด] ์๊ธ์ ๋ถ๋ ์๋์ธ๋ฅผ ๊ณ์ฐํ๋ ํจ์, ์๋์ ์ ๋ ฅ๋ฐ์ ์ธ๊ธ ๊ณ์ฐ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 8์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express (์๋ฅ์ถํ์ฌ) 8์ฅ ์ 4๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ์๊ธ์ ๋ถ๋ ์๋์ธ๋ฅผ ๊ณ์ฐํ๋ ํจ์ get_tax(int income)๋ฅผ ์์ฑํ๊ณ ํ ์คํธํ์ฌ ๋ณด์. ๊ณผํ ๊ตฌ๊ฐ์ 1000๋ง์ ์ดํ 8%, 1000๋ง์ ์ด๊ณผ๋ 10%๋ก ๋์ด ์๋ค๊ณ ๊ฐ์ ํ๋ค. ์ฌ์ฉ์๋ก๋ถํฐ ์๋์ ์ ๋ ฅ๋ฐ์์ ์ธ๊ธ์ ๊ณ์ฐํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. ํ์ด main ํจ์ ๋ด์์ scanf๋ฅผ ํตํด ์๋์ ์ ๋ ฅ๋ฐ๊ณ , ๊ทธ ์ ๋ ฅ๋ฐ์ ์๋์ get_tax(์๋)๋ก ํจ์๋ฅผ ์คํ์์ผ ๋ฐ๋ก printf๋ก ์ถ๋ ฅ์์ผ์ฃผ์. int income์ ๋ฌธ์ ์์ ๋ช ์ํ๋ค๊ณ ํด๋, scanf๋ฅผ ํตํด ๋ฐ์ ๋ณ์๋ช ์ ๊ผญ income์ผ๋ก ๋ช ์ํ ํ์๊ฐ ์๋ค๋ ๊ฒ์ ์์๋์. ํจ์ ์ ์์์๋ง get_tax(int income) ํ์์ ๋ง์ถฐ์ฃผ๋ฉด ๋๊ฒ ๋ค. ํจ์.. 2021. 10. 31. [C์ธ์ด]ํ๋ ์ค์ AC:AE=BC:DE ๊ตฌํ๋ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 5์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 5์ฅ 9๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ๊ทธ๋ฆฌ์ค ์ต์ด์ ์ํ์์ด์ ์ฒ๋ฌธํ์์ธ ํ๋ ์ค๋ ์งํก์ด ํ๋๋ก ํผ๋ผ๋ฏธ๋์ ๋์ด๋ฅผ ์ฌ์๋ค๊ณ ํ๋ค. ํ๋ ์ค๋ ์งํก์ด๋ฅผ ๋๋ฐ๋ก ๋ ์ ์ธ์ฐ๊ณ ์งํก์ด๋ฅผ ์์ง์ฌ์ ์งํก์ด์ ๊ทธ๋ฆผ์์ ํผ๋ผ๋ฏธ๋์ ๊ทธ๋ฆผ์๋ฅผ ์ผ์น์์ผฐ๋ค. ์ผ๊ฐํ ABC์ ์ผ๊ฐํ ADE๋ ๋ฎ์๊ผด์ด๋ฏ๋ก ๋ค์์ ์์์ด ์ฑ๋ฆฝํ๋ค. AC : AE = BC : DE ๋ฐ๋ผ์ AC์ AE, BC๋ฅผ ์๋ค๋ฉด DE๋ฅผ ๊ณ์ฐํ ์ ์๋ค. AC์ AE, BC๋ฅผ ์ ๋ ฅํด์ DE๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. ์ ๋ ฅ๋๋ ์์น๋ ๋ชจ๋ ์ค์๋ก ํ๋ค. ํ์ด ์งํก์ด์ ๋์ด๊ฐ BC, ๊ทธ๋ฆผ์์ ๊ธธ์ด๊ฐ AC, ํผ๋ผ๋ฏธ๋๊น์ง์ ๊ฑฐ๋ฆฌ๊ฐ AE์ด๋ค. ์ ๋น๋ก์์ ์คํ๊ต ๋ ๋ฐฐ์ด ๋ดํญ์ ๊ณฑ = ์ธํญ์ ๊ณฑ ์ ์ด์ฉํ์. ์งํก์ด์ ๋์ด * ํผ๋ผ๋ฏธ๋ ๊ฑฐ๋ฆฌ /.. 2021. 10. 12. [C์ธ์ด] ๊ฐ์ ๋ฐ์ ๋ณด ๊ฒ์ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 6์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 6์ฅ 4๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ๊ฐ์ ๋ฐ์ ๋ณด ๊ฒ์ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๋ฉด ๋๋ ๋ฌธ์ ์ด๋ค. ๊ฐ์๋ฐ์๋ณด์ ๊ฒฝ์ฐ์ ์๋ฅผ ๋จผ์ ์๊ฐ ํด ๋ณธ ํ, ๊ทธ ๊ฐ ๊ฒฝ์ฐ์ ์์ ๋ฐ๋ผ ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ผ๋ก ํ์ด๋ณธ๋ค. ์ปดํจํฐ์ ๊ฐ์, ๋ฐ์, ๋ณด ๊ฒ์์ ํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. ์ปดํจํฐ๋ ์ฌ์ฉ์์๊ฒ ์๋ฆฌ์ง ์๊ณ ๊ฐ์, ๋ฐ์, ๋ณด ์ค์์ ์์๋ก ํ๋๋ฅผ ์ ํํ๋ค. ์ฌ์ฉ์๋ ํ๋ก๊ทธ๋จ์ ์ ๋ ฅ ์๋ด ๋ฉ์์ง์ ๋ฐ๋ผ์, 3๊ฐ ์ค์์ ํ๋๋ฅผ ์ ํํ๊ฒ ๋๋ค. ์ฌ์ฉ์์ ์ ํ์ด ๋๋๋ฉด ์ปดํจํฐ๋ ๋๊ฐ ๋ฌด์์ ์ ํํ์๊ณ ๋๊ฐ ์ด๊ฒผ๋์ง, ๋น๊ฒผ๋์ง๋ฅผ ์๋ ค์ค๋ค. HINT : ์ฌ์ฉ์์ ์ ํ๊ณผ ์ปดํจํฐ์ ์ ํ์ ์ฐ์์ ์ธ if-else๋ก ๋น๊ตํ๋ค. rand() % 3 + 1 ์ผ๋ก 1๋ถํฐ 3์ฌ์ด์ ๋์๋ฅผ ๋ฐ์ํ์ฌ์ ์ปดํจํฐ์ ์ ํ์ผ๋ก ํ๋ค. ํ.. 2021. 10. 12. [C์ธ์ด]2์ 100์ฌ์ด์ ์๋ ๋ชจ๋ ์์(prime number)๋ฅผ ์ฐพ๋ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ 7๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. 2์ 100์ฌ์ด์ ์๋ ๋ชจ๋ ์์(prime number)๋ฅผ ์ฐพ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. ์ ์๊ฐ ์์๊ฐ ๋๋ ค๋ฉด 1๊ณผ ์๊ธฐ ์์ ๋ง์ ์ฝ์๋ก ๊ฐ์ ธ์ผ ํ๋ค. HINT : ์์์ ์ฝ์๋ 1๊ณผ ์๊ธฐ์์ ๋ฟ์ด๋ค. ๋ฐ๋ผ์ 1๋ถํฐ ์๊ธฐ ์์ ์ฌ์ด์ ์ฝ์๊ฐ ํ๋๋ผ๋ ์๋ค๋ฉด ์์๊ฐ ์๋๋ค. ํ์ด ์ด์ ์ boolean์ ๊ฐ๋ ์ ๋ํด ๋ฐฐ์ ์๋๋ผ๋ฉด true์ false๋ฅผ ์ด์ฉํด๋ ๋์ ๊ฒ์ด๋ค. ๊ทธ๋ฌ๋ boolean์ ๋ํด ์์ง ๋ฐฐ์ฐ์ง ์์ stdbool.h ํค๋ํ์ผ์ ์ฌ์ฉํ ์ ์์ผ๋ฏ๋ก, ์์์ธ์ง ์๋์ง๋ฅผ ๊ตฌ๋ถํ๋ ๊ฒ์ 1๊ณผ 0์ผ๋ก ํ์. while(1)์์๋ 1์ ์์ฑํ๋ฉด ๋ฌดํ๋ฃจํ๋ฅผ ๋๋ฏ์ด, ๋ณดํต 1์ด true๋ฅผ ๋ปํ๊ณ 0์ด false๋ฅผ ๋ปํ๋ค. i๋ก 2๋ถํฐ 1์ฉ ์ฆ.. 2021. 10. 12. [C์ธ์ด](1+2+...+n)๊ฐ 10000์ ๋์ง ์์ผ๋ฉด์ ๊ฐ์ฅ ํฐ ๊ฐ๊ณผ n ๊ฐ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ 9๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. (1+2+3+...+n)๊ฐ 10000์ ๋์ง ์์ผ๋ฉด์ ๊ฐ์ฅ ํฐ ๊ฐ๊ณผ ๊ทธ ๋์ n์ ๊ฐ์ ๊ตฌํ๋ผ. HINT : ๋ฌดํ ๋ฃจํ๋ฅผ ์คํํ๋ฉด์ sum์ i์ ๊ฐ์ ๋ํ๋ค. ๋ฐ๋ณตํ ๋๋ง๋ค i๋ 1์ฉ ์ฆ๊ฐ๋๋ค. sum์ด 10000์ ๋์ผ๋ฉด sum์์ i๋ฅผ ๋นผ๊ณ i๋ฅผ ๊ฐ์์ํจ ํ์ break๋ฅผ ์คํํ๋ค. ํ์ด i๋ฅผ 1๋ถํฐ ๋ฐ๋ณต์ํค๋๋ฐ, n์ด ๋ช ๊น์ง ๊ฐ์ค ๋ชจ๋ฅด๋ฏ๋ก ๋จ์ํ ๋ฌดํ๋ฃจํ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ํธํ๋ฐ, ์ด๋ for๋ณด๋ค while(1)์ ์ข ์ข ์ฌ์ฉํ๋ค. ๊ทธ๋ฆฌ๊ณ 10000์ด ๋์ผ๋ฉด break๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด๋ณด์. ์ฝ๋ #include int main(void) { int i = 0, sum = 0; while (1) { i++; sum += .. 2021. 10. 12. [C์ธ์ด] ํผ๋ณด๋์น ์์ด ์์ฑํ์ฌ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ ๋ช ํ c์ธ์ด ํ๋ก๊ทธ๋๋ฐ => ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express (์๋ฅ์ถํ์ฌ) 7์ฅ ์ 12๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ํผ๋ณด๋์น ์์ด์์๋ ์์ 2๊ฐ์ ์์๋ฅผ ํฉํ์ฌ ๋ค์ ์์๋ฅผ ๋ง๋ ๋ค. ํผ๋ณด๋์น ์์ด์ ์ปดํจํฐ์์๋ ํ์ ๋ฌธ์ ๋ฑ์ ์ฌ์ฉ๋๊ธฐ๋ ํ๋ค. ํผ๋ณด๋์น ์์ด์ ์์ฑํ์ฌ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ฌ ๋ณด์. ํ์ด ๋ ์๋ฅผ ๋ํด์ผํ๊ธฐ ๋๋ฌธ์ ๋ ์๋ฅผ a์ b๋ก ๋๊ณ , ์ฒซ ์์์ ๋ฌด์กฐ๊ฑด 0๊ณผ 1์ด๋ฏ๋ก a=0, b=1๋ก ์ด๊ธฐํํด์ค๋ค. ๋ ์๋ฅผ ๋ํ ๊ฐ์ ๋ ๋ค์ ์๋ฅผ ๋ํ ๋ ์ฌ์ฉํด์ผํ๋ฏ๋ก ๋ณ์ c๋ก ์ ์ฅ ํด ์ค ๊ฒ์ด๋ค. ๋ช ๋ฒ์งธ ํญ๊น์ง ๊ตฌํด์ผํ๋์ง๋ ๋ฐ์์ ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํด์ฃผ์ด์ผํ๋ฏ๋ก n์ผ๋ก ๋ฐ์์ฃผ์. ์ฝ๋ #include int main(void) { int a=0, b=1, c, n; printf("๋ช๋ฒ์งธ ํญ๊น์ง.. 2021. 10. 12. [C์ธ์ด] ์๋ก ๋ค๋ฅธ n๊ฐ์์ r๊ฐ ์์ด์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ์ 13๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ์๋ก ๋ค๋ฅธ n๊ฐ์์ r๊ฐ๋ฅผ ํํ์ฌ ์ผ๋ ฌ๋ก ๋์ดํ๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ์์ด(permulation)์ด๋ผ ํ๊ณ , nPr๋ก ํ์ํ๋ค. ์์ด์ ๋ค์๊ณผ ๊ฐ์ ์์ ์ด์ํ์ฌ ๊ตฌํ ์ ์๋ค. ์์ด์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. n๊ณผ r์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ ์๋๋ก ํ๋ผ. HINT : for(i=n;i>=(n-r+1);i--) ์คํ์ผ์ ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ ๊ฒ์ด ํธ๋ฆฌํ๋ค. ๋ถ๋ฑํธ์ ๋ฐฉํฅ์ ์ฃผ์ํ๋ผ. ํ์ด ์ต์๊ฐ์ด n์ด๊ณ ์ต๋๊ฐ์ด (n-r+1)์ธ ๊ฒ๊ณผ, 1์ฉ ๊ฐ์ ๋นผ๋ฉด์ ๊ณฑํ๋ ๊ฒ์ ๋ฐ๋ณตํ๋ฏ๋ก ์กฐ๊ฑด๋ฌธ์ for(n๋ถํฐ n-r+1๊น์ง 1์ ๋นผ๋ฉด์) ๋ก ์์ฑํด์ฃผ๋ฉด ๋๊ฒ ๋ค. ์ด๊ฒ์ ํํธ์๋ ์ ํ์์ผ๋ ์ฐ๋ฆฌ๊ฐ ํ ๊ฒ์ ๊ทธ์ ์ถ๋ ฅ๋ฌธ์ ์์ฑํด์ฃผ๋ ๊ฒ ๋ฟ์ธ ๊ฒ์ด๋ ๋ค๋ฆ์๋ค! ์๋ง .. 2021. 10. 12. [C์ธ์ด]์ ์์ ์๋ฆฌ์๋ฅผ ๋ฐ๋๋ก ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ do...while : ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ ์ฝ๊ฒ ํ์ด์ด C์ธ์ด Express 7์ฅ์ 14๋ฒ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์. ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ํน์ ํ ์ ์์ ์๋ฆฌ์๋ฅผ ๋ฐ๋๋ก ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ. do...while ๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ณด๋ผ. ํ์ด ๋ช์ ์๋ฆฌ์๋ฅผ ์ ๋ ฅํ๋ 10์ผ๋ก ๋๋๋ฉด 1์ ์๋ฆฌ๊ฐ ๋๋จธ์ง๋ก ๋จ๊ฒ๋๋ค. ๊ทธ๋ผ ๋๋จธ์ง ์ฐ์ฐ์ %๋ฅผ ์ด์ฉํด์ 1์์๋ฆฌ ์ซ์๋ฅผ ๊ตฌํ๊ณ , ์ ๋ ฅ๋ฐ์ ์ซ์๋ฅผ 10์ผ๋ก ๋๋๊ธฐ์ฐ์ฐ์ /๋ฅผ ์ด์ฉํด์ 1์ ์๋ฆฌ๋ฅผ ๋จ์ด๋จ๋ฆฐ๋ค.(์ค๋ฅธ์ชฝ์ผ๋ก ํ์นธ ์ฉ ์๋ฆฌ์๋ฅผ ์ฎ๊ธด๋ค) ๋ค์ 10์ผ๋ก ๋๋จธ์ง์ฐ์ฐ์ %๋ฅผ ์ด์ฉํด์ ์๋ก์ด 1์์๋ฆฌ ์ซ์๋ฅผ ๊ตฌํ๊ณ , 10์ผ๋ก ๋๋ ์ 1์ ์๋ฆฌ๋ฅผ ๋ฐ๊พผ๋ค. ์ด๊ฒ์ ๋ฐ๋ณตํ๋ฉด ๋ค์์๋ถํฐ ์ซ์๋ฅผ ์ถ๋ ฅํ๊ธฐ๋๋ฌธ์ ์๋ฆฌ์๋ฅผ ๋ฐ๊ฟ ๋ฐ๋๋ก ์ถ๋ ฅํ ์ ์๊ฒ ๋๋ค. ์ฝ๋ #include int main(void) { int x, digit.. 2021. 10. 12. ์ด์ 1 2 3 ๋ค์ 728x90 ๋ฐ์ํ