๋ฌธ์ ๋ด์ฉ
ํ์ด ๐โ๏ธ
function solution(n) {
for (i = 2; i < n; i++) {
if (n % i === 1) return i;
}
}
/*
(ํ์ด)
n์ ์ ํ์ฌํญ์ 3~1,000,000์ด๋ฏ๋ก i๋ฅผ 2๋ถํฐ ์์ํด์
for๋ฌธ์ ๋๋ฆฌ๊ณ ๋๋จธ์ง๊ฐ 1์ด๋๋๊ฒฝ์ฐ๊ฐ ๋์ค๋ฉด ๋ฐ๋ก i๋ฅผ return ํ๊ณ ๋ฐ๋ณต๋ฌธ์ ์ข
๋ฃํ๋ค.
๋๋จธ์ง๊ฐ 1์ด ๋๋ ์์ฐ์ x ๋ฅผ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ํ ์๋ ์์๊น ๊ณ ๋ฏผํด ๋ดค๋๋ฐ ์ฐพ์ง ๋ชปํ๋ค๐ค
*/
- ํธ๋ ๋ฐฉ์ ์์ฒด๋ ๊ด์ฐฎ๊ฒ ์ ํ์์ง๋ง for๋ฌธ์ ๋ณ์ i์ let,var ๋ฑ ๋ณ์ํค์๋๋ฅผ ๋ฌ์์ค์ผ ํ๋ ์ด์ ๋ฅผ ๋ชฐ๋๋๋ฐ ์ด๋ฒ์ ์๊ฒ๋์ผ๋ ๊ธฐ๋กํด๋ณด์.
for๋ฌธ์์ let์ ์จ์ค์ผ ํ๋ ์ด์
var : ์ฌ์ ์ธ ๊ฐ๋ฅ, ์ฌํ ๋น ๊ฐ๋ฅ ( ํจ์ ๋ ๋ฒจ ์ค์ฝํ )
let : ์ฌ์ ์ธ ๋ถ๊ฐ๋ฅ, ์ฌํ ๋น ๊ฐ๋ฅ ( ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ )
const : ์ฌ์ ์ธ ๋ถ๊ฐ๋ฅ, ์ฌํ ๋น ๋ถ๊ฐ๋ฅ ( ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ )
์ฌ์ ์ธ
var varTest = 10;
var varTest = 20;
console.log(varTest); // 20
// let
let letTest = 10;
let letTest = 20;
console.log(letTest); // Uncaught SyntaxError: Identifier 'varTest' has already been declared
- var์ ์ฌ์ ์ธ ์ ์๋กญ๊ฒ ์ ์ธํ ๊ฐ์ ์ ์ฅํ๋ค.
- let์ ์ฌ์ ์ธ ์ ์๋ฌ๋ฅผ ๋ฐํํ๋ค.
- const ๋ let๊ณผ ๋์ผ.
- ๋๊ตฐ๊ฐ varTest ๋ผ๋ ๋ณ์๋ฅผ ์ ์ธํด์ ์ฌ์ฉํ๋ค๊ณ ๊ฐ์ ํ์๋, ๊ทธ ๋ง์ ์ฝ๋ ์ค ๋ณธ์ธ์ ๋ชจ๋ฅด๊ณ varTest ๋ผ๋ ๋ณ์๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ์๋ ์๊ณ ๊ทธ๋ก์ธํด ๋ด๊ฐ ์ํ๋ ๊ฐ์ด ๋์ค์ง์๊ณ ์ด๋ ํ ์๋ฌ๋ฅผ ๋ง๋ค์ง ์ ์ ์์ผ๋ฏ๋ก var์ ์ฌ์ฉ์ ์์ ํ๋๊ฒ ์ข๋ค.
์ฌํ ๋น
var varTest = 10;
varTest = 20;
console.log(varTest); // 20;
let letTest = 10;
letTest = 20;
console.log(letTest); // 20;
const constTest = 10;
constTest = 20;
console.log(constTest); // Uncaught TypeError: Assignment to constant variable.
- const ๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ฌํ ๋น ๊ฐ๋ฅํ๋ค.
๋ณธ๋ก ์ผ๋ก ๋์๊ฐ์, ์ let์ ์จ์ค์ผ ํ ๊น?
for (i = 0; i < 5; i++) {
console.log(i); // 0,1,2,3,4
}
console.log(i); // 5
for (let i = 0; i < 5; i++) {
console.log(i); // 0,1,2,3,4
}
console.log(i); // i is not defined
- i ์ let ํค์๋๋ฅผ ์ฌ์ฉํ์ง ์๊ฒ ๋๋ฉด i๋ ์ํ์ง ์์ ์ ์ญ๋ณ์๊ฐ ๋์ด for๋ฌธ ๋ฐ๊นฅ์์๋ ์ฐธ์กฐํ ์ ์๊ฒ ๋๊ณ ๋ง์ง๋ง i++ ์ ์คํํ i = 5 ๊ฐ ๋ฐํ๋๋ค.
- let ํค์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ๋ก ์ธํด ๋ฐ์์๋ ์ฐธ์กฐํ ์ ์๊ฒ๋๋ for๋ฌธ ์์์ ๋ชจ๋ ๊ฒ ๋๋ฉ๋๋ค.
- ์ด ์ฐจ์ด์ ์ ์ ํํ ํ์ ํ์ง ๋ชปํ๋ฉด ๋ด๊ฐ ์ํ๋ ๊ฐ i๊ฐ ์๋ ์ ์ญ๋ณ์๊ฐ ๋์ด๋ฒ๋ฆฐ i๋ก ์ธํด ํผ๋์ด ์ฌ ์์์ผ๋ ๊ผญ! let ํค์๋๋ฅผ ์ฌ์ฉํ์. ( ๋ ์์ธํ ๋ด์ฉ ์ฐธ๊ณ )
'์๊ณ ๋ฆฌ์ฆ & ๋ฌธ์ ํ์ด > Programmers-1' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ ๊ฐ ๋ฝ์์ ๋ํ๊ธฐ (0) | 2022.08.26 |
---|---|
๋ฌธ์์ด ๋ด ๋ง์๋๋ก ์ ๋ ฌํ๊ธฐ (0) | 2022.08.24 |
์์ธ์์ ๊น์๋ฐฉ ์ฐพ๊ธฐ, ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์ (0) | 2022.08.23 |
3์ง๋ฒ ๋ค์ง๊ธฐ (0) | 2022.08.20 |
๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ (0) | 2022.08.19 |