본문 바로가기
LEARN/JAVASCRIPT

[자바스크립트] 기초부터 실전까지 올인원 실습 및 정리 02

by 아이엠제니 2022. 4. 26.

 

 

if문

let age = 18

if(age > 20) {
  console.log("운전이 가능합니다")
} else if(age >= 18) {
  console.log("오토바이 운전이 가능합니다")
}else {
  console.log("운전이 불가능합니다")
}

if문 사용할 때 주의할 점은 '순서'

범위가 있다면, 작은 것부터 큰 거 순으로

 

let age = 19

if(18<=age && age <20) {
  console.log("오토바이 운전만 가능합니다")
} else if(age > 20) {
  console.log("운전이 가능합니다")
}else {
  console.log("운전이 불가능합니다")
}

 

let age = 21
let license = false

if(age > 20) {
  if(license == true) {
    console.log("운전이 가능합니다")
  } else {
    console.log("면허를 따세요")
  }
 }else {
  console.log("운전이 불가능합니다")
}

 

// 문제1 유저가 입력하는 숫자가 0인지 음수인지 양수인지 판단하는 프로그램을 만드시오
let number = 1

if(number == 0) {
  console.log("0입니다")
} else if(number <0) {
  console.log("음수입니다.")
} else {
  console.log("양수입니다.")
}

// 문제2 레포트 점수에 따라 등급을 매기는 프로그램을 만드시오
// let score = 55

// if (score >=90 && score <=100) {
//   console.log("A")
// } else if(score>=80 && score<90) {
//   console.log("B")
// } else if(score>=70 && score<80) {
//   console.log("C")
// } else if(score>=60 && score<70) {
//   console.log("D")
// } else {
//   console.log("F")
// }

// 다른 방법
let score = 75
let grade = ''

if (score >=90 && score <=100) {
 grade = "A"
} else if(score>=80 && score<90) {
  grade = "B"
} else if(score>=70 && score<80) {
  grade = "C"
} else if(score>=60 && score<70) {
  grade = "D"
} else {
  console.log("F")
}
console.log(grade)

// 문제3
let skills = ["HTML","CSS","Javascript","React"]

if(skills.includes("Javascript") && skills.includes("React")) {
  console.log("합격")
} else if(skills.includes("Javascript") || skills.includes("React")) {
  console.log("예비")
} else {
  console.log("탈락")
}

 

 


보너스: switch문과 삼항연산자

// switch문

let menu = 2
let what = ''

if(menu == 1) {
  what = "물건 사기"
} else if(menu == 2) {
  what = "잔고확인"
} else if(menu == 3) {
  what = "히스토리 확인"
} else {
  what = "홈으로 돌아가기"
}

console.log(what)

switch(menu) {
  case 1 :
    what = "물건 사기"
    break;
  case 2:
    what="잔고확인"
    break;
  case 3:
    what="히스토리 확인"  
    break;
  default:
    what="홈으로 돌아가기"
}

console.log(what)

 

// 삼항 연산자

let menu = 2

// if(menu <= 3) {
//   console.log("범위안에 숫자입니다")
// } else {
//   console.log("범위 밖의 숫자입니다")
// }
// 삼항연산식 조건? true일 때 : false일 때
let answer = menu <=3 ? "범위 안에 숫자입니다" : "범위 밖의 숫자입니다"
console.log(answer)

 

 


반복문

//i=i+1 i++
for(let i = 0; i<10; i++) {
  if(i%2 == 0) {
    console.log("안녕",i)
  }
}

for(let i = 0; i<10; i+=2) {
    console.log("안녕",i)
}

 

// 구구단

for(let i=2; i<10;i++) {
  console.log("====="+i+"단 =====")
  for(let j=1; j<10;j++) {
    console.log(i+"*"+j+"="+ (i*j))
  }
}

 

// while문

let i=2
while(i<10) {
  console.log("while문 실행", i)
  i++;
}

 

// 문제

// 1번 1~100까지 합
let sum = 0
for(let i = 0; i <=100; i++) {
  sum +=i
}
console.log(sum)

