[Java]/과제

052 - Java 과제 4 : 반복문 while을 이용하여 1부터 입력 받은 정수 까지의 총합, 짝수 합, 홀수 합 구하기.

Jelly-fish 2023. 8. 31. 14:21
import java.util.Scanner;

public class Test052
{
	public static void main(String[] args)
	{

		// 1. 변수 선언 ***************************************************************
		
		Scanner sc = new Scanner(System.in);

		int inputNum;			//-- 사용자로부터 정수 입력 값 저장할 변수
		int totSum  = 0;		//-- (1 ~ 입력받은 값)까지의 모든 정수 합을 저장할 변수 
		int evenSum = 0;		//-- (1 ~ 입력받은 값)까지의 짝수 정수 합을 저장할 변수
		int oddSum  = 0;		//-- (1 ~ 입력받은 값)까지의 홀수 정수 합을 저장할 변수
		int i = 1;				//-- while 반복문의 루프 변수


		// 2. 사용자로부터 정수 입력 받기 **************************************************
		System.out.print("임의의 정수 입력 : ");
		inputNum = sc.nextInt();


		
		
		// 3. while문을 통해 각각의 합 구하기 **********************************************

		/* [Logic]▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤
			
			[ while 문을 돌면서 i는 (1 ~ inputNum)까지 증가한다. ]
			{		
					① 전체 정수의 총합 sum 변수에 i를 더한다.
						
						② [ 만약, i가 짝수라면? ]
						 	▶ true : 짝수의 합에 i를 더해준다.
						 	
						③ [ 만약, i가 짝수가 아니라, 홀수라면? ]
							▶ true : 홀수의 합에 i를 더해준다.
			}
			▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤▤
		*/
		
		
		while (i <= inputNum)			// ◎ i       : (1 ~ inputNum)까지 증가한다.
		{
									
			totSum += i;				// ◎ totSum  : 전체 정수의 총합

			if (i % 2 == 0)
			{
				evenSum += i;			// ◎ evenSum : 짝수의 총합
			}
			else if (i % 2 != 0)
			{
				oddSum += i;			// ◎ oddSum  : 홀수의 총합
			}

			System.out.println("[i] : " + i);
			System.out.println("[totSum] : " + totSum);
			System.out.println("[evenSum] : " + evenSum);
			System.out.println("[oddSum] : " + oddSum);

			i++;
		}

		// 4. 결과 출력하기 ************************************************************
		
		// 실행 예)
		// 임의의 정수 입력 : 396
		// >> 1 ~ 396 까지 정수의 합 : xxxxxxxx
		// >> 1 ~ 396 까지 짝수의 합 : xxxx
		// >> 1 ~ 396 까지 홀수의 합 : xxxx
		// 계속하려면 아무 키나 누르세요...

		System.out.printf("\n>> 1 ~ %d 까지 정수의 합 : %d", inputNum, totSum);
		System.out.printf("\n>> 1 ~ %d 까지 짝수의 합 : %d", inputNum, evenSum);
		System.out.printf("\n>> 1 ~ %d 까지 홀수의 합 : %d\n", inputNum, oddSum);

		
	}
}


// 실행 결과

/*
임의의 정수 입력 : 4
[i] : 1
[totSum] : 1
[evenSum] : 0
[oddSum] : 1
[i] : 2
[totSum] : 3
[evenSum] : 2
[oddSum] : 1
[i] : 3
[totSum] : 6
[evenSum] : 2
[oddSum] : 4
[i] : 4
[totSum] : 10
[evenSum] : 6
[oddSum] : 4

>> 1 ~ 4 까지 정수의 합 : 10
>> 1 ~ 4 까지 짝수의 합 : 6
>> 1 ~ 4 까지 홀수의 합 : 4
계속하려면 아무 키나 누르십시오 . . .
*/