국비지원 JAVA 풀스택 과정/JAVA
[JAVA] 입력받은 두 수 사이의 숫자들을 모두 더하여 총합을 구하기
ODaram
2022. 9. 30. 16:37
입력받은 두 수 사이의 숫자들을 모두 더하여 총합을 구하기
입력받은 두 수 사이의 숫자들을 모두 더하여 총합을 구하기
두번째 입력 받은 숫자가 첫번째 숫자보다 작아야함
데이터 : num1 (첫번째 입력값, int), num2 (두번째 입력값, int), sum (총합, int) , Scanner scan
> 내가 푼 예제
package com.dream.controls;
import java.util.Scanner;
public class ForEx08 {
public static void main(String[] args) {
int num1=0, num2=0, sum=0;
Scanner sc = new Scanner(System.in);
System.out.println("입력받은 두 수 사이의 숫자들을 모두 더하여 총합을 구하기");
System.out.print("정수 입력(1) : ");
num1 = sc.nextInt();
System.out.print("정수 입력(2) : ");
num2 = sc.nextInt();
// ① 첫번째 입력한 정수가 두 번째 입력한 정수보다 클 경우 제어문을 사용하여 작은 값을 변수 start에 담고 큰 값은 변수 end 에 담는다.
if(num1 > num2) { // 첫 번째 입력한 수 보다 두번째 입력한 수가 더 클 경우
for(int i=num2; i<=num1; i++) {
sum+=i;
System.out.print(i+"\t");
}
System.out.println("\n첫번째 입력한 값이 더 큽니다.");
System.out.println(num2+" 와 "+num1+"사이의 숫자들의 총합은 "+sum+" 입니다.");
}else {
for(int i=num1; i<=num2; i++) {
sum+=i;
System.out.print(i+"\t");
}
System.out.println("\n두번째 입력한 값이 더 큽니다.");
System.out.println(num1+" 와 "+num2+"사이의 숫자들의 총합은 "+sum+" 입니다.");
}
}
}
> 정답
package com.dream.controls;
import java.util.Scanner;
public class ForEx08_Answer {
public static void main(String[] args) {
int num1=0, num2=0, sum=0, max=0, total=0;
Scanner sc = new Scanner(System.in);
System.out.println("입력받은 두 수 사이의 숫자들을 모두 더하여 총합을 구하기");
System.out.print("정수 입력(1) : ");
num1 = sc.nextInt();
System.out.print("정수 입력(2) : ");
num2 = sc.nextInt();
// ③ 첫번째 입력한 정수가 두 번째 입력한 정수보다 클 경우 제어문을 사용하여 작은 값을 변수 start에 담고 큰 값은 변수 end 에 담는다.
if(num1 > num2) { // 첫 번째 입력한 수 보다 두번째 입력한 수가 더 클 경우
max = num1; // 첫번째 입력받은 정수를 변수 temp 에 복사하여 담는다.
num1=num2; // 두번째 입력받은 정수를 변수 start에 복사하여 담는다.
num2 = max; // 첫번째 입력받은 정수를 변수 end에 복사하여 담는다.
// ④ for 루프를 사용하여 입력받은 두 수 사이의 수들을 더하여 총합을 구한다.
for(int i=num1; i<=num2; i++) {
total += i; // 누적(총합)시킨다.
System.out.println(i);
}
// ⑤총합을 출력한다.
System.out.println("\n"+num1+"에서"+num2+"까지의 총 합은 "+total+" 입니다.");
}else if (num1 < num2) { // 5<9
max=num2; // max=9
num2=num1; //num2=5
num1=max; // num1=9
for(int i=num2; i<=num1; i++) {
total += i;
System.out.print(i+"\t");
}
System.out.println("\n"+num1+"에서"+num2+"까지의 총 합은 "+total+" 입니다.");
}else { //입력값이 같으면 종료한다.
System.out.println("종료");
}
}
}