안녕하세요
오늘은 javascript로 배열안에 있는 숫자중 가장 작은 값 출력하는 방법을 알려드리도록 하겠습니다.
1.let arr 변수 생성
2.minBox로 담을 변수 생성
3.for문 활용하여 0부터 arr배열 숫자만큼 출력하겠다.
4. if 문으로 0번째 인덱스에 있는 숫자와 다음 숫자 중 작은 값을 minBox로 지정하겠다.
5.minBox( 가장 작은 값 출력)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>배열안에 있는 숫자중 가장 작은 값 출력하기</title>
</head>
<body>
<script>
let arr = [3,2,5,7,9,1,10];
// let arr1 = ["홍길동","이순신","강감찬","계백","코난"]
let minBox = arr[0];
for(let i =0; i <=arr.length; i++){
if(arr[i]<minBox) {
// arr n번째 있는 숫자가 3보다 작다면
minBox = arr[i];
// minBox에 n번째 있는 숫자를 넣겠다!
}
}
document.write(arr + "숫자 중 가장작은값은" + minBox);
</script>
</body>
</html>
<배열안에 있는 숫자 정렬 하는 방법>
arr = [3, 2, 5, 7, 9, 1, 10];
수동으로 정렬하는 방법입니다.
첫번째 인덱스 3과 두번째 인덱스 2, 즉 앞 두자리수를 비교해가면서 바꾸어 가는 과정인데
이렇게 바꾸게 되면 다음과 같이 정렬이 됩니다.
[2,3,5,7,1,9,10]
여기서 for문으로 한번 더 감싸서 1을 한칸씩 당겨오는 작업을 해야 최종적으로 1이 맨 앞으로 오게 됩니다.
해당 과정을 구현한 코드는 다음과 같습니다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>배열안에 있는 숫자 정렬</title>
</head>
<body>
<script>
let arr = [3, 2, 5, 7, 9, 1, 10];
let arr2 = [...arr];
let temp = 0;
for (let i=0; i<arr.length; i++) {
for (let j = 0; j <= arr.length-1; j++) {
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j + 1] = temp;
}
}
document.write(arr+"<br>");
}
document.write("정렬된 값:" + arr);
</script>
</body>
</html>
Q. 두배열 안 같은 값만 뽑기
다음과 같은 두가지 배열이 있을때 동일한 숫자만 넣고 싶을때
arr1 = [1,2,3,4,5,6,7]
arr2 = [3,4,5,6,7,8,9]
우선 javascript에서 기본적으로 알아야 할 기본적인 push 함수가 있습니다.
데이터 입력: push()
1.변수생성
arr1 = [1,2,3,4,5,6,7]
arr2 = [3,4,5,6,7,8,9]
2. 새로 넣을 변수 생성
commArr = []
3. for문으로 arr1 변수가 갖고 있는 숫자 개수 만큼
html코드
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>두배열 안 같은 값만 뽑기</title>
</head>
<body>
<script>
let arr1 = [1, 2, 3, 4, 5, 6, 7];
let arr2 = [3, 4, 5, 6, 7, 8, 9];
let commArr = [];
for (let i = 0; i < arr1.length; i++) {
for (let j = 0; j < arr2.length; j++) {
if (arr1[i] == arr2[j]) {
commArr.push(arr1[i]);
}
}
}
document.write(commArr);
</script>
</body>
</html>
Q. 행렬의 곱들을 더하기
arr1 = [1,2,3,4]
arr2 = [3,4,5,6]
html코드
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>행렬의 곱들을 더하기</title>
</head>
<body>
<script>
let arr1 = [1, 2, 3, 4];
let arr2 = [3, 4, 5, 6];
let sum = 0;
let newArr = [];
for (let i=0; i<arr1.length; i++){
for (let j=0; j<arr2.length; j++){
sum += arr1[i]*arr2[j];
}
console.log(sum);
newArr.push(sum);
}
document.write(newArr);
// 화면에 출력해줘
</script>
</body>
</html>