6月16日TIL


基数移動を行い、最初のTILを開始します.
最初の30期から概念整理に時間がかかった場合,この31期ではcopplet問題を解決するために多くの時間を費やし,知らない概念を明確に説明する.

条件文4号

두개의 수를 입력 받아서 두번째 수가 첫번째 수보다 크면 true, 아니면 false를 리턴해야한다.

function isGreaterThan(num1, num2) {
	// 만약, num2에 입력받은 수가 num1에 입력받은 수보다 클때는 true를 리턴한다.
    // 그렇지않고 num1에 입력받은 수가 num2보다 클 떄는 false를 리턴한다.
    // 같은 수를 입력 받았을 때는 ,false를 리턴해야한다.
    
    if(num2 > num1) {
    	return true;
    } else if(num1 >= num2) {
    	return false;
	}
}
1つ目の条件はnum 2がnum 1より大きくなければtrueではなく、2つの数が等しい場合falseでなければならないことに注意してください.
false値が表示された場合、=を加えてfalseも一緒に戻り、num1 >= num2でコードを記述します.

条件文11号

num1, num2 를 입력받아서 적어도 하나의 수는 짝수여야하고 , 두 수 모두 9보다 작아야하는 조건을 충족하는지 여부를 boolean 타입으로 리턴해야한다.

우선 적어도 하나의 수는 짝수여야 한다는 말을 보고 OR연산자를 사용해야겠다는 생각을 하였고, 두수 모두 9보다 작아햐니까 AND연산자를 사용해서 num1,num2모두 9보다 작아야 하는 조건을 만들어줘야겠다고 생각했다.

근데 처음 if문으로 어떤 조건을 걸러줄지 고민을 하였는데 OR연산자를 사용하는 게 좀 더 나아보였다.
둘중하나라도 짝수이면 조건문이 충족하는 곳에 코드를 적어주면 그 코드가 실행되기 때문이다.

function isEtherAndLessThan9(num1, num2){
	if(num1 % 2 === 0 || num2 % 2 === 0){
    	if(num 1 < 9 && num2 < 9) {
        return true;
       }else {
       	return false;
      }
   }else return false;
}
条件は先にどんな値段をあげても構わないようです.まずAND演算子を用いたコードを記述し,次にtrue値で行うコードを記述し,テスト用例はすべて合格した.

条件文12号

score라는 매개변수에 점수를 입력받아서 점수에 해당하는 등급을 리턴해야한다.

100 - 90 점은 'A'
89 - 80 점은 'B'
79 - 79 점은 'C'
69 - 60 점은 'D'
59 -  0 점은 'F' 이다.

하지만 만약 주어진 점수가 100초과하거나 0 미만이라면 정해진 문자열을 출력해야한다.
그리고 이항연산자를 사용하면 편리할 것 같다.

function convertScoreToGrade(score){
	if(score < 0 || score > 100){
	return 'INVALID SCORE';
    }else if(90 <= score && score <= 100) {
    return 'A';
    }else if (80 <= score && score <= 89) {
    return 'B';
    }else if (70 <= score && score <= 79) {
    return 'C';
    }else if(60 <= score && score <= 69) {
    return 'D';
    }else if(0 <= score <= 59) {
    return 'F';
    }
}
OR演算子を用いた最初の条件は,0未満ではINVALID SCORE,100を超えるとINVALID SCOREを返すことができ,良い判断がなされた.ただし、残りのif文は2つの演算子を使用しようとします.そうすると、前のすべての人が選択されてAを返します.したがってAND演算子を用いて条件を明確に与え,フィルタリングと同時に等級を与えた.

条件文13号

function plusMinusScore(score){
  const plus = score % 10;
  if(plus <= 3){
    return '-';
  }else if (plus >= 8){
    return '+';
  }else{
    return '';
  }
}

function convertScoreToGradeWithPlusAndMinus(score) {
  // 점수를 입력받아서 점수에 해당하는 등급을 리턴해야한다.
  // 90점 이상일 떄는 A
  // 80점 이상 B ... 60이상 D
  // 60미만 F
  // 만약 주어진 점수가 100을 초과하거나 0 미만인 경우 INVALID SCORE 리턴
  // 각 등급의 최고 점수보다 7점 이하 인경우 , -부여 .. 단, 93 점의 경우는 A리턴
  // 각 등급의 최저 점수보다 8점 이상인 경우, + 부여
  // F에는 -,+가 없음.
  // 등급을 담아줄 변수를 선언해준다.

  let grade;
  if(score === 100){
    return 'A+';''
  }

  if(score > 100 || score < 0){
    return 'INVALID SCORE';
  }else if(score >= 90){
    grade = 'A';
  }else if(score >= 80){
    grade = 'B';
  }else if(score >= 70){
    grade = 'C';
  }else if(score >= 60){
    grade = 'D';
  }else if(score < 60){
    grade = 'F';
  }
  if(grade !== 'F'){
  return grade = grade + plusMinusScore(score);
  }
  return grade;
}
12番の問題と違うのはA B C D Fだけではない.一緒に返す条件もあります.
彼を中に入れるわけにはいかない.したがって、新しい関数が宣言され、その関数に-、+が宣言され、Fが存在しない-、+のみが返される関数が宣言されます.したがって、これを使用して、Fに等しくないレベルに関数を追加し、関数に値を指定して返すコードを記述します.