新增功能
可以允许用户客户支付欧元或人民币 系统将自动转兑换为美元
以下是代码
本代码包含两个文件
一个文件是
CashRegister.java
/**
* ***********CopyRight**************
*-------Powered by QianXunNet-----
*-----Version 1.3 2009-01-23-----
*----- Design BY NiChao -----
*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
package chap04;
public class CopyOfCashRegister {
//申明常量
public static final double quarter_value=0.25; //25美分的货币折合成美元的价值
public static final double half_value=0.5; //50美分
public static final double min_value=0.01; //1美分
//汇率
public static final double rmb_to_dor=0.21; //人民币换美元
public static final double eur_to_dor=1.13; //欧元换美元
private double purchase; //应收金额
private double payment; //实际收取
private double change; //找零
//分类找零
private int change_dollors;
private int change_quarter;
private int change_half;
private int change_min;
private int times=0; //用来计数 货物输入次数
//类的方法
public int getTimes() {
return times;
}
//逐次结算总金额
public void recordParchase(double money){
this.purchase=this.purchase+money;
this.times++;
}
//将其他花币兑换成美元 initmoney 原始钱数 kind 兑换种类
public double exchange(double initMoney, int kind){
if(1 == kind) //人民币兑换美元
{
return initMoney*rmb_to_dor;
}
else if(2 == kind)
{
return initMoney*eur_to_dor;
}
else return initMoney; //美元换自己
}
//接受客户付款 有两种付款方式
//直接付出全部金额 ( 方法重载)
public void recordPayment(double payMent){
this.payment=payMent;
}
public void recordPayment(double dollers,double quarter ,double half ,double min ){
//分别输入客户给的各种货币 美元 四分之美元 半美元 以及1美分的个数
//计算客户支付的总的钱数 payment
this.payment=this.payment+dollers+quarter*quarter_value+half*half_value+min*min_value;
}
//找零方法
public void giveChange(){
this.change=this.payment-this.purchase;
//现将找零乘上100
int change_temp =(int) Math.round(this.change*100);
//美元数
this.change_dollors=change_temp/100;
//1/2美元数
this.change_half=(change_temp-this.change_dollors*100)/50;
//1/4美元数
this.change_quarter = (change_temp-this.change_dollors*100-this.change_half*50)/25;
//没分数
this.change_min = (change_temp-this.change_dollors*100-this.change_half*50-this.change_quarter*25);
}
public int getChange_dollors() {
return change_dollors;
}
public void setChange_dollors(int change_dollors) {
this.change_dollors = change_dollors;
}
public int getChange_quarter() {
return change_quarter;
}
public void setChange_quarter(int change_quarter) {
this.change_quarter = change_quarter;
}
public int getChange_half() {
return change_half;
}
public void setChange_half(int change_half) {
this.change_half = change_half;
}
public int getChange_min() {
return change_min;
}
public void setChange_min(int change_min) {
this.change_min = change_min;
}
public double getChange() {
return change;
}
public void setChange(double change) {
this.change = change;
}
}
还有一个文件是
CashRegisterTester.java
/**
* ***********CopyRight**************
*-------Powered by QianXunNet-----
*-----Version 1.3 2009-01-23-----
*----- Design BY NiChao -----
*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*/
package chap04;
import java.io.*;
import java.util.*;
import chap04.CopyOfCashRegister;
public class CopyOfCashRegisterTester {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("----------------简易超市收款系统----------------");
System.out.println("-------------感谢您的使用 祝您工作顺利------------");
System.out.println("输入0开始工作");
Scanner cin=new Scanner(System.in);
while(cin.nextInt()==0){
System.out.print("请输入客户购物的总金额……");
CopyOfCashRegister case1 = new CopyOfCashRegister();
int input =1;
while(input == 1)
{
double p =cin.nextDouble(); //输入客户支付的金额
case1.recordParchase(p);
System.out.print("input continue? 0:结束 1:继续");
input=cin.nextInt();
}
//做出选择 纯美元支付还是美元美分共同支付
System.out.println("总计输入"+case1.getTimes()+"次");
System.out.println("1.多种货币支付 2.单一货币支付");
int a=cin.nextInt();
while(a!=1&&a!=2 )
{System.out.print("选择有误请重新选择……");System.out.println("1.多种货币支付 2.单一货币支付");a=cin.nextInt();}
if(1 == a){
System.out.println("请输入各种货币的数量");
System.out.println("美元数: ");
double d=cin.nextDouble();
System.out.println("25美分数量: ");
double q=cin.nextDouble();
System.out.println("50美分数量: ");
double h=cin.nextDouble();
System.out.println("1美分数量: ");
double m=cin.nextDouble();
case1.recordPayment(d,q,h,m);
}
else if( 2== a){
System.out.println("客户选择了单一一种美元: ");
System.out.println("请选择你支付的货币种类 1.人民币 2.欧元 3.美元 ");
int kind1=cin.nextInt();
System.out.println("请输入客户支付的钱数");
double d1=cin.nextDouble();
double d2=case1.exchange(d1, kind1);
case1.recordPayment(d2);
System.out.printf("客户支付的钱折合成美元是 %5.2f 美元",d2);
}
// 找零模块
case1.giveChange();
System.out.println("找零如下:");
System.out.printf("总计找零 %5.2f",case1.getChange());
System.out.println("支付如下 ");
System.out.println(case1.getChange_dollors()+"个美元");
System.out.println(case1.getChange_half()+"个1/2美元");
System.out.println(case1.getChange_quarter()+"个1/4美元");
System.out.println(case1.getChange_min()+"个美分");
}
}
}
运行实例如下
----------------简易超市收款系统----------------
-------------感谢您的使用 祝您工作顺利------------
输入0开始工作
0
请输入客户购物的总金额……45
input continue? 0:结束 1:继续1
23.34
input continue? 0:结束 1:继续0
总计输入2次
1.多种货币支付 2.单一货币支付
2
客户选择了单一一种美元:
请选择你支付的货币种类 1.人民币 2.欧元 3.美元
2
请输入客户支付的钱数
64.88
客户支付的钱折合成美元是 73.31 美元找零如下:
总计找零 4.97支付如下
4个美元
1个1/2美元
1个1/4美元
22个美分
--------------------------------------------------------------
分享到:
相关推荐
相关简介:<br><br>《兴华汽车配件进销存管理软件》本软件主要包括如下功能:<br>一:采购管理<br> 1:进货单<br> 2:付款单<br> 3:采购退货<br>二:销售管理<br> 1:销售单<br> 2:收款单<br> 3:销售退货<br>三:库存管理...
2:检修录入<br> 1:检修录入<br>三:配件管理<br> 1:日常进销<br> 1:配件进货<br> 2:配件销售<br> 2:配件库存<br> 1:当前库存明细<br> 2:当前库存按配件汇总<br> 3:当前库存按仓库汇总<br>四:期间设置<br> 1:期间设置...
相关简介:<br><br>《兴华汽车销售管理软件》主要包括如下功能:<br>一:库存管理<br> 1:当前库存分类汇总表<br>二:汽车进货<br> 1:采购订单<br> 2:进货登记<br> 3:付款登记<br>三:基础信息<br> 1:车型定义<br> 2:供方...
它的基本功能一:基础台帐<br> 1:合同台帐<br> 2:摊位台帐<br> 3:客户台帐<br>二:租赁登记<br> 1:租赁登记<br>三:收款登记<br> 1:租金登记<br> 1:租金登记明细<br> 2:租金登记<br> 2:押金登记<br> 1:押金登记明细<br>...
用户密码管理<BR><BR>二、文件列表<BR><BR>lj20.mde access2000执行文件<BR><BR>三、〖电子制品厂管理系统〗使用方法<BR><BR>1. 确保你已经安装了access2000<BR>2. 确何你已经安装了graph(OFFICE所带,一般缺省已经...
相关简介:<br><br>《兴华库存管理系统专业版》本系统包括如下功能:<br>一.库存管理.<br> 1.货品信息管理.<br> 2.货品库存管理.<br> 3.短线货品管理.<br> 4.超储货品管理.<br>二.入库管理.<br> 1.入库登记.<br> 2....
支持图片、Flash<br>网站首页多处广告:支持图片、Flash<br>大类、小类广告:每个大类、小类可以自定义多个图片广告<br>浮动对联广告:后台可以控制开关的网站左右侧浮动广告<br>网站首页弹出窗口广告:可以自定义...
支持图片、Flash<br>网站首页多处广告:支持图片、Flash<br>大类、小类广告:每个大类、小类可以自定义多个图片广告<br>浮动对联广告:后台可以控制开关的网站左右侧浮动广告<br>网站首页弹出窗口广告:可以自定义...
<br> 多种核算体系的支持(售价、进价、移动加权) <br> 提供供应商费用单、付款单、应付帐,简化对帐工作 <br> 提供客户费用单、收款单、应收帐,简化对帐工作 <br> 全面财务报表支持 <br>(12)客户关系管理 ...
<BR><BR>二、文件列表<BR><BR>setup.exe 安装程序<BR><BR>三、〖ACCESS97的繁简转换工具〗使用方法<BR><BR>1. 确保你已经安装了access97<BR>2. 确保你使用的是windows98 (windowsNT/2000未测试过,估计应该也可以)...
upup8网络购物专家 特别版 功能介绍:<br><br>01. 网站界面后台随意更换,每个分类可以定义不同界面风格<br>02. 完善留言簿功能,添加管理员回复功能<br>03. 增加缺货登记功能:客户需要网站没有的相关商品,可以在...
软件名称:睿商商务管理系统<br>软件版本:V4.0<br>建议分类:国产软件-> 行业软件->商业贸易<br>软件大小:后台 105451KB 前台21260KB<br>软件语言:简体中文<br>软件类型:国产软件/ 行业软件<br>运行环境:Win9x,...
支持POST打印<br>本系统支持各种POST打印机,每次收钱都会打印出像超市收银一样的小票。<br><br>1.2.9.报表内容丰富<br>系统提供各种管理报表,经营分析报表,支持各种查询方式,满足美容美发店进行管理分析的需求。...
01. 网站界面后台随意更换,每个分类可以定义不同界面风格<br>02. 完善留言簿功能,添加管理员回复功能<br>03. 增加缺货登记功能:客户需要网站没有的相关商品,可以在这里提交,网站如果条件可以及时补货,供客户...
基金业务<br>- 企业理财服务<br>- 金融机构服务 | **企业业务**<br>- 账户管理<br>- 付款业务<br>- 信贷业务<br>- 收款业务<br>- 投资理财<br>- 代理行业务<br>- 银企互联 | **企业电子银行业务**<br>- 存款业务<br...
<br> 本系统在上一版本的基础上进行了较大的修改,主要修改为:合同编号的位数可以自行设定,增加了收款合同的管理。<br> 注册价格为人民币238元。<br> 数据库位置为:C:\ht\ht.mdb。<br> 用户名和密码均为admin。...
首酷企业进销存管理系统,专业的企业管理系统<br>一、系统特色<br>采用稳定、安全、高效的数据库系统<br>首酷进销存管理系统分为单机版和网络版,分别采用Microsoft公司的Access和SQL Server 2000作为后台数据库,...
<br>1、本系统界面简洁美观,操作简单直观,无需专业培训即可使用。<br>2、系统自动后厨打印,省去了服务员到后厨传菜的过程,大大提高了工作效率。<br>3、强大VIP卡管理功能,支持储值卡;还有完善的客户管理模块。...
5. **商品/服务列表**:使用`<table>`标签来创建表格,包含`<tr>`(行)、`<th>`(表头)和`<td>`(数据单元格)展示商品名称、数量、单价和总计。 6. **总价**:在表格下方,用`<p>`标签展示总金额。 7. **支付方式...