Java如何编写自动售票机程序

首先,写程序之前要先明白售票机的一个售票流程

 

 

 明白了整体流程之后开始写程序:

1.为了能有一个比较好的人机交互过程,我们可以在程序的最开始加入一段提示语句:

package test;
import java.util.Scanner;
public class Demo007 {
  public static void main(String[]args){
  System.out.println("请投币购票,票价:10元");

告诉我们的顾客一些基本信息:票价多少!

 

2.顾客现在需要来投币购票了

  Scanner scanner = new Scanner(System.in);
  int money = scanner.nextInt();

创建一个变量money,就是我们顾客第一次投币的一个量。

但是在生活中,我们可能会使用零钱分多次投币,所以我们还需要来创建另外的变量money1。

money1变量的含义是从第二次至最后一次的投钱量,所以初始设置量为0元。

创建money1变量:

  int money1=0;

 

3.在创建好了变量之后,我们就要开始来进行判断了:

  while(money<10){
  System.out.println("钱币不足,请继续投币,还缺:"+(10-money)+"元!");
  money1 = scanner.nextInt();
  money=money+money1;
  }

  System.out.println("支付成功!");
  System.out.println("找零:"+(money-10)+"元");
  System.out.println("正在打印......");
  System.out.println("出票成功!");

使用while循环语句,注意的是设置条件。

条件设置错了就会变成死循环。

我们设置条件是money<10,在程序开头int money = scanner.nextInt();

顾客已经进行了第一次的投币,我们就可以使用while判断,如果第一次投钱就满足了条件,

则直接运行while外面的语句:

  System.out.println("支付成功!");
  System.out.println("找零:"+(money-10)+"元");
  System.out.println("正在打印......");
  System.out.println("出票成功!");

提示顾客支付成功,找零钱等。

假使顾客投钱数量不足10元,则进行while里面的循环:

while(money<10){
  System.out.println("钱币不足,请继续投币,还缺:"+(10-money)+"元!");
  money1 = scanner.nextInt();
  money=money+money1;
  }

程序会提示顾客第一次投的钱不足,需要再次投钱:money1 = scanner.nextInt();

  money=money+money1;意思是讲第一次投的钱加上第二次投的钱,两个数量相加,给予money一个新的值。

循环往复,直到顾客多次投币数量和≥10元即可跳出while循环,打印车票,程序结束。

 

posted @ 2019-11-23 09:17  Java园丁  阅读(1557)  评论(0编辑  收藏  举报