法1(自己的笨方法,顺着往下想即可)
import java.util.*;
public class Main{
public static void main(){
Scanner reader = new Scanner(System.in);
float x = reader.nextFloat();
int a = (int)x/10; //十元纸
int b = ((int)x%10)/5; //五元纸
int c= ((int)x%10)-5; //一元纸币
float d= x%1*100; //小数部分乘100, 便于计算
int e = (int)d/50; //五角硬币数量
int f = ((int)d%50)/10; //一角硬币数量
int g = ((int)d%50)%10/2; //贰分硬币数量
int h= 2*g%2; //壹分硬币数量
System.out.println(a+ "张十元");
System.out.println(b+ "张五元");
System.out.println(c+ "张一元");
System.out.println(e+"个五角");
System.out.println(f+"个一角");
System.out.println(g+"个贰分");
System.out.println(h+"个壹分");
}
}
法2 哑铃的方法
用了数组,很聪明的做法
import java.util.Scanner;
public class Main{
public static void main(String arg[]){
Scanner reader =new Scanner(System.in);
double x=reader.nextDouble();
double []y=new double [10];
System.out.println((int)(x/10)+" 张十元");
y[0]=x%10;
System.out.println((int)y[0]/5+" 张五元");
y[1]=y[0]%5;
System.out.println((int)(y[1]/1)+" 张一元");
y[2]=y[1]%1;
System.out.println((int)(y[2]/0.5)+" 张五角");
y[3]=y[2]%0.5;
System.out.println((int)(y[3]/0.1)+" 张一角");
y[4]=y[3]%0.1;
System.out.println((int)(y[4]/0.02)+" 张贰分");
y[5]=y[4]%0.02;
System.out.println((int)(y[5]/0.01)+" 张壹分");
}
}