`
radovi
  • 浏览: 64601 次
  • 性别: Icon_minigender_1
  • 来自: 杭 州
社区版块
存档分类
最新评论

简易超市收款系统 <三>

阅读更多

新增功能
  可以允许用户客户支付欧元或人民币 系统将自动转兑换为美元


以下是代码

本代码包含两个文件

一个文件是
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个美分
-------------------------------------------------------------- 

       
分享到:
评论

相关推荐

    兴华汽车配件管理软件

    相关简介:&lt;br&gt;&lt;br&gt;《兴华汽车配件进销存管理软件》本软件主要包括如下功能:&lt;br&gt;一:采购管理&lt;br&gt; 1:进货单&lt;br&gt; 2:付款单&lt;br&gt; 3:采购退货&lt;br&gt;二:销售管理&lt;br&gt; 1:销售单&lt;br&gt; 2:收款单&lt;br&gt; 3:销售退货&lt;br&gt;三:库存管理...

    兴华电器维修管理软件

    2:检修录入&lt;br&gt; 1:检修录入&lt;br&gt;三:配件管理&lt;br&gt; 1:日常进销&lt;br&gt; 1:配件进货&lt;br&gt; 2:配件销售&lt;br&gt; 2:配件库存&lt;br&gt; 1:当前库存明细&lt;br&gt; 2:当前库存按配件汇总&lt;br&gt; 3:当前库存按仓库汇总&lt;br&gt;四:期间设置&lt;br&gt; 1:期间设置...

    兴华汽车销售管理软件

    相关简介:&lt;br&gt;&lt;br&gt;《兴华汽车销售管理软件》主要包括如下功能:&lt;br&gt;一:库存管理&lt;br&gt; 1:当前库存分类汇总表&lt;br&gt;二:汽车进货&lt;br&gt; 1:采购订单&lt;br&gt; 2:进货登记&lt;br&gt; 3:付款登记&lt;br&gt;三:基础信息&lt;br&gt; 1:车型定义&lt;br&gt; 2:供方...

    兴华摊位租赁管理软件

    它的基本功能一:基础台帐&lt;br&gt; 1:合同台帐&lt;br&gt; 2:摊位台帐&lt;br&gt; 3:客户台帐&lt;br&gt;二:租赁登记&lt;br&gt; 1:租赁登记&lt;br&gt;三:收款登记&lt;br&gt; 1:租金登记&lt;br&gt; 1:租金登记明细&lt;br&gt; 2:租金登记&lt;br&gt; 2:押金登记&lt;br&gt; 1:押金登记明细&lt;br&gt;...

    电子制品厂管理系统2000版本access2000

    用户密码管理&lt;BR&gt;&lt;BR&gt;二、文件列表&lt;BR&gt;&lt;BR&gt;lj20.mde access2000执行文件&lt;BR&gt;&lt;BR&gt;三、〖电子制品厂管理系统〗使用方法&lt;BR&gt;&lt;BR&gt;1. 确保你已经安装了access2000&lt;BR&gt;2. 确何你已经安装了graph(OFFICE所带,一般缺省已经...

    兴华库存管理专业版

    相关简介:&lt;br&gt;&lt;br&gt;《兴华库存管理系统专业版》本系统包括如下功能:&lt;br&gt;一.库存管理.&lt;br&gt; 1.货品信息管理.&lt;br&gt; 2.货品库存管理.&lt;br&gt; 3.短线货品管理.&lt;br&gt; 4.超储货品管理.&lt;br&gt;二.入库管理.&lt;br&gt; 1.入库登记.&lt;br&gt; 2....

    upup8网络购物系统英文(asp源码)下载

    支持图片、Flash&lt;br&gt;网站首页多处广告:支持图片、Flash&lt;br&gt;大类、小类广告:每个大类、小类可以自定义多个图片广告&lt;br&gt;浮动对联广告:后台可以控制开关的网站左右侧浮动广告&lt;br&gt;网站首页弹出窗口广告:可以自定义...

    upup8网络购物系统正式版

    支持图片、Flash&lt;br&gt;网站首页多处广告:支持图片、Flash&lt;br&gt;大类、小类广告:每个大类、小类可以自定义多个图片广告&lt;br&gt;浮动对联广告:后台可以控制开关的网站左右侧浮动广告&lt;br&gt;网站首页弹出窗口广告:可以自定义...

    秘奥进销存管理软件系统

    &lt;br&gt; 多种核算体系的支持(售价、进价、移动加权) &lt;br&gt; 提供供应商费用单、付款单、应付帐,简化对帐工作 &lt;br&gt; 提供客户费用单、收款单、应收帐,简化对帐工作 &lt;br&gt; 全面财务报表支持 &lt;br&gt;(12)客户关系管理 ...

    Access97繁简转换工具

    &lt;BR&gt;&lt;BR&gt;二、文件列表&lt;BR&gt;&lt;BR&gt;setup.exe 安装程序&lt;BR&gt;&lt;BR&gt;三、〖ACCESS97的繁简转换工具〗使用方法&lt;BR&gt;&lt;BR&gt;1. 确保你已经安装了access97&lt;BR&gt;2. 确保你使用的是windows98 (windowsNT/2000未测试过,估计应该也可以)...

    upup8网络购物专家 特别版(asp源码)

    upup8网络购物专家 特别版 功能介绍:&lt;br&gt;&lt;br&gt;01. 网站界面后台随意更换,每个分类可以定义不同界面风格&lt;br&gt;02. 完善留言簿功能,添加管理员回复功能&lt;br&gt;03. 增加缺货登记功能:客户需要网站没有的相关商品,可以在...

    睿商商务管理系统

    软件名称:睿商商务管理系统&lt;br&gt;软件版本:V4.0&lt;br&gt;建议分类:国产软件-&gt; 行业软件-&gt;商业贸易&lt;br&gt;软件大小:后台 105451KB 前台21260KB&lt;br&gt;软件语言:简体中文&lt;br&gt;软件类型:国产软件/ 行业软件&lt;br&gt;运行环境:Win9x,...

    delphi美容院管理系统源码.rar

    支持POST打印&lt;br&gt;本系统支持各种POST打印机,每次收钱都会打印出像超市收银一样的小票。&lt;br&gt;&lt;br&gt;1.2.9.报表内容丰富&lt;br&gt;系统提供各种管理报表,经营分析报表,支持各种查询方式,满足美容美发店进行管理分析的需求。...

    电子商务 网络购物(ASP源码)

    01. 网站界面后台随意更换,每个分类可以定义不同界面风格&lt;br&gt;02. 完善留言簿功能,添加管理员回复功能&lt;br&gt;03. 增加缺货登记功能:客户需要网站没有的相关商品,可以在这里提交,网站如果条件可以及时补货,供客户...

    电子商务支付与安全协议实验报告

    基金业务&lt;br&gt;- 企业理财服务&lt;br&gt;- 金融机构服务 | **企业业务**&lt;br&gt;- 账户管理&lt;br&gt;- 付款业务&lt;br&gt;- 信贷业务&lt;br&gt;- 收款业务&lt;br&gt;- 投资理财&lt;br&gt;- 代理行业务&lt;br&gt;- 银企互联 | **企业电子银行业务**&lt;br&gt;- 存款业务&lt;br...

    合同管理系统(ACCESS单机版)

    &lt;br&gt; 本系统在上一版本的基础上进行了较大的修改,主要修改为:合同编号的位数可以自行设定,增加了收款合同的管理。&lt;br&gt; 注册价格为人民币238元。&lt;br&gt; 数据库位置为:C:\ht\ht.mdb。&lt;br&gt; 用户名和密码均为admin。...

    首酷企业进销存管理系统

    首酷企业进销存管理系统,专业的企业管理系统&lt;br&gt;一、系统特色&lt;br&gt;采用稳定、安全、高效的数据库系统&lt;br&gt;首酷进销存管理系统分为单机版和网络版,分别采用Microsoft公司的Access和SQL Server 2000作为后台数据库,...

    嘉年华快餐管理系统

    &lt;br&gt;1、本系统界面简洁美观,操作简单直观,无需专业培训即可使用。&lt;br&gt;2、系统自动后厨打印,省去了服务员到后厨传菜的过程,大大提高了工作效率。&lt;br&gt;3、强大VIP卡管理功能,支持储值卡;还有完善的客户管理模块。...

    收据模板HTML

    5. **商品/服务列表**:使用`&lt;table&gt;`标签来创建表格,包含`&lt;tr&gt;`(行)、`&lt;th&gt;`(表头)和`&lt;td&gt;`(数据单元格)展示商品名称、数量、单价和总计。 6. **总价**:在表格下方,用`&lt;p&gt;`标签展示总金额。 7. **支付方式...

Global site tag (gtag.js) - Google Analytics