商品价格问题
从键盘上输入意,见物品的价格(范围在0.10-5.00元),假设用户支付了一张5元纸币,请列出一种找零的方案,是的纸币及硬币的个数最少。入3.68远,应为两元一张,一元一张,五角一个,一角一个,五分一个,二分一个,一份一个。
完整的程序。谢了。
最佳答案
从键盘上输入一件物品的价格(范围在0.10-5.00元),假设用户支付了一张5元纸币,请列出一种找零的方案,并且纸币及硬币的个数最少。如3.68元,应为两元一张,一元一张,五角一个,一角一个,五分一个,二分一个,一分一个。
有几个错别字。。。。。。。。
下面代码是参考别人的。。。。
import java.io.*;
import java.util.Scanner;
public class zhaoling
{
public static void main(String args[])
{
Scanner in=new Scanner(System.in);
double a=in.nextDouble();
System.out.println("物品价格为:"+a);
double b=(5.00-a);
System.out.println("找零:"+b);
int x1;
x1=(((int)b-((int)b%2)))/2;
System.out.println("两元 :"+x1);
int x2;
x2=((int)b-x1*2);
System.out.println("一元:"+x2);
int x3;
double x_3=(b-x1*2-x2)*10;
x3=(((int)x_3-((int)x_3%5)))/5;
System.out.println("五角:"+x3);
int x4;
x4=((int)x_3-x3*5);
System.out.println("一角:"+x4);
int x5;
double x_y=(x_3-x3*5-x4)*10;
x5=(((int)x_y-((int)x_y%5)))/5;
System.out.println("五分:"+x5);
int x6;
x6=(((int)(x_y-x5*5)-((int)x_y-x5*5)%2))/2;
System.out.println("两分:"+x6);
int x7;
x7=(int)x_y-x5*5-x6*2;
System.out.println("一分:"+x7);
}
}
判断范围在0.10-5.00元代码自己写(这个个应该会吧),其实统一化成分,即以分为单位更方便,好像要用switch语句和递归,忘了,好长时间没看了。。。。。。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>