import java.util.*;
public class Size{
public static void main(String[] args)throws Exception{
Scanner s= new Scanner(System.in);
System.out.print("请输入第一个数:");
float a=s.nextFloat();
System.out.print("请输入第二个数:");
float b=s.nextFloat();
System.out.println("两个数的和是:"+(a+b));
System.out.println("两个数的差是:"+(a-b));
System.out.println("两个数的积是:"+(a*b));
System.out.println("两个数的商是:"+(a/b));
}
分析题目
NumberFormatException,数字格式异常,常见于由字符串转换到数字的时候会出现
ArithmeticException ,除0异常.这个异常常见于整数除整数,如果被除数是0,那么会抛出这个异常.但是提示要求是小数除小数.double小数就算是0,那么在存储的时候也不是简单的0,而可能是0.00000000001等情况,那么除零异常就不会被抛出.我们可以自己手动判断被除数是否等于0,如果等于0,那么我们手动抛出该异常,然后进行捕获
参考代码一:简洁版
import?java.util.Scanner;
public?class?DivDemoSp?{
public?static?void?main(String[]?args)?{
Scanner?sc?=?new?Scanner(System.in);
while(true){
try{
System.out.println("输入除数");
double?d1?=?Double.parseDouble(sc.nextLine());
System.out.println("输入被除数");
throw?new?ArithmeticException("捕获到除0异常~~!!");//手动抛出除零异常
break;//如果能正常运行到这里,说明前面的输入都是正确的,所以可以跳出循环了
}catch(NumberFormatException?e1){//捕获数字格式异常
System.out.println("捕获到数字格式异常");
continue;
测试代码
输入除数
输入被除数
捕获到除0异常~~!!
agc
捕获到数字格式异常
参考代码二:
public?class?DivDemo?{
static?Scanner?sc?=?new?Scanner(System.in);//?定义一个扫描器,用于读取输入信息
public?static?void?main(String[]?args)?{//?main方法
double?d1?=?getNum("输入?除数");//?调用输入数字的方法
try?{
throw?new?ArithmeticException("捕获到除零异常!!!");
}?catch?(ArithmeticException?exception)?{//捕获到除零异常
System.out.println(exception.getMessage());//打印出异常信息
//getNum方法,用于得到一个数字
static?double?getNum(String?tips)?{
double?dnum;//?定义一个小数变量
while?(true)?{
System.out.println(tips);//?显示提示文字
String?s1?=?sc.nextLine();//?读取输入的一行信息
dnum?=?Double.parseDouble(s1);//?如果可以把输入的信息转换成数字就跳出循环,
//?如果无法把信息转成数字就会报数字格式异常
break;//跳出循环
}?catch?(NumberFormatException?exception)?{//捕获数字格式异常
System.out.println("捕获到了数字格式错误异常!!!");//提示文字,并且继续循环
return?dnum;//返回数字
运行测试
输入?除数
①0
捕获到除零异常!!!
①0abc
捕获到了数字格式错误异常!!!
public static void main(String[] args) {
System.out.println(discuss + "===" + remainder);
private static double discuss; // 商
private static double remainder;// 余数
// 把两个数相减的方法 minuend:被减数 subtractor:减数
public static void cutter(double minuend, double subtractor) {
// 如果减数大于被减数 为余数赋值 return;
if (subtractor minuend) {
remainder = minuend;
return;
// 如果减数=被减数 为余数赋值 0 商数+1 返回
else if (subtractor == minuend) {
discuss++;
remainder = 0;
// 如果都不满足 证明没除进 减去减数后在调用 cutter 方法
else {
cutter(minuend - subtractor, subtractor);
import java.util.Scanner;
public class Test {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
System.out.println("对不起,您的输入有误,请重新输入一个三位数:");
n = sc.nextInt();
int a = n;//a是个位数;
int b = (n0)/10;//b是十位数;
int c = n/100;//c是百位数;
int sum = a + b + c;
System.out.println("百位数是:"+c+"\t十位数是:"+b+"\t个位数是:"+a);
System.out.println("各位相加之和是:"+ sum);
public class hsjc
{
public static void main(String[] ar)
double a=Double.valueOf(ar[0]);
double b=Double.valueOf(ar[1]);
System.out.println("sum:"+(a+b));
System.out.println("商:"+(a/b));
System.out.println("积:"+(a*b));
System.out.println("差:"+(a-b));
}catch(Exception e)
System.out.println("输入的参数格式错误!");
以上就是土嘎嘎小编为大家整理的JAVA求商的代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!