题目描述
给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C。
输入描述:
输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。
输出描述:
对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例的编号(从1开始)。
输入例子:
4
1 2 3
2 3 4
2147483647 0 2147483646
0 -2147483648 -2147483647
输出例子:
Case #1: false
Case #2: true
Case #3: true
Case #4: false
1 import java.util.Scanner; 2 public class Main{ 3 public static void main(String[] args) { 4 Scanner sc=new Scanner (System.in); 5 long T=sc.nextLong(); 6 for(int i=0;i<T;i++) { 7 long A=sc.nextLong(); 8 long B=sc.nextLong(); 9 long C=sc.nextLong(); 10 add(A, B, C, i+1); 11 } 12 13 } 14 public static void add(long A,long B ,long C ,int i) { 15 if(A+B>C) { 16 System.out.println("Case #"+i+": true"); 17 }else { 18 System.out.println("Case #"+i+": false"); 19 } 20 } 21 }
思路:
这里主要有一个问题是范围问题,如果用int型,那么会超出界限,所以我用的是long型
在每次输入一组数据后,都调用一下判断的方法add()
add(long A,long B ,long C ,int i)方法
定义4个形参A,B,C和序列i,在每次输入后,将其传入,并且比较是否正确
给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C
原文:https://www.cnblogs.com/BLACKJT/p/12184559.html