let output = makeOddDigits(3);
console.log(output); // --> "135"
output = makeOddDigits(5);
console.log(output); // --> "13579"
//num를 입력받는다
//1부터 시작해서 2씩 추가된 홀수가 결과로 나온다
//num의 개수만큼 홀수 값이 나온다
//그 값을 문자열로 리턴한다
function makeOddDigits(num) {
let result =''
let count = 0; //
let i = 1; //출력 값은 1부터 시작됌
while(count < num){
result = result + String(i) //결과 값은 i씩 증가합니다
i = i + 2 ; // 1,3,5...이렇게 증가하기 위해서
count++
}
return result;
}
'' 와 ' '는 다르다. 이 차이를 몰랐다.
result값을 while문 안에 적긴 했으나 i= i+2
,count++
밑에 뒀다가 위로 올리니까 맞았다.
count< num
의 조건을 확인하면 밑의 내용이 반복될 것이다.내가 처음에 썼던 오답코드를 사용해서 result가 i와 count보다 아래에 있었다면
i는 1 count 는 0이므로
i는 처음부터 3이된다.
let output = makeMultiplesOfDigit(7);
console.log(output); // --> "36"
output = makeMultiplesOfDigit(19);
console.log(output); // --> "369121518"
function makeMultiplesOfDigit(num) {
let result = '';
for(let i=3; i<= num; i= i+3){ // 시작: i는 3부터 // 조건:i 값은 num보다 작거나 같다 // i는 3씩 증가한다
result = result + String (i) // result는 i씩 증가한다.
}
return result;
}
//숫자를 입력하면
//입력값보다 i가 작다면 반복된다
//make 함수의 역할은 차례로 3의배수가 커지도록 반복문을 쭈욱 반복시키는 역할이다
//i 는 2씩 차례로 커지는 3의 배수이다
//입력값아래에있는 3의배수가 출력된다
// result 다 지우고 그냥 마지막에 return String(i)하면 왜 틀리냐
//--> 그러면 뭐 for문안에 아무것도 없는데? 그리고 그냥 String(i)를 쓰면 정지된 i값만 나와야 하는데 뭐 아무 식도 없음
//result = result + i --> result 는 i 씩 증가합니다 가 되어야 i 가 3씩 커지면서 늘어나지