본문 바로가기
Coding Test/Java Coding Test

[프로그래머스 / 자바] - 두 정수 사이의 합

by nam_ji 2024. 1. 17.

두 정수 사이의 합

문제

  • 정수 a, b가 매개변수로 주어집니다.
  • a와 b 사이에 속한 모든 수를 더해서 출력하는 문제입니다.


테스트 (이클립스)

  • 사이의 값을 구하기 위해 for문을 사용합니다.
  • 여기서 a와 b가 어떤 값이 더 큰 값인지 모르기 때문에 if문에 a와 b를 비교하는 조건을 주고 그 안에서 조건에 맞게 for문을 작성해줍니다.
  • 다른 방법으로 for문에 if문의 조건을 삼항연산자를 이용하여 풀 수도 있습니다.
package com.namji.codingtest.level0;

public class SumBetweenTwoIntegers {
	public static void main(String[] args) {
		/*
		 * 
		 */
		int a = 5;
		int b = 3;
		long answer = 0;
		long answer1 = 0;
		if (a < b) {
			for (int i = a; i <= b; i++) {
				answer += i;
			}
		}else {
			for (int i = b; i <= a; i++) {
				answer += i;
			}
		}
		
		System.out.println("if문과 for문 사용한 정답 = " + answer);
		
		for (int i = ((a < b) ? a :  b); i <= ((a < b) ? b : a); i++) {
			answer1 += i;
		}

		System.out.println("for문 조건을 삼항연산자로 풀이한 정답 = " + answer1);
	}
}


프로그래머스 코드

class Solution {
    public long solution(int a, int b) {
        long answer = 0;
        if (a < b) {
            for (int i = a; i <= b; i++) {
                answer += i;
            }
        } else {
            for (int i = b; i <= a; i++) {
                answer += i;
            }
        }
        return answer;
    }
}