- split( ) 함수
- reverse( ) 함수
- join( ) 함수
- 공백으로 구분된 숫자들을 prompt로 받아서 split으로 배열 만들기
- sum = sum + i
- parseInt( )함수
- Math.floor( )함수
입출력
입력 : 거꾸로
출력 : 로꾸거
'문자열을 거꾸로 출력해주는 메소드가 있지 않을까?'라고 생각하고 검색
하지만 문자열을 거꾸로 출력해주는 메소드는 없고
1) split함수를 이용해서 문자열을 배열로 바꾼 다음
2) reverse함수를 이용해서 순서를 뒤집고
3) join 함수를 이용해서 다시 문자열로 합쳐줘야 한다는 것을 알게 됨
let n = prompt("단어를 입력하세요")
console.log(n.split('').reverse().join(''))
이게 더 보기 편한 것 같음
let n = prompt("단어를 입력하세요").split('').reverse().join('')
console.log(n)
const n = prompt('입력하세요.');
const reverseString = n.split('').reverse().join('');
/*
* split() 메서드는 문자열을 배열로 만들어 반환하고,
* reverse() 메서드는 배열의 순서를 반전하며,
* join() 메서드는 원소를 모두 붙여 문자열로 반환합니다.
*/
console.log(reverseString);
for문으로 푸는 법
let word = prompt("단어를 입력하세요");
let reverse = '';
for ( let i = 0; i < word.length; i++){
reverse = word.split('')[i] + reverse // 🔴
}
console.log(reverse)
1) word를 prompt로 받고
2) 변수 reverse에 빈 문자열 '' 선언
3) for문을 통해서 문자열을 문자 배열로 만들어주고
4) 첫 번째 요소부터 빈 문자열reverse에 넣어주고
5) 다음 요소는 위에 넣어진 문자열 앞에 넣어주는 과정
🔴 이 부분 (word를 "가나다라마바사"로 받는다고 가정)
reverse = word.split('')[i] + reverse 일 경우 : 사바마라다나가
reverse = reverse + word.split('')[i] 일 경우 : 가나다라마바사
let height = prompt("키를 입력하세요", "단위 cm 생략하고 숫자만")
if ( height >= 150) {
console.log("YES");
} else {
console.log("NO")
}
const height = prompt("키를 입력하세요.");
if (height >= 150){
console.log("YES");
} else {
console.log("NO");
}
입출력
입력 : 20 30 40
출력 : 30
console.log(Math.floor((a+b+c)/3))
이거 하나 생각해냄.... 하... 나란 놈...
1️⃣ const scores = prompt('세 과목의 점수를 입력하세요.').split(' ');
2️⃣ let sum = 0;
for (i=0; i<3; i++){
3️⃣ sum = sum + parseInt(scores[i], 10)
}
4️⃣console.log(Math.floor(sum/3));
1️⃣ "공백으로 구분하여 세 과목의 점수가 주어지면"을 어떻게 코드로 구현해야 할까
ex) 10 20 30
2️⃣ for문에서 나온 i들을 순서대로 하나씩 문자열로 더할 때 let sum = 0
을 설정해놓고 sum = sum + i
로 더하기
🔵 빈 배열[ ]에 r += ["string"]
으로 요소 추가하기
-> 결과 : "안녕하세요 또 만나네요 또 만나네요 안녕하세요 안녕하세요 "
-> console.log(typeof(helloBot1(group2))) // "string"
let group2 = [0,1,1,0,0];
let result1 =[];
const helloBot1 = people => {
for (let i = 0; i < group2.length; i++) {
if (group2[i] === 0) {
result1 = result1 + ["안녕하세요 "];
} else {
result1 = result1 + ["또 만나네요 "];
}
}
return result1;
}
console.log(helloBot1(group2))
// "안녕하세요 또 만나네요 또 만나네요 안녕하세요 안녕하세요 "
🔵 빈 배열[ ]에 배열.push("string")
으로 요소 추가하기
-> 결과 : ["안녕하세요", "또 만나네요", "또 만나네요", "안녕하세요", "안녕하세요"]
-> console.log(typeof(helloBot(group1))) // "object"
let group1 = [0,1,1,0,0];
let result =[];
const helloBot = people => {
for (let i = 0; i < group1.length; i++) {
if (group1[i] === 0) {
result.push("안녕하세요");
} else {
result.push("또 만나네요");
}
}
return result;
}
console.log(helloBot(group1))
["안녕하세요", "또 만나네요", "또 만나네요", "안녕하세요", "안녕하세요"]
3️⃣ parseInt( string, n )
parseFloat( string )
는 실수로 변환4️⃣ Math.floor(number)
: 어떤 수보다 크지 않은 최대의 정수를 반환 = 내림
Math.ceil()
: 어떤 수보다 작지 않은 최소의 정수를 반환 = 올림Math.round()
: 어떤 수와 가장 가까운 정수를 반환 = 반올림const scores = prompt('세 과목의 점수를 입력하세요.').split(' ');
let sum = 0;
for (let i=0; i<3; i++){
sum += parseInt(scores[i], 10); // 십진수의 형태의 숫자로 데이터 타입을 변환합니다.
}
console.log(Math.floor(sum/3)); //Math.floor 메서드는 소수점 자리를 모두 버림합니다.
let numbers = prompt("두 점수를 입력하세요.").split(' ');
a0 = parseInt(numbers[0], 10)
a1 = parseInt(numbers[1], 10)
console.log(Math.pow(a0, a1))
const n = prompt('수를 입력하세요.').split(' ');
console.log(Math.pow(parseInt(n[0], 10), parseInt(n[1], 10)));
입출력
입력 : 10 2
출력 : 5 0
let numbers = prompt("두 점수를 입력하세요.").split(' ');
// ex) numbers = ["10", "2"]
let a0 = parseInt(numbers[0], 10)
let a1 = parseInt(numbers[1], 10)
let Division = a0 / a1
let Remainder = a0 % a1
console.log(Math.floor(Division), Remainder)
const n = prompt('수를 입력하세요.').split(' ');
const result = Math.floor(parseInt(n[0], 10) / parseInt(n[1], 10));
const left = parseInt(n[0], 10) % parseInt(n[1], 10);
console.log(result, left);