โก๏ธ ๋ฐ๋ณต๋ฌธ(for)๋ฌธ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
โก๏ธ num1์ด num2๋ณด๋ค ์์ง ์์ ์๋ ์์ต๋๋ค.
โก๏ธ 0์ 2์ ๋ฐฐ์๊ฐ ์๋๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ
Math.max()
๋ฅผ ์ฌ๋ฌ ๋ฒ ์ฌ์ฉํด์ ํ์ด๋ดค๋๋ฐ ์ ํ๋ ค์ reference๋ฅผ ์ฐธ๊ณ ํ๋ค.
function makeMultiplesOfDigit2(num1, num2) {
let count = 0;
let start = num1;
let end = num2;
if (num1 > num2) {
start = num2;
end = num1;
}
if (start === 0) {
start = 1;
}
for (let i = start; i <= end; i++) {
if (i % 2 === 0) { // ๋ง์ฝ ์์์ start๊ฐ 0์ผ ๋ 1๋ก ๋ฐ๊พธ์ง ์์๋ค๋ฉด 0 % 2 === 0 ์ด ์ฑ๋ฆฝํ๋ฏ๋ก 0๋ 2์ ๋ฐฐ์๋ก count.
count += 1; // -> ์์์ start๋ฅผ 1๋ก ๋ฐ๊พธ๋ ์ด์ . ๊ทธ๋์ผ 0์ 2์ ๋ฐฐ์๋ ์ธ์ง ์์ผ๋ฏ๋ก.
}
}
return count;
}
if (start === 0) { start = 1; }
์ด ๋ถ๋ถ์ด ์ ์๋์ง ์ฒ์์ ์ ์ ์์๋๋ฐ ์ด ๋ถ๋ถ์ ๋นผ๊ณ ์คํ์ํค๋๊น ๊ฒ์ ์๋ฌ๊ฐ ๋์ ์ดํดํ๋๋ฐ ์กฐ๊ธ ์๊ฐ์ด ๊ฑธ๋ ธ๋ค.
0์ 2๋ก ๋๋ด์ ๋ ๋๋จธ์ง๊ฐ 0์ด๋ฏ๋ก 2์ ๋ฐฐ์๋ก ์ธ๊ฒ ๋๋๋ฐ 0์ 2์ ๋ฐฐ์๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์์๋ก 1๋ก ๋ฐ๊ฟ ๋๋จธ์ง๊ฐ 0์ด ๋์ง ์๋๋ก ํด์ค ๊ฒ.
// ์์: 1๊ณผ ์๊ธฐ ์์ ์ด์ธ์๋ ์์ฐ์๋ก ๋๋ ์ ์๋, ๋์ 1๋ณด๋ค ์ปค์ผํจ.
// 1. 1๋ณด๋ค๋ ์ปค์ผ ํ๋ค.
// 2. ์ง์ ์ ์ธ(๋จ, 2๋ ์์)
// 3. 3๋ถํฐ ์๊ธฐ ์์ ๋ณด๋ค ์์ ์๊น์ง ๋๋์ด ๋จ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ๋จ ํ ์ฐจ๋ก๋ผ๋ ์์ผ๋ฉด ๊ทธ๊ฑด ์์๊ฐ ์๋๋ค.
// num์ (3~num)์ผ๋ก ๋๋์ด์ ๋๋จธ์ง๊ฐ 0์ธ๊ฒ ํ๋๋ผ๋ ์์ผ๋ฉด, ์์๊ฐ ์๋๋ค.
// ++ ๋ฐ๋ณต์ ์กฐ๊ธ ๋ ๋ ํ๋ ๋ฐฉ๋ฒ -> ์ ๊ณฑ๊ทผ(Math.sqrt())์ผ๋ก ๋๋ ์ ๋จ์ด์ง๋ค๋ฉด? ๊ทธ๋ผ ์ด๋ฏธ ์์๊ฐ ์๋.
function isPrime(num) {
for(let i=2; i<num; i++) {
if(num % i === 0) return false;
}
// 1์ด์์ ์์ฐ์๋ฅผ ์
๋ ฅ๋ฐ์ง๋ง 1์ ์์๊ฐ ์๋๊ธฐ ๋๋ฌธ์ false return
if (num === 1) return false;
return true;
}
โก๏ธ ์ด์ค ๋ฐ๋ณต๋ฌธ(double for loop)์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
โก๏ธ ๋น ๋ฌธ์์ด์ ์
๋ ฅ๋ฐ์ ๊ฒฝ์ฐ์๋ ๋น ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
function makePermutations(str) {
// ์
๋ ฅ: string ํ์
์ ๋ฌธ์์ด ex) '123'
// ์ถ๋ ฅ: ํด๋น ๋ฌธ์์ด์ ๋ฑ์ฅํ๋ ๊ฐ ๋ฌธ์(letter)๋ฅผ ๊ฐ์ง๊ณ ๋ง๋ค ์ ์๋ ๊ธธ์ด 2์ ๋ฌธ์์ด
// ex) '11,12,13,21,22,23,31,32,33'
// ๋ณ์ ์ ์ธ ๋น ๋ฌธ์์ด ํ ๋น
// ๋ฐ๋ณต๋ฌธ 2๋ฒ ๋๋ฆฐ๋ค.
// ์ฒซ๋ฒ์งธ ๋ฐ๋ณต๋ฌธ: ๊ธธ์ด 2์ ๋ฌธ์์ด ์ค์์ ์ฒซ๋ฒ์งธ ๋ฌธ์
// ๋๋ฒ์งธ ๋ฐ๋ณต๋ฌธ: ๊ธธ์ด 2์ ๋ฌธ์์ด ์ค์์ ๋๋ฒ์งธ ๋ฌธ์
let result = '';
for (let i=0; i < str.length; i++) { // 1๋ฒ์งธ ๋ฌธ์
for (let j=0; j < str.length; j++) { // 2๋ฒ์งธ ๋ฌธ์
result = result + `${str[i]}${str[j]},`
}
}
return result.slice(0, result.length-1); // 0~๋ง์ง๋ง ๋ฌธ์ ์ ๊น์ง ์ถ๋ ฅ (๋ง์ง๋ง ๋ฌธ์ ','๋ ์์ด์ผ ํ๋ฏ๋ก.)
// result.length-1: ๋ฌธ์์ด ๋ง์ง๋ง ๋ฌธ์.
}