JAVA题求解,完整答案,谢谢!!
编写程序,要求输入若干个整数,输入的同时计算前面输入各数据的乘积,若乘积超过100000,则认为是异常,捕获这个异常并处理。...
编写程序,要求输入若干个整数,输入的同时计算前面输入各数据的乘积,若乘积超过100000,则认为是异常,捕获这个异常并处理。
展开
2个回答
展开全部
import java.util.Scanner;
public class MultiplyDemo {
public static void main(String[] args) {
multiply();
}
public static void multiply() {
Scanner scan = new Scanner(System.in);
double multiplied = 1;// 乘积
boolean continueRun = true;// 程序是否继续进行
try {
do {
if (multiplied > 100000) {// 乘积超过100000抛出异常信息
throw new Exception("乘积:" + multiplied + "错过100000");
}
double value = scan.nextDouble();
multiplied = multiplied * value;
} while (scan.hasNextDouble() && continueRun);
} catch (Exception e) {// 处理异常信息
continueRun = false;
e.printStackTrace();
}
}
}
展开全部
import java.util.Scanner;
public class MyException extends Exception {
public MyException(String msg) {
super(msg);
}
public static void multiply(int s) throws MyException {
if (s>10000) {
throw new MyException("乘积大于10000报错!");
}
System.out.println(s);
}
public static void main(String[] args) {
try{
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数");
int i =sc.nextInt();
while(i<=10000){
System.out.println("请再次输入一个整数");
int j =sc.nextInt();
i*=j;
multiply(i);
System.out.println("两个数相乘="+i);
}
}catch(MyException e){
e.printStackTrace();
}
}
}
public class MyException extends Exception {
public MyException(String msg) {
super(msg);
}
public static void multiply(int s) throws MyException {
if (s>10000) {
throw new MyException("乘积大于10000报错!");
}
System.out.println(s);
}
public static void main(String[] args) {
try{
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个整数");
int i =sc.nextInt();
while(i<=10000){
System.out.println("请再次输入一个整数");
int j =sc.nextInt();
i*=j;
multiply(i);
System.out.println("两个数相乘="+i);
}
}catch(MyException e){
e.printStackTrace();
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询