正文
整钱兑零java代码 java零钱兑换
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
java整钱兑零
import java.util.Scanner;
public class Change {
public final static String NICKEL="nickel";
public final static String PENNIE="pennie";
public final static String PENNIES="pennies";
public final static String DIME="Dime";
public final static String DIMES="Dimes";
public final static String QUARTER="Quarter";
public final static String QUARTERS="Quarters";
public final static String DOLLARS="dollars";
public final static String DOLLAR="dollar";
public static String execute(String money){
StringBuffer result = new StringBuffer();
String[] sp=money.split("\\.");
int dollors=Integer.parseInt(sp[0]);
if(dollors==0){
}else if(dollors==1){
result.append("1 "+DOLLAR+" ");
}else{
result.append(dollors+" "+DOLLARS+" ");
}
int[] cent=cents(Integer.parseInt(sp[1]));
if(cent[0]1){
result.append(cent[0]+" "+QUARTERS+" ");
}else if(cent[0]==1){
result.append(cent[0]+" "+QUARTER+" ");
}
if(cent[1]1){
result.append(cent[1]+" "+DIMES+" ");
}else if(cent[1]==1){
result.append(cent[1]+" "+DIME+" ");
}
if(cent[2]==1){
result.append("1 "+NICKEL+" ");
}
if(cent[3]1){
result.append(cent[3]+" "+PENNIES+" ");
}else if(cent[3]==1){
result.append(cent[3]+" "+PENNIE+" ");
}
return result.toString();
}
public static int[] cents(int cent){
int[] result=new int[4];
int sy;
if (cent25){
result[0]=cent/25;
cent%=25;
}else{
result[0]=0;
}
if(cent10){
result[1]=cent/10;
cent%=10;
}else{
result[1]=0;
}
if(cent5){
result[2]=1;
cent-=5;
}
result[3]=cent;
return result;
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("Please input the money:");
Double input=sc.nextDouble();
String result=execute(input.toString());
System.out.println(result);
}
}
请采纳整钱兑零java代码,谢谢
整元换零钱,把100元兑换成1元、2元、5元的钞票,一共有多少种不同的换法。
如只兑换一张5元,一张1元可兑换47张2元;如只兑换一张5元,三张1元可兑换46张2元;如只兑换一张5元,五张1元可兑换45张2元;以此类推:1元面额张数为奇数递增,2元面额张数为相连数递减,如只兑换一张5元,最多可兑换93张1元面额,1张2元面额。
如只兑换一张1元面额,最多可兑换19张5元,2张2元或47张2元、1张5元。
如只兑换一张2元面额,最多可兑换19张5元,3张1元或93张1元、1张5元。
谁能给一个Java程序代码我,要50行到100行就可以啦。最好有几行解释
给你一个前几天才帮人写的
“计算整钱兑零”。程序要求用户输入一个双精度数代表总元数,就会列出总值与其等价的1元币、二角五分币、5分币和1分币的数目。程序报告的数目是1元币的最大数、其次是二角五分币的最大数,等等,依此类推。只显示非零的单位。对单个单位显示单数单词,对多于一个单位的显示复数单词
import java.util.Scanner;
public class MoneyCalculate {
public static void main(String[] args) {
int max100 = 0;
int max25 = 0;
int max5 = 0;
int max1 = 0;
double money = getMoneyFromInput();
String str = String.valueOf(money).trim();
String[] ary = str.split("\\.");
max100 = Integer.parseInt(ary[0]);
if(ary.length == 2){
int fen = Integer.parseInt(ary[1]);
if(ary[1].trim().length() == 1){
fen = Integer.parseInt(ary[1]) * 10;
}
max25 = fen / 25;
if(fen % 25 != 0){
fen = fen % 25;
}else{
fen = 0;
}
max5 = fen / 5;
max1 = fen % 5;
}
StringBuilder sb = new StringBuilder(money + " = ");
if(max100 != 0){
sb.append(max100);
sb.append("*1 ");
}
if(max25 != 0){
sb.append(max25);
sb.append("*0.25 ");
}
if(max5 != 0){
sb.append(max5);
sb.append("*0.05 ");
}
if(max1 != 0){
sb.append(max1);
sb.append("*0.01 ");
}
System.out.println(sb.toString());
}
private static double getMoneyFromInput() {
Scanner scanner = new Scanner(System.in);
return scanner.nextDouble();
}
}
-----------
2.49
2.49 = 2*1 1*0.25 4*0.05 4*0.01
-----------
2.5
2.5 = 2*1 2*0.25
-----------
37.23
37.23 = 37*1 4*0.05 3*0.01
-----------------
123.569
123.569 = 123*1 22*0.25 3*0.05 4*0.01
整钱兑零java代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java零钱兑换、整钱兑零java代码的信息别忘了在本站进行查找喔。