문제
주어진 숫자를 다른 진법으로 변환하는 함수가 있습니다. 이 함수는 주어진 문자열에서 첫 번째 숫자는 변환할 숫자를, 두 번째 숫자는 변환할 진법을 나타냅니다. 변환된 숫자를 출력하세요.
입력
첫 번째 줄에는 변환할 숫자를 나타내는 문자열과 변환할 진법을 나타내는 숫자가 주어집니다.
예시
const test_case = '1A 16'
// 출력
26
풀이
function calculateBaseConversion(str) {
const [N, B] = str.split(' ');
let result = 0;
N.split('').forEach((e, idx) => {
let num = e;
if (isNaN(num)) num = e.charCodeAt() - 55;
result += num * Math.pow(B, N.length - idx - 1);
});
return result;
}
문자열을 문자단위로 만들어서 알파벳일때는 A가 10 B가 11로 변환해서 진법에 대한 계산을 하여 반환합니다.
'코딩문제' 카테고리의 다른 글
동전 거스름돈 계산하기 (0) | 2024.04.01 |
---|---|
진법 변환 결과 출력 (0) | 2024.04.01 |
도화지 색칠하기 (0) | 2024.03.31 |
문자열 세로 추출 (0) | 2024.03.30 |
2차원 배열의 최대 값 및 위치 찾기 (0) | 2024.03.30 |