Notice
Recent Posts
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- JS form action
- js 변수
- JS 삼항연산
- JS append
- JS redirection
- JS typeof연산자
- JS 숫자
- JS 기초
- JS value속성
- JS 형변환
- JS 함수
- JS form
- JS 타이머기능
- JS setTimeout
- JS 데이터타입
- git 협업셋팅
- HTML기초
- JS prompt
- JS clearInterval
- CSS기초
- JS setInterval
- JS localStorage
- JS appendChild
- JS preventDefault
- JS 연산
- CSS속성정리
- JS 화살표함수
- JS null undefined
- JS classList
- JS 스코프
Archives
공부기록용
JavaScript 문법 종합(연습04) 본문
Q1. 정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, array에 n이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ array의 길이 ≤ 100
- 0 ≤ array의 원소 ≤ 1,000
- 0 ≤ n ≤ 1,000
function solution(array, n) {
//리턴값으로 쓸 정수
var answer = 0;
for ( i=0; i < array.length; i ++ ){
if ( array[i] == n ){ //array의 i번째수와 매개변수 n이 같다면
answer++; //answer 1 증가
}
}
return answer;
}
console.log(solution([1, 1, 2, 3, 4, 5], 1));
function solution(array, n) {
return array.filter(v=>v===n).length;
}
Q2. 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.
제한사항
- 0 ≤ numbers의 원소 ≤ 1,000
- 1 ≤ numbers의 길이 ≤ 100
- 정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.
function solution(numbers) {
var answer = 0;
var sum = 0;
for(let i = 0; i <numbers.length; i++){
sum += numbers[i];
}
return answer = sum / numbers.length;
}
console.log(solution([89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]))
function solution(arr) {
return arr.reduce((sum, current) => sum + current) / arr.length;
}
const reducer = (a, b) => a + b;
const array = [1, 2, 3, 4];
console.log(array.reduce(reduer));
// 10
Q3. 정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 1 ≤ num_list의 길이 ≤ 100
- 0 ≤ num_list의 원소 ≤ 1,000
function solution(num_list) {
var answer = [0, 0];
// var answer = [];
let a = 0;
let b = 0;
for (let i = 0; i < num_list.length; i++) {
if (num_list[i] % 2 === 0) {
a++;
} else if (num_list[i] % 2 !== 0) {
b++;
}
}
return answer = [a, b];
}
console.log(solution([1, 2, 3, 4, 5]));
☆
function solution(num_list) {
var answer = [0,0];
for(let a of num_list){
answer[a%2] += 1
}
return answer;
}
function solution(num_list) {
var answer = [0, 0];
for(let i = 0 ; i < num_list.length; i++){
if(num_list[i] % 2 == 0) answer[0]++;
else answer[1]++;
}
return answer;
}
Q4. 정수 배열 numbers와 정수 num1, num2가 매개변수로 주어질 때, numbers의 num1번 째 인덱스부터 num2번째 인덱스까지 자른 정수 배열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 2 ≤ numbers의 길이 ≤ 30
- 0 ≤ numbers의 원소 ≤ 1,000
- 0 ≤num1 < num2 < numbers의 길이
function solution(numbers, num1, num2) {
var answer = [0, 0];
let slicednumbers = numbers.slice(num1, num2+1);
// .slice때문에 자꾸 num2전 인덱스까지 출력되던걸 +1을 붙여줌으로써 해결함
return answer = slicednumbers
};
console.log(solution([1, 2, 3, 4, 5], 1, 3));
function solution(numbers, num1, num2) {
var newNumbers = []
for (let i = num1; i <= num2; i++) {
newNumbers.push(numbers[i])
}
return newNumbers
}
function solution(numbers, num1, num2) {
// for반복문
// numbers.length == num1 ~ numbers. length == num2 자르기
let answer = [];
let j = 0;
for (let i = 0; i < numbers.length; i++) {
if (i >= num1 && i <= num2) {
answer[j] = numbers[i];
j++;
}
}
return answer;
}
function solution(numbers, num1, num2) {
return numbers.splice(num1, num2-num1+1);
}
★Q5. 문자열 배열 strlist가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 retrun하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ strlist 원소의 길이 ≤ 100
- strlist는 알파벳 소문자, 대문자, 특수문자로 구성되어 있습니다.
function solution(strlist) {
// answer 빈 배열 생성
// for문 돌리기
// answer [인덱스] == strlist의 인덱스. 길이
let answer = [];
for (let i = 0; i < strlist.length; i++) {
answer[i] = strlist[i].length;
}
return answer;
}
function solution(strlist) {
var newStrList = []
for (let i = 0; i < strlist.length; i++) {
newStrList.push(strlist[i].length)
}
return newStrList
}
★Q6. 정수가 들어 있는 배열 num_list가 매개변수로 주어집니다. num_list의 원소의 순서를 거꾸로 뒤집은 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ num_list의 길이 ≤ 1,000
- 0 ≤ num_list의 원소 ≤ 1,000
function solution(num_list) {
// new Array 생성
// for 반복문 (let i = num_list.length; i >0; i--)
// answer의 인덱스는 num.length-1 = num_list 인덱스는 i-1
// answer 리턴
let answer = []; // 빈 배열 생성
for (let i = num_list.length; i > 0; i--) {
// 반복문 돌려 i (큰 수 > 작은수)
// num_list가 [1, 2, 3, 4, 5] 라고 했을 때,
// answer의 배열인덱스 [0, 1, 2, 3, 4]번째 = num_list[4, 3, 2, 1, 0] 번째 인덱스 (=5, 4, 3, 2, 1)
answer[num_list.length - i] = num_list[i - 1];
}
return answer;
}
function solution(num_list) {
let answer = [];
for (i = 0; i < num_list.length; i++) {
answer[i] = num_list[num_list.length - i - 1];
}
return answer;
}
function solution(num_list) {
return num_list.reverse();
}
☆
function solution(num_list) {
var answer = [];
var j = num_list.length
for(var i = 1; i <= j; i++){
answer.push(num_list[j-i])
}
return answer;
}
★Q7. 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요.
제한사항
- 0 ≤ numbers의 원소 ≤ 10,000
- 2 ≤ numbers의 길이 ≤ 100
function solution(numbers) {
// for 반복문 + 이중 for문
let answer = 0;
for (let i = 0; i < numbers.length; i++) {
for (let j = i + 1; j < numbers.length; j++) {
let max = numbers[i] * numbers[j];
if(max > answer) answer = max
}
}
return answer;
}
'✍️문제풀기✍️ > JS_Programmers school' 카테고리의 다른 글
JavaScript 문법 종합(연습06) (0) | 2023.05.31 |
---|---|
JavaScript 문법 종합(연습05) (2) | 2023.05.30 |
JavaScript 문법 종합(연습03) (0) | 2023.05.26 |
JavaScript 문법 종합(연습02) (0) | 2023.05.25 |
JavaScript 문법 종합(연습01) (0) | 2023.05.25 |
Comments