[DevNote] 0324

Noah Ko·2022년 6월 19일
0

DevNote

목록 보기
24/31
post-thumbnail

Today I Learn (0324)

1. 오늘의 자바스크립트

1. 변수

변수 : 값을 저장하는 공간, 자료를 저장할수 있는 이름이 주어진 기억장소 (메모리에 저장됨), 메모리 주소에 이름을 붙여준다.

  • 메모리 주소 예시: 0 x 0000006 -> 직관적이지 않음, 나중에 볼때도 알기 어렵다.
  • 그래서 0 x 0000006을 a로 치환하는 작업이 let a; 가 되는 것.
  • 변수는 구체적일수록 좋다.
let a = 0;
console.log(a);

a = 1;
console.log(a);

let b;
console.log(b);

b = 2;
console.log(b);

2. 변수의 이름 짓기

변수 이름 지을 때 유의 할 점.

  • 라틴문자(0-9, a-z, A-Z), _(언더바)
  • 대소문자 구분함
  • 추천 : camelCase (likethis) ✅
  • 한국어 ❌
  • 예약어 ❌
  • 숫자로 시작 ❌
  • 특수문자 ❌ (_, $ 두가지는 예외)
  • 이모지 ❌
  • 변수 이름을 1,2,3로 구분 ❌
let apple;
let redApple;

// Bad case❌
let num = 20; // 의미를 알수 없음

// Better case ✅
let myAge = 20; // 의미를 알수 있음

//Bad case ❌
let audio1;
let audio2; //이렇게하면 1은 뭐고 2는 뭐지? 하게 됨

// Better case ✅
let backgroundAudio;
let windAudio;

//꿀팁 🍰
let audioBackground;
let audioWind; // 이렇게 하면 audio만 치면 관련 내용들이 자동 완성 됨.

2. 오늘의 알고리즘 (1934, 최소공배수)

두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있으며, 최소 공배수는 30이다.
두 자연수 A와 B가 주어졌을 때, A와 B의 최소공배수를 구하는 프로그램을 작성하시오.

const fs = require("fs");
// const input = fs.readFileSync("./dev/stdin").toString().split("\r\n");
const input = fs.readFileSync("example.txt").toString().split("\n");

let numberOftestcase = input.shift();
let length = input.length;

for (let i = 0; i < length; i++) {
  let a = input[i].split(" ")[0];
  let b = input[i].split(" ")[1];
  let common = 1;
  if (a > b) [a, b] = [b, a];
  for (let j = 1; j < a; j++) {
    if (a % j === 0 && b % j === 0) {
      common = j;
    }
  }
  answer = "";
  if (common === 1) {
    answer += a * b;
  } else {
    answer += (a / common) * (b / common) * common;
  }

  console.log(answer);
}
  • 두 수의 최대공약수를 먼저 구한 후에 최소공배수를 구해줄수 있다.
profile
아코 자네 개발이 하고 싶나

0개의 댓글