[JavaScript] 기본 문제 풀이 1
1.별별별
fuction answer(num) {
let result = "";
for (let i=0; i <num; i++)
result +="*";
}
쉬운 문제지만 난 틀렸다^^
num이 i보다 작을때 for문 반복하면서 input 값을 넣어 * 출력한다.
2. 두 수 사이 숫자
function answer(x,y){
let result = [];
if (x>y){
for(let i=y; i <= x; i++){
result.push(i);
}
} else {
for(let i = 0; i <= y; i++){
result.push(i);
}
}
return result;
}
2-1. 두 변수를 swap하는 법
두번째 방법 풀이는 swap
이라는 것을 통해 쉽게 순서를 바꿀 수 있다.
입력 값 첫번째 방법(3,4,5,6,7)이라면 오름차순으로 숫자가 배열이 되서 간단히 풀수있다.
하지만 앞 숫자보다 뒤 숫자가 크면 swap
을 통해 각각 다른 매개변수에 저장해주고 문제 풀이를 한다.
function answer(x,y){
let result = [];
if(x>y){
let t = x;
x=y;
y=t;
}
for(let i = 0; i <= y; i++){
result.push(i);
}
return result;
}
1. temp 변수를 이용한 방법
(내용물이 섞이지 않게 컵 안에 내용물을 바꾸는 느낌으로 생각하면 된다.)
let
a = 'a',
b = 'b',
temp;
temp = a;
a = b;
b = temp;
console.log('a: ' + a + ', b: ' + b); // 'a: "b", b: "a"'
2. 덧셈/뺄셈 연산자를 이용한 방법
(number
타입의 값을 바꿀 때 사용할 수 있는 방법이다.)
let a = 123;
let b = 456;
a = a + b; // 123 + 456 = 579
b = a - b; // 579 - 456 = 123
a = a - b; // 579 - 123 = 456
3. 구조 분해 할당을 이용한 방법
ES6에 추가된 구조 분해 할당(Destructuring_assignment)을 이용해 swap하는 방법이다.
익스플로러에선 지원하지 않지만 많은 사람들이 추천하고 있다!
let a = '123';
let b = 456;
[a, b] = [b, a];
3. 반 평균
function answer(score) {
let average=0;
for(let i = 0; i < score.length; i++){
average+=score[i];
}
average/score.length;
average = average.toFixed(2);
return average;
}
+=
,/=
사용이 익숙치 않아 중간 중간 코드가 작동하지 않았다.
toFixed(?)
사용하여 몇번째 반올림 처리해줄지 정한다.
4. 핸드폰 판매
function answer(employee){
let employee_id;
let max=0;
for(let i=0; i < employee.length; i++){
if(employee_id[i] < max){
max=employee_id[i];
employee_id=i+1;
}
}
return employee_id;
}
- let max=0; --> 변수를 사용한다 --> 0이라고 초기화 해놔야 나중에 비교할때 큰 값이 업데이트 된다.
- employee[ i ] max --> 0의 인덱스는 3이므로 max 3이라는 값을 갖는다.
- 3의 인덱스는 0이므로 +1하면 1 인덱스는 3이다. 쭉쭉 값을 넣어 for문으로 비교했을때 input의 9번째 3의 인덱스가 출력된다.
5.무한 뺄셈
function answer(s,e){
let sequence=[];
sequence.push(s);
sequence.push(e);
let sum;
while(1){
sum = s - e;
s = e;
e = sum;
if(e<0)break;
sequence.push(e);
}
return sequence;
}
6 | 3 | 3 | 0 | 3 | -3 |
---|---|---|---|---|---|
s | e | sum | |||
/ | s | e | sum | ||
/ | / | s | e | sum | |
/ | / | / | s | e | sum |
이 문제도
swap
매개변수를 이용해 푸는 문제이다.
1. sum 임수변수를 사용하고 while(1) true 이므로 무한루프를 돈다.
2. 위에 표를 보면swap
매개변수 방법이 이해가 갈것이다.
3. 3 < 0 false 이므로 sequence.push(e) 새로운 값을 e에 넣어 계속 반복해라!
4. e = sum; 이므로 -3 < 0 true 이므로 break한다.
Author And Source
이 문제에 관하여([JavaScript] 기본 문제 풀이 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dbsskdud60/JavaScript-기본-문제-풀이-1저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)