Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 시간당 킬로미터(km/h)를 초당 센티미터(cm/s)로 변환하는 방법

문제 개요

이번 글에서는 시속 킬로미터(km/h) 단위의 속도 값을 입력받아, 이를 초당 센티미터(cm/s) 단위로 변환한 결과를 반환하는 JavaScript 함수를 작성해 보겠습니다.

변환 원리 이해하기

km/h를 cm/s로 변환하려면 두 가지 기본 환산 계수를 알아야 합니다.

  • 1킬로미터(km) = 100,000센티미터(cm)
  • 1시간(hour) = 3,600초(sec)

즉, 시간당 이동 거리를 초당 이동 거리로 바꾸려면 거리 단위는 센티미터로 확대하고, 시간 단위는 초로 나누어 주면 됩니다. 변환 공식은 다음과 같습니다.

cm/s = (km/h × 100,000) ÷ 3,600

예제 코드

다음은 위 공식을 적용한 JavaScript 코드입니다.

const kmph = 12;

const convertSpeed = (kmph) => {
  const secsInHour = 3600; // 1시간은 3,600초
  const centimetersInKilometers = 100000; // 1km는 100,000cm
  const speed = Math.floor((kmph * centimetersInKilometers) / secsInHour);
  return `cm/s로 변환한 결과: ${speed}`;
};

console.log(convertSpeed(kmph));

실행 결과

cm/s로 변환한 결과: 333

코드 설명

입력값 12km/h를 변환하는 과정을 살펴보면 다음과 같습니다.

  1. 12 × 100,000 = 1,200,000 → 12km를 센티미터로 환산한 값입니다.
  2. 1,200,000 ÷ 3,600 ≈ 333.33 → 1초당 이동 거리(소수점 포함)입니다.
  3. Math.floor()를 사용해 소수점 아래를 버리고 정수 333을 반환합니다.

만약 반올림된 값이 필요하다면 Math.round(), 올림 값이 필요하다면 Math.ceil()로 대체하여 사용할 수 있습니다. 또한 정확한 소수 값이 필요하다면 Math.floor() 없이 그대로 반환하거나 toFixed()로 자릿수를 지정하는 것도 좋은 방법입니다.