본문 바로가기

국비교육 시작

[국비 12일차]javascript, 간단한 if , else 조건문 !!


// Math.random() - 0.0 ~ 0.9999의 임의의 값을 생성해 줌;
// math.ceil() - 소숫점 이하를 올려서 정수값으로 만들어 줌;
let num = Math.ceil(Math.random() * 6); // 1 ~ 6 정수값;
console.log(num);

// 홀수 / 짝수
if (num % 2 == 0) {
  console.log(`${num} 은/는 짝수입니다.`);
}

if (num % 2 == 1) {
  console.log(`${num} 은/는 홀수입니다.`);
}

// if / else
num = Math.ceil(Math.random() * 6);
if (num % 2 == 0) {
  console.log(`${num} 은/는 짝수입니다.`);
} else {
  console.log(`${num} 은/는 홀수입니다.`);
}

// if (조건식) { code block 여러줄}
// if (조건식) statement - 조건문 안에 실행문이 한개만 있는경우에는 {} 생략 가능
num = Math.ceil(Math.random() * 6);
if (num % 2 == 0) console.log(`${num} 은/는 짝수입니다.`);
else console.log(`${num} 은/는 홀수입니다.`);

// 123 작은수 456 큰수
num = Math.ceil(Math.random() * 6);
if (num <= 3) console.log(`${num} 은 작은수 입니다.`);
else console.log(`${num} 은 큰수 입니다.`);

 

주사위 숫자를 생성해서 간단하게 홀수/짝수를 확인하는 것과

큰수인지 작은수인지 확인인하는 조건문이다.

 

let 으로 변수 선언을 한다

Math.ceil은 소숫점 이하를 무조건 올려서 반올림한다. round가 0.5이상을 반올림하는것과는 다른 개념이다.

Math.random은 0.0 ~ 0.99999이하의 임의의 난수를 생성한다; 고로

let num = Math.ceil(Math.random() * 6);  

 

  • Math.random()이 0 이상 1 미만의 난수를 생성한다.
  • 이 난수에 6을 곱하여 0 이상 6 미만의 부동 소수점 수를 만든다.
  • 그 결과를 Math.ceil()로 올림하여 1 이상 6 이하의 정수를 얻는다.

if (num % 2 = 0) {

  console.log(`${num}은/는 짝수입니다.`);

ㅡㅡ> num 을 2로 나눈 나머지가 0이면 짝수인것을 의미

 

if (num % 2 = 1) {

 console.log(`${num}은/는 홀수입니다.`);

ㅡㅡ> num을 2로 나눈 나머지가 1이면 홀수있것을 의미

 

num = Math.ceil(Math.random() * 6);
if (num % 2 == 0) {
  console.log(`${num} 은/는 짝수입니다.`);
} else {
  console.log(`${num} 은/는 홀수입니다.`);
}

num 을 2로 나눠 나머지가 0이면 짝수이고

else는 홀수이다.

 


// if (조건식) { code block 여러줄}
// if (조건식) statement - 조건문 안에 실행문이 한개만 있는경우에는 {} 생략 가능
num = Math.ceil(Math.random() * 6);
if (num % 2 == 0)
    console.log(`${num} 은/는 짝수입니다.`);
else
    console.log(`${num} 은/는 홀수입니다.`);

if (조건식)에서 {code block 여러줄이면  { }curly brackets을 열어서 한다}

if (조건식) statement 조건문 안에 실행문이 한개만 있는 경우에는 {} 생략 가능

 


num = Math.ceil(Math.random() * 6);
if (num >= 4) console.log(`${num} 은/는 큰수 입니다.`);
else console.log(`${num} 은/는 작은 수 입니다.`);

 

똑같이 1~6까지의 랜덤주사위를 만들고

if (num >= 4) 만약 num이 4와 같거나 더 크다면 

console.log(`${num} 은/는 큰수입니다.'); 출력

else

console.log('${num} 은/는 작은 수 입니다.'); 출력

 

 

-------------------------------------------------------------------------------------------------------------------------

 

// 현재 날짜 및 시간을 아는 방법
let today = new Date();
console.log(today); 
let hour = today.getHours();
console.log(hour); 
console.log(new Date().getHours());

if (hour < 12)
    console.log(` 오전 ${hour}${today.getMinutes()}분 입니다.`);
else
console.log(` 오후 ${hour - 12}${today.getMinutes()}분 입니다.`);
// run - 오전 10시 16분 입니다.

console.log(
  `${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`
);
console.log(`${today.getHours()}:${today.getMinutes()}:${today.getSeconds()}`);

 

 

현재 날짜 및 시간을 아는 방법이다.

let = new Date 와 today.getHours를 설정했고

if (hour < 12 ) // 시간이 12보다 작다면 ,왜냐면 시간이 0~24시로 표현되게 때문에;

 console.log ( 오전으로 표현하라 )

else

 console.log (오후로 표현하라 )

run ==== > 오후 7시 1분 입니다. (현재시간 밤 7:1분 )

 

 


console.log(
  `${today.getFullYear()}-${today.getMonth() + 1}-${today.getDate()}`
);
console.log(`${today.getHours()}:${today.getMinutes()}:${today.getSeconds()}`);

오늘 년도와 moth, date 등을 나타나게 하고

오늘 시간과 분 초를 나타나게 하는 것들인데

Month 에는 + 1 을 해야 제대로 표현이 된다.

 

-----------------------------------------------------------------------------

 


let year = 4000;
// 코드개선 - Refactoring
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
  console.log(`${year}년은 윤년입니다.`);
else console.log(`${year}년은 평년입니다.`);

year - 4000으로 설정

if year가 4로 나누어떨어지면서 100으로 나누어떨어지지 않거나, 400으로 나누어떨어지면 참(=윤년)

else 그렇지 않으면 평년.

run ====> 4000년은 윤년입니다.

               > 1777년은 평년 입니다 (let year= 1777로 수정후)