// 2번 1~100까지 홀수 출력
for(i=0;i<=100;i++) {
  if(i%2 != 0)
  console.log(i)
}

// 3번 1~50까지 369 결과 프린트
for(let i = 0; i<=50;i++) {
  let stringValue = i.toString()
  let result = ""
  for(let j=0;j<=stringValue.length;j++) {
    if(stringValue[j]=="3" || stringValue[j]=="6" || stringValue[j]=="9") {
    result+="짝"
      }
  }
    console.log(result.length>0?result:i)
}

//4번 주어진 숫자가 소수이면 true 아니면 false
let n =11
let isPrime = true

if (n ===1){// 1은 소수가 아님 
    isPrime = false
} //true
for(let i=2;i<n;i++){ // 2부터 시작하는 이유는 1이 소수가 아니기 때문에
  if(n % i == 0){ // 11/2=5..1 => true
    isPrime =  false 
  }
}
console.log(isPrime)

 

 

 


함수

일의 단위를 묶어주기 위해서 있는 존재

return: 값을 반환하는 것

return을 만나는 순간 함수가 끝나버림

 

function makeBurger(type,size,num) {
  console.log("빵두기")
  console.log("상추두기")
  console.log(type+"패티두기")
  console.log("뚜껑덥기")
  console.log("사이즈: " + size)
  console.log("개수: " + num + "개\n")

  return "완료되었습니다"  
}


function serveDrink(drink) {
  if(drink == "콜라") {
    console.log("콜라통 선택")
  } else if(drink == "환타") {
    console.log("환타통 선택")
  }
  console.log("얼음담기")
  console.log(drink + "담기\n")
}

function servefrenchFries() {
  console.log("감튀박스선택")
  console.log("감튀 담기\n")
}

let result = makeBurger("고기","라지",3)
console.log("버거 프로세스 결과" + result + "\n")

makeBurger("새우","스몰",2)
serveDrink("환타")
servefrenchFries()

function makeSet() {
  makeBurger("고기","M",2)
  serveDrink("콜라")
  servefrenchFries()
}

makeSet()

 

// 함수 문제
// 01
function greet() {
  console.log("안녕 내 이름은 제시카야")
}
greet()

// 02
function greet(name) {
  console.log("안녕 내 이름은 " + name + "야")
}
greet("에밀리")

// 03
function greet(name) {
  return name
}

let result = greet("에밀리")
console.log(result)

// 04
function meetAt(year, month, day) {
if(year && month && day) {
  return year +"/" +month+"/" +day
} else if(year && month) {
  return year +"년 " + month +"월"
} else {
  return year + "년"
}
}

let result1 = meetAt(2022,04,25)
console.log(result1)

let result2 = meetAt(2022,04)
console.log(result2)

let result3 = meetAt(2022)
console.log(result3)

// 04 간단하게
function meetAt(year, month, day) {
if(day) {
    return `${year}/${month}/${day}`
} else if(month) {
  return `${year}년 ${month}월`
} else {
  return `${year}년`
}
}

let result1 = meetAt(2022,04,25)
console.log(result1)

let result2 = meetAt(2022,04)
console.log(result2)

let result3 = meetAt(2022)
console.log(result3)

//05
function findSmallestElement(arr) {
  //어레이가 비어있다
  if(arr.length == 0) {
    return 0
  }
  let result = arr[0]
  for(let i=1; i<arr.length;i++) {
    if(result > arr[i]) {
      result = arr[i]
    }
  }
  return result
}

console.log(findSmallestElement([100,200,3,0,2,1]))

// 6번
let unit = [50000,10000,5000,1000,500,100]

function changeCalculate(money) {
  for(let i=0;i<unit.length;i++) {
    let num=Math.floor(money/unit[i])
    console.log(unit[i]+"X"+num)
    money=money - (unit[i] * num)
  }
}

changeCalculate(12300)

4번 문제

 

 

 

인프런 코딩알려주는누나 [기초부터 실전까지 올인원] 수강중
300x250