输入d时候如果输入数字不为浮点数则提示“sorry!请重新输入:”如果输入的数为浮点数则提示“再见”用以下代码补全 package t7; import java.text.DecimalFormat;//导入外面的包 import java.util.Scanner; import t2.WeekDemo; public class ZhiChuDemo { double zhichu[]=new double[7];//定义一个数组存放7个支出数据 String titles[]={"衣","食","住","行","交际","爱好","其他"}; public static void main(String[] args){ WeekDemo temp1=new WeekDemo();//创建对象 //打印 2023-3-28 星期二 System.out.println("今天是:"+temp1.getTodayStr());//周日是1 ...周六是7 ZhiChuDemo temp=new ZhiChuDemo(); temp.input(); temp.printPer(); temp.printArc(); } public void input(){//从键盘上接收数字并赋值 Scanner s=new Scanner(System.in); try{ for(int i=0;i<zhichu.length;i++){ System.out.println("请输入这个月--"+titles[i]+"---这项的支出"); String str=s.next();//从键盘上接收一个字符串 //判断str是不是合法的float数 如果不是,重新输入 zhichu[i]=Float.parseFloat(str); } }catch(Exception ex){ System.out.print(ex.getMessage()); } } public double countSum(){//计算总支出 double all=0; for(int i=0;i<zhichu.length;i++){ all=all+zhichu[i];//累加 } return all; } public void printPer(){//打印百分比 double money=countSum(); // DecimalFormat df3 = new DecimalFormat("0.00"); System.out.println("总支出额:"+(int)money); for(int i=0;i<zhichu.length;i++){ System.out.println("---"+titles[i]+"---占总支出的百分比:"+((zhichu[i]/money)*100)+'%'); } } public void printArc(){//打印弧度值 double money=countSum(); for(int i=0;i<zhichu.length;i++){ System.out.println("---"+titles[i]+"---在图饼中占"+((int)((zhichu[i]/money)*360))+"度"); } } }
时间: 2023-12-06 21:43:07 浏览: 74
package t7;
import java.text.DecimalFormat;//导入外面的包
import java.util.Scanner;
import t2.WeekDemo;
public class ZhiChuDemo {
double zhichu[]=new double[7];//定义一个数组存放7个支出数据
String titles[]={"衣","食","住","行","交际","爱好","其他"};
public static void main(String[] args){
WeekDemo temp1=new WeekDemo();//创建对象
//打印 2023-3-28 星期二
System.out.println("今天是:"+temp1.getTodayStr());//周日是1 ...周六是7
ZhiChuDemo temp=new ZhiChuDemo();
temp.input();
temp.printPer();
temp.printArc();
}
public void input(){//从键盘上接收数字并赋值
Scanner s=new Scanner(System.in);
for(int i=0;i<zhichu.length;i++){
System.out.println("请输入这个月--"+titles[i]+"---这项的支出");
String str=s.next();//从键盘上接收一个字符串
//判断str是不是合法的float数 如果不是,重新输入
while(true) {
try{
zhichu[i]=Float.parseFloat(str);//如果能转换为浮点数,赋值并跳出循环
break;
}catch(Exception ex){
System.out.println("sorry!请重新输入:");//如果不能转换为浮点数,提示重新输入
str = s.next();
}
}
}
}
public double countSum(){//计算总支出
double all=0;
for(int i=0;i<zhichu.length;i++){
all=all+zhichu[i];//累加
}
return all;
}
public void printPer(){//打印百分比
double money=countSum();
System.out.println("总支出额:"+(int)money);
for(int i=0;i<zhichu.length;i++){
System.out.println("---"+titles[i]+"---占总支出的百分比:"+((zhichu[i]/money)*100)+'%');
}
}
public void printArc(){//打印弧度值
double money=countSum();
for(int i=0;i<zhichu.length;i++){
System.out.println("---"+titles[i]+"---在图饼中占"+((int)((zhichu[i]/money)*360))+"度");
}
}
}
阅读全文