如何用Java编写模拟ATM取款机的程序

如何用Java编写模拟ATM取款机的程序,第1张

import java.io.IOException

/**

* ATM机类

*

* 查看余额

*

* 取款

*

* 存款

*

* 退出系统

*

*

*

*/

public class ATM {

static double yue = 1200.00

public static void main(String[] arg) {

ATM localTest1 = new ATM()

localTest1.ATM_Operate()

}

/**

* ATM机的 *** 作

*/

private void ATM_Operate() {

System.out.println("欢中源亮迎使用中国工商银行ATM取款机")

System.out.println("1、查看余额 2、裂兆取款")

System.out.println("3、存款0、退出")

System.out.print("请输入您需要的服务:")

byte[] buffer = new byte[512]

try {

int count = System.in.read(buffer)// 返回实际读取的字节数

System.out.print("您输入的是:")

for (int i = 0i <counti++) {

System.out.print("" + (char) buffer[i])

}

if ((char) buffer[0] == '1') {

// 查看余额

System.out.println("您的余额是:¥" + yue + "元")

System.out.println()

ATM_Operate()

} else if ((char) buffer[0] == '2') {

// 取款

withdrawal()

System.out.println()

ATM_Operate()

} else if ((char) buffer[0] == '3') {

//卖宽 存款

deposit()

System.out.println()

ATM_Operate()

} else if ((char) buffer[0] == '0') {

// 退出

System.out.println("您已经成功退出系统,谢谢你的使用")

System.exit(0)

} else {

System.out.println("输入不合法,请重新输入")

System.out.println()

ATM_Operate()

}

} catch (IOException e) {

e.printStackTrace()

}

}

/**

* 取款

*

* @throws IOException

*/

private void withdrawal() throws IOException {

byte[] buffer = new byte[512]

System.out.print("请输入您要取出的金额:¥")

int count2 = System.in.read(buffer)// 返回实际读取的字节数

System.out.print("您输入的金额是:")

for (int i = 0i <count2 - 1i++) {

System.out.print("" + (char) buffer[i])

}

System.out.println()

// 字符0 ~ 9对应ASCII值48 ~ 57

boolean flag = false

for (int i = 0i <count2 - 1i++) {

if ((char) buffer[i] >47 &&(char) buffer[i] <58) {

if (i == count2 - 2) {

flag = true

}

} else {

// 输入的字符不是数值

System.out.println("输入不合法,请重新输入")

withdrawal()

break

}

}

System.out.println()

if (flag) {

System.out.print("您已成功取出¥:")

String num = ""

for (int i = 0i <count2 - 1i++) {

System.out.print("" + (char) buffer[i])

num += (char) buffer[i]

}

yue -= Double.valueOf(num)

System.out.print(",现在余额¥:" + yue)

}

}

/**

* 存款

*

* @throws IOException

*/

private void deposit() throws IOException {

byte[] buffer = new byte[512]

System.out.print("请输入您要存入的金额:¥")

int count2 = System.in.read(buffer)// 返回实际读取的字节数

System.out.print("您输入的金额是:")

for (int i = 0i <count2 - 1i++) {

System.out.print("" + (char) buffer[i])

}

System.out.println()

// 字符0 ~ 9对应ASCII值48 ~ 57

boolean flag = false

for (int i = 0i <count2 - 1i++) {

if ((char) buffer[i] >47 &&(char) buffer[i] <58) {

if (i == count2 - 2) {

flag = true

}

} else {

// 输入的字符不是数值

System.out.println("输入不合法,请重新输入")

withdrawal()

break

}

}

System.out.println()

if (flag) {

System.out.print("您已成功存入¥:")

String num = ""

for (int i = 0i <count2 - 1i++) {

System.out.print("" + (char) buffer[i])

num += (char) buffer[i]

}

yue += Double.valueOf(num)

System.out.print(",现在余额¥:" + yue)

}

}

}

#include<stdio.h>

void main()

{

char SelectKey,CreditMoney,DebitMoney

while(1)

{

do{

clrscr()

puts("Please select key:")

puts("1.Quary")

puts("2.Credit")

puts("3.Debit")

puts("4.Return")

SelectKey=getch()

}while(SelectKey!='1'&&SelectKey!='2'&&SelectKey!='3'&&SelectKey!='4')

switch(SelectKey)

{

case'1':

clrscr()

puts("Your balance is $1000")

getch()

break

case'2':

do{

clrscr()

puts("Please select Credit money:")

puts("1.$50")

puts("2.$100")

puts("3.Return")

CreditMoney=getch()

}while(CreditMoney!='1'&&CreditMoney!='2'&&CreditMoney!='3')

switch(CreditMoney)

{

case'1':

clrscr()

puts("Your Credit money is $50,Thank you!")

getch()

break

case'2':

clrscr()

puts("Your Credit money is $100,Thank you!")

getch()

break

case'3':

break

}

break

case'3':

do{

clrscr()

puts("Please select Debit money:")

puts("1.$50")

puts("2.$100")

puts("3.$500")

puts("4.$1000")

puts("5.Return")

DebitMoney=getch()

}while(DebitMoney!='1'渗派&&DebitMoney!='2'&&DebitMoney!='3'&&DebitMoney!='4'&&DebitMoney!='5')

switch(DebitMoney)

{

case'1':

clrscr()

puts("Your Debit money is $50,Thank you!")

getch()

break

case'2':

clrscr()

puts("Your Debit money is $100,Thank you!")

getch()

break

case'3':

clrscr()

puts("Your Debit money is $500,Thank you!")

getch()

break

case'4':

clrscr()

puts("Your Debit money is $1000,Thank you!")

getch()

break

case'5':

break

}

break

case'4':

return

}

}

}

几个小错误而已...比孙携如忘了写双撇号,switch写错了...还有!= 忘了写! 等等.. 以上程序可以运则喊伏行了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12331868.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存