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循环,打印车票,程序结束。