함수, if문, for문, arr 문제 풀이
1. 1~10까지 출력을 하시오.
답:
for(let i = 0; i < 11; i++){
console.log(i)
}
해석 : i가 0이고 i가 11보다 작은 수 이면 +1을 계속 반복한다.
2. 1~20까지 출력하는데 숫자가 5배수일때.hello world로 바꿔서 출력하시오.
답:
for(i = 1; i < 21; i++){
if(i % 5 == 0){ console.log("hello world")
}
else { console.log(i)
}
}
해석 : i를 1부터 20까지 출력하고 if문을 사용해 i를 5로 나누어 나머지 값이 0일 경우 "hello world"를 출력하게 하고 나머지 값이 0이 아닐시에는 숫자를 출력하게 한다.
3. console.log()를 사용하여 아래 모양을 출력하시오.
|\_/|
|q p| /}
( 0 )"""\
"|"^"` |
||_/=\\__|
답:
console.log('|\\_/|' + '\n' + '|q p| /}' + '\n' + '( 0 )"""\\' + '\n' + '|"^"` |' + '\n' + '||_/=\\\\__|')
해석 : console.log의 ()안에 그림 한줄씩 입력한후 \n
으로 다음칸으로 넘어가고 다시 그림 한줄 입력하고 \n
입력을 반복해주면 된다. 이 그림은 문자로 취급하기 위해 줄마다 ""/''/``을 사용하여야 한다.
4.
짱구는 마스크 공장에 다녀요
마스크를 담을수있는 팩이 존재하고 각각 3개입 5개입을 담을 수 있습니다.
짱구는 귀찮기 때문에 최대한 적은 팩을 담을려고 합니다.
예를들어 18개 마스크를 보내야한다면
3개입짜리 팩을 6개 준비해도 되지만
5개입 3개 3개입 개로 보내면 더 적은 팩으로 보낼 수 있습니다.
짱구가 마스크를 정확하게 N개 마스크를 보내려면
몇개의 팩을 보내면 되는지 수를 구하는 프로그램을 작성해주세요.
단 정확하게 마스크팩을 만들수 없다면 -1를 return 하세요.
ex)
18 -> 4
4 -> -1
6 -> 2
function solution(n){ let result = 0 if( n % 5 == 0) { result = n/5; } else { while(1){ n = n - 3 result = result + 1 if (n % 5 == 0){ result = result + (n/5) break } else if (n <= 2){ return -1 } } } return result; } console.log(solution(18))
해석 : result 값을 0으로 지정하고 if문을 사용해 주어진 n 값을 5로 나누었을때 나머지 값이 0이 된다면 result 값은 n/5로 return하고 나머지 값이 0이 아닐시 false의 else문으로 가서 while을 사용해 계속 -3을 빼고 뺀 횟수만큼 result 값을 더한다. 그러다 n값을 5로 나누었을때 나머지 값이 0이 나오면 반복문에서 탈출하고 위에서 -3을 하여 더한 result과 n/5를 한 값을 더하여 return한다. 계속 -3을하여 n이 만약 2보다 작아질 경우에는 -1을 리턴한다
5.
let arr (배열)을 사용하여 아래 모양 출력하시오.
|\_/|
|q p| /}
( 0 )"""\
|"^"` |
||_/=\\__|
답:
let arr =['|\\_/|' + '\n' + '|q p| /}' + '\n' + '( 0 )"""\\' + '\n' + '|"^"` |' + '\n' + '||_/=\\\\__|']
for(i = 0; i < arr.lenght; i++){
console.log(arr.String())
}
해석 : let arr = [ ] 배열을 만들고 [ ]안에 그림을 전과 같은 방법으로 넣어준후 for문을 사용하여 i = 0 이고 i가 arr의 데이터 길이보다 낮을경우 1씩 증가해준다. 이렇게 하면 그림이 1줄씩 나뉘어서 출력되는데 console.log(arr)에 .String을 부여하여 1줄에 그림이 출력되도록 한다.
6.
for문을 사용하여 다음값을 아래와 같이 출력하시오.
- 전제조건
let 블록 = [ ]
블록 = [1,2,3,4,5,6,7,8,9,10,13]
n번째 배열값 : i
1번째 배열값 : 1
2번째 배열값 : 2
3번째 배열값 : 3
4번째 배열값 : 4
5번째 배열값 : 5
6번째 배열값 : 6
7번째 배열값 : 7
8번째 배열값 : 8
9번째 배열값 : 9
10번째 배열값 : 10
11번째 배열값 : 13
답:
for(let i = 0; i < 블록.lenght; i++){
console.log((i+1) + "번째 배열값 : " + 블록[i])
}
해석 : i = 0 이고 i가 볼록이란 arr의 데이터 길이보다 낮을경우 1씩 증가하며 반복한다. 이후 출력문으로 i값은 0으로 전제해뒀기에 +1을 해주고 문자열 " 번째 배열값 : " 을 연결연산자로 붙여주고 블록의 i 값을 연결해주면 텍스트가 완성된다.
Author And Source
이 문제에 관하여(함수, if문, for문, arr 문제 풀이), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ash991213/JavaScript-함수if문for문arr-문법-연습저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)