-
[JS 100์ ] ๋ฌธ์ 10 - ๋ณ ์ฐ๊ธฐ๐ develop/CodingTest 2022. 10. 18. 15:14
๋ฌธ์
ํฌ๋ฆฌ์ค๋ง์ค ๋ , ์๋น๋ ์น๊ตฌ๋ค๊ณผ ํจ๊ป ํํฐ๋ฅผ ํ๊ธฐ๋ก ํ์ต๋๋ค. ๊ทธ๋ฐ๋ฐ, ํฌ๋ฆฌ์ค๋ง์ค ํธ๋ฆฌ๋ฅผ ์ฌ๋ ๊ฒ์ ๊น๋นกํ๊ณ ๋ง์์ต๋๋ค. ์จ ๊ฐ๊ฒ๋ฅผ ๋์๋ค๋ ๋ดค์ง๋ง ํฌ๋ฆฌ์ค๋ง์ค ํธ๋ฆฌ๋ ๋ชจ๋ ํ์ ์ด์์ต๋๋ค. ํ๋ ์ ์์ด ์๋น๋ ํ๋ก๊ทธ๋๋ฐ์ผ๋ก ํธ๋ฆฌ๋ฅผ ๋ง๋ค๊ธฐ๋ก ํฉ๋๋ค.
์๋น๋ฅผ ์ํด ํ๋ก๊ทธ๋จ์ ์์ฑํด ์ฃผ์ธ์.
์ ๋ ฅ 5 ์ถ๋ ฅ * *** ***** ******* *********
๋์ ํ์ด
์ ๋ต์
// ๋ณ์ ์ค์ const num = prompt("ํธ๋ฆฌ์ ๊ธธ์ด๋ฅผ ์ ๋ ฅํ์ธ์", "5"); // tree ๋ง๋ค๊ธฐ! for (let i = 1; i <= num; i++) { let tree = ""; // ๋ณ์ ์ด๊ธฐํ๋ฅผ for ๋ฌธ ์์ // ๊ณต๋ฐฑ ๋ง๋ค๊ธฐ! for (let s = 1; s <= num - i; s++) { tree += " "; } // ๋ณ ๋ง๋ค๊ธฐ! for (let j = 1; j <= i * 2 - 1; j++) { tree += "*"; } console.log(tree); }
์ด๋ค.
๋ฌธ์ ๋ฅผ ํ์ด๋ธ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ๋ค.
1. ๋ฌธ์ ๋ถ์ ๋ฐ ๋ณ์ ์ค์
์ฒ์ ํธ๋ฆฌ์ ์ฆ๊ฐํญ์ ์ดํด๋ณด์. ์ ๋ ฅ๋ฐ์ ๊ฐ์ผ๋ก ํธ๋ฆฌ ๊ธธ์ด๊ฐ ๊ฒฐ์ ๋๋ฉฐ, ํ๋ฒ์ 2์ฉ ์ฆ๊ฐ๋๊ณ ์๋ค.
๊ธธ์ด๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ณ์์, tree ๋ณ์๋ฅผ ์ค์ ํด์ค๋ค.
const num = prompt("ํธ๋ฆฌ์ ๊ธธ์ด๋ฅผ ์ ๋ ฅํ์ธ์", "5"); let tree = "";
2. for ๋ฌธ
ํฐ for ๋ฌธ์ ๋ง๋ค์ด ์ ๋ ฅ๋ฐ์ number ๋งํผ for๋ฌธ์ ๋๋ฆฐ๋ค. (ํธ๋ฆฌ์ ๊ธธ์ด)
for (let i = 1; i <= num; i++) { console.log("*"); } // ๊ฒฐ๊ณผ * * * * *
3. ๋ณ์ฐ๊ธฐ
๋ณธ๊ฒฉ์ ์ผ๋ก ๋ณ์ ์ฐ๋ ์ค์ฒฉ for ๋ฌธ์ ์์ฑํด์ค๋ค. ๋ณ์ ์ด๊ธฐํ๋ฅผ for ๋ฌธ ๋ด๋ถ์ ์ค์ ํด์ฃผ์ด, i ๊ฐ์ด ์ฆ๊ฐ๋ ๋๋ง๋ค ์ด๊ธฐํ๋ฅผ ์์ผ์ฃผ๊ฒ ํ์๊ณ , ์ฆ๊ฐ ํญ์ด 2์ฉ ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ์ *2๋ฅผ ํด์ฃผ๋, ์ฒ์ ๊ฐ์ด 2๋ก ์์๋๊ธฐ ๋๋ฌธ์ -1์ ํด์ฃผ์๋ค.
for (let i = 1; i <= num; i++) { let tree = ""; // ๋ณ์ ์ด๊ธฐํ๋ฅผ for๋ฌธ ๋ด๋ถ์ ์ค์ ํด์ฃผ์ด, i ๊ฐ์ด ์ฆ๊ฐ๋ ๋๋ง๋ค ์ด๊ธฐํ๋ฅผ ์์ผ์ค๋ค. // ๋ณ ๋ง๋ค๊ธฐ! for (let j = 1; j <= i * 2 - 1; j++) { // (* 2 - 1) ์ ํด์ฃผ์ด ์ฒ์ ์์์ 1 ๋ถํฐ ์์ํ ์ ์๊ฒ ํ์๋ค. tree += "*"; } console.log(tree); } // ๊ฒฐ๊ณผ * *** ***** ******* *********
3. ๊ณต๋ฐฑ์ฐ๊ธฐ
ํธ๋ฆฌ๋ฅผ ๊ฐ์ด๋ฐ๋ก ๋ฐฐ์นํ๊ธฐ ์ํด์ ๊ณต๋ฐฑ์ ์ถ๋ ฅํ๋ for๋ฌธ์ ํ๋ ๋ ๋ง๋ค์ด์ค๋ค. ๊ณต๋ฐฑ s ๋ ๊ฐ ์๋ก ์ ์ด์ ธ์ผ ํ๊ธฐ ๋๋ฌธ์, num - i ๋ฅผ ํตํด ์ ์ฒด๋ฅผ ๋๋ ํฐ for๋ฌธ์ ์ฆ๊ฐํ๋ ๊ฐ i ์ฉ ๋นผ์ฃผ์๋ค.
// ๋ณ์ ์ค์ const num = prompt("ํธ๋ฆฌ์ ๊ธธ์ด๋ฅผ ์ ๋ ฅํ์ธ์", "5"); // tree ๋ง๋ค๊ธฐ! for (let i = 1; i <= num; i++) { let tree = ""; // ๊ณต๋ฐฑ ๋ง๋ค๊ธฐ! for (let s = 1; s <= num - i; s++) { tree += " "; } // ๋ณ ๋ง๋ค๊ธฐ! for (let j = 1; j <= i * 2 - 1; j++) { tree += "*"; } console.log(tree); } // ๊ฒฐ๊ณผ * *** ***** ******* *********
์ ๋ต
const n = prompt('์ซ์๋ฅผ ์ ๋ ฅํ์ธ์.'); let tree = ''; for(let i=1; i<=n; i++){ let star = ''; for(let j=1; j<=n-i; j++){ star += ' '; } for(let k=1; k<=2*i-1; k++){ star += '*'; } tree += star + '\n'; } console.log(tree);
for๋ฌธ๊ณผ ๊ฐ์ ๊ฒฝ์ฐ๋ ๋น์ทํ๋ค. ๋ค๋ฅธ์ ์ tree๋ฅผ ์ ์ญ๋ณ์๋ก ์ค์ ํด์ฃผ์ด for๋ฌธ ๋ฐ๊นฅ์์ console๋ก ์ถ๋ ฅํ๋๋ก ๋ง๋ ๊ฒ์ด๋ค.'๐ develop > CodingTest' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS 100์ ] ๋ฌธ์ 12 - ๊ฒ์ ์บ๋ฆญํฐ ํด๋์ค ๋ง๋ค๊ธฐ (0) 2022.10.19 [JS 100์ ] ๋ฌธ์ 11 - for๋ฅผ ์ด์ฉํ ๊ธฐ๋ณธ ํ์ฉ (0) 2022.10.19 [JS 100์ ] ๋ฌธ์ 9 - concat์ ํ์ฉํ ์ถ๋ ฅ ๋ฐฉ๋ฒ (0) 2022.09.28 [JS 100์ ] ๋ฌธ์ 8 - ๊ฐ์ฒด์ ํค ์ด๋ฆ ์ค๋ณต (0) 2022.08.01 [JS 100์ ] ๋ฌธ์ 7 - ๋ณ์๋ช (0) 2022.07.29