devlog_owen
231023 TIL) FOR,WHILE 반복문 개념정리 본문
728x90
오늘 프로그래머스 코딩테스트 문제풀다가 내가 반복문 개념이 부족하다는 것을 알게되었다. 내친김에 정리한다.
1)FOR
for (let i = 1; i <= 10; i++) {
console.log(i);
}
0~9까지의 숫자를 출력하는 FOR 반복문. for구문은 초기값, 조건식, 증감식을 사용해 반복횟수를 제어한다. ( for (let i = 1; i <= 10; i++))
let numbers = [1,2,3,4,5]
for (let i = 0; i < numbers.length; i++) {
console.log(numbers[i]);
}
배열과 함께 사용하는 for문이다. for (let i = 0; i < numbers.length; i++)이부분은 numbers의 배열수만큼 i를 반복해서 뽑아낸다. numbers.length보다 i가 작을때까지 반복되서 실행되니까 결과적으로 1,2,3,4,5가 출력된다.
배열과 for문은 짝꿍이니까 기억해두기.
const person = {
name: 'John',
age: 30,
job: 'Engineer'
};
for (let key in person) {
console.log(key + ': ' + person[key]);
}
for...in 구문. 객체속성을 출력하는 방법이다.
위 예문에서는 객체 person의 속성(프로퍼티)를 출력한다. 헷갈리지 말아야할것은 console.log(key + ': ' + person[key]); 여기서 person[key]가 value값을 뽑아내는 것이란 거다. (왠지 (person[value])로 적어야할거같음...나만그런가 히히)
2)while
let i = 1;
while (i <= 10) {
console.log(i);
i++;
}
조건이 참인 경우에만 코드를 반복해서 실행한다.
function solution(n) {
let pizzabox=6
while (pizzabox % n !==0){
pizzabox += 6
}
return pizzabox/6
}
오늘 내가 코테에서 푼 문제다. while반복문을 통해 값이 참인경우에만 실행된다는 점을 이용해서 !==0 을 참인 조건으로 만들고 0으로 나누어 떨어지면 실행을 멈추게 해서 답을 구했다.
const solution = (n) => {
let piece = 6
while(true) {
if (piece % n === 0) {
break
}
piece += 6
}
return piece / 6
}
위의 while문은 n===0이 되면 실행을 멈추는 break문을 썼다. 여기서 while은 for로도 대체 가능하다.
728x90