본문 바로가기
IT/Javascript

두 정수 사이의 합

by DOSGamer 2022. 7. 14.
반응형

문제

두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요.
예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.

제한조건

  • a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요.
  • a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다.
  • a와 b의 대소관계는 정해져있지 않습니다.

입출력 예


a b result
3 5 12
3 3 3
5 3 12

풀이방향

  • 두 정수의 합을 구하는 방법은 두 정수의 차이를 구하는 방법과 같습니다.

문제풀이

function sumOfTwoIntegers(a, b) {
  let answer = 0;
  let smallNumber = (a <= b) ? a : b;
  let bigNumber = (a > b) ? a : b;

  for (let i = smallNumber; i <= bigNumber; i++) {
    answer += i;
  }
  return answer;
}

export { sumOfTwoIntegers };
import { sumOfTwoIntegers } from "../src/sumOfTwoIntegers";

describe("sumOfTwoIntegers", () => {
  it("should return 12 for the sum of 3, 5", () => {
    expect(sumOfTwoIntegers(3, 5)).toBe(12);
  });

  it("should return 3 for the sum of 3, 3", () => {
    expect(sumOfTwoIntegers(3, 3)).toBe(3);
  });

  it("should return 12 for the sum of 5, 3", () => {
    expect(sumOfTwoIntegers(5, 3)).toBe(12);
  });

});

문제출처

다른 풀이

function adder(a, b){
    var result = 0
    return (a+b)*(Math.abs(b-a)+1)/2;
}
반응형

'IT > Javascript' 카테고리의 다른 글

JavaScript Key code  (0) 2023.03.17
Babel+Webpack 설정방법  (0) 2022.08.30
Javascript 함수형 예제  (0) 2022.08.30
Javascript 객체 복사 (Object, Array)  (0) 2022.08.10
약수의 합  (0) 2022.07.14
행렬의 덧셈  (0) 2022.07.14
수박수박수박수박수박수?  (0) 2022.07.14
문자열을 정수로 바꾸기  (0) 2022.07.14