-
06. 369 ๊ฒ์ ํ๋ก๊ทธ๋๋ฐ
369 ๊ฒ์ ํ๋ก๊ทธ๋๋ฐ! C๋ก๋ ํด๋ดค๋ ๋ฌธ์ ๋ค.
(1)์ ์๋ฌด ์๊ฐ ์์ด ํ์๋๋ฐ (2)๋ ์ด๋ป๊ฒ ํ์ด์ผ ์ข ๋ ํจ์จ์ ์ธ์ง ๊ณ ๋ฏผํ๋ ๊ฒ ๊ฐ๋ค.
(1)
def game369(x): if(x%3==0 or x%6==0): #rule 2 print("์ง", end="") return else: y=x while x!=0: if(x%10==3 or x%10 == 6 or x%10==9): #rule 1 print("์ง", end="") return x /= 10 print(y, end="") return
1์ ์ฝ๊ฐ C ์คํ์ผ๋ก ํผ ๊ฒ ๊ฐ๋ค. ์ผ๋ ฌ๋ก ์ถ๋ ฅํ๊ธฐ ์ํด print ์์ ์ธ์๋ก end=""์ ๋ฃ์๋ค.
๋ ๋ฒ์งธ ์กฐ๊ฑด(3, 6, 9์ ๋ฐฐ์)์ด ์ข ๋ ํฌ์ฉ์ฑ? ์ด ํฐ ๊ฑฐ ๊ฐ์์ ์์ ๋ฃ์๋ค. 9์ ๋ฐฐ์๋ 3์ ๋ฐฐ์์ด๋ฏ๋ก 3๊ณผ 6์ ๋ฐฐ์๋ง ๊ฒ์ฌํ๋๋ก ํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฐฐ์๊ฐ ์๋ ์๋ค์ ํํด์ 3, 6, 9๊ฐ ํฌํจ๋์๋์ง ๊ฒ์ฌํ๋๋ก ํ๋ค.
ํ์ C๋ก ํ๋ ๋๋ก 10์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ฒ์ฌํ๋๋ฐ ์๊ฐํด๋ณด๋ ํ์ด์ฌ์์๋ ์กฐ๊ธ ๋ ์ข์ ํ์ด๊ฐ ์์๋ค. ํ์ด (2)์์ ๊ณต๊ฐํ๊ฒ ๋ค.
for i in range(1, 31): if(i!=1): print("/", end="") game369(i)
1/2/์ง/4/5/์ง/7/8/์ง/10/11/์ง/์ง/14/์ง/์ง/17/์ง/์ง/20/์ง/22/์ง/์ง/25/์ง/์ง/28/์ง/์ง ๋งจ ์ฒ์์ '/'์ด ์ถ๋ ฅ๋์ง ์๋๋ก ํ๊ธฐ ์ํด์ ์ ์กฐ๊ฑด์ ๋ฃ์ด ์ฃผ์๋ค.
(2)
for i in range(1, 31): if(i!=1): print("/", end="") Two = (lambda x : x%3==0 or x%6==0) y = [int(j) for j in str(i)] y = list(filter((lambda x:x%3!=0 or x==0), y)) if((lambda x:Two(x) or len(y)!=len(str(x)))(i)): print('์ง', end="") else: print(i, end="")
1/2/์ง/4/5/์ง/7/8/์ง/10/11/์ง/์ง/14/์ง/์ง/17/์ง/์ง/20/์ง/22/์ง/์ง/25/์ง/์ง/28/์ง/์ง ์์ ์ ์ฒด์ ์ธ ๋ ผ๋ฆฌ๋ ๋น์ทํ๋ ์์ 3, 6, 9๊ฐ ํฌํจ๋๋์ง ๊ฒ์ฌํ๋ ๋ถ๋ถ์ด ๋ง์ด ๋ฐ๋์๋ค.
python์์๋ ์ซ์๋ฅผ ๋ฌธ์์ด๋ก ๋๋ฆด ์ ์๋ค! ๊ทธ๋์ str์ ์ด์ฉํด์ ๋ฌธ์์ด๋ก ๋ฐ๊พผ ํ, ๋ฌธ์์ด ํ๋ํ๋๋ฅผ ๋ค์ int๋ก ๋ฐ๊ฟ์ฃผ์๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ ๋ฆฌ์คํธ๋ฅผ filter๋ฅผ ์ด์ฉํด ๋๋ฆฌ๋ฉด์ 3์ ๋ฐฐ์ (3, 6, 9)๊ฐ ์๋ ์๋ก๋ง ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค๊ฒ ํ๋ค. ํนํ, 0 ๊ฐ์ ๊ฒฝ์ฐ์๋ 3์ ๋ฐฐ์๋ก ๊ฑธ๋ ค๋ฒ๋ ค์, 10, 20 ๊ฐ์ ์๊ฐ ์ ๋งคํด์ง๋ค. ๊ทธ๋์ 0์ ์์ธ๋ก ์ฒ๋ฆฌํด ์ฃผ์๋ค.
์๋ if๋ฌธ์ ํตํด ๋ฐ์๋ฅผ ์น ์ง, ์ซ์๋ฅผ ๋งํ ์ง ๊ฒฐ์ ํ๊ฒ ๋๋๋ฐ ์ฒซ๋ฒ์งธ ์กฐ๊ฑด์ 3, 6, 9๊ฐ ๊ฑธ๋ฌ์ ธ ๋ฒ๋ฆฐ ์ซ์์ ๊ฐ์ ์ฐจ์ด๋ฅผ ์ด์ฉํ๋ค.
๊ทธ๋ฐ๋ฐ ๋ค ํ์ด๋ณด๋๊น ๋ฒ์๊ฐ 0๋ถํฐ 30๊น์ง์๋ค... ๊ทธ๋ฌ๋ฉด lambda๋ฅผ ์ด์ฉํ ํ์ด๊ฐ ์ ๋งคํด์ง๋ค.(ใ ใ ) ๊ทธ ๋ถ๋ถ์ ๋์ค์ ๋ค์ ํด๋ด์ผ๊ฒ ๋ค...
'๐STUDY > ๐๋คํ (dafit.me)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DF913] 08. ์ํ๋ฒณ ๋์ฝ๋ฉ (0) 2020.02.11 [DF913] 07. ๋ณ์ฐ๊ธฐ ํผํฉ (0) 2020.02.11 [DF913] 05. ๋์๋ฌธ์ ๋ณํ (0) 2020.02.10 [DF913] 04. Lambda๋ฅผ ๋น๋กฏํ ์ฌ๋ฌ ํจ์ (0) 2020.02.10 [DF913] 03. ๋ ๋ฒ์งธ๋ก ๊ฐ์ฅ ํฐ ์ (0) 2020.02.10 ๋๊ธ