本文目录一览:
- 1、JAVA 模拟ATM柜员机模拟程序
- 2、用JAVA制作简单的ATM的代码 求教
- 3、Java模拟银行ATM完成以下功能: 1)查询余额 2)取款 3)存款 4)退出
- 4、用java做一个简易的ATM机具体流程在下面
- 5、Java编程实现程序用于模拟ATM取款机。
- 6、用java编写多线程银行ATM 模拟程序
JAVA 模拟ATM柜员机模拟程序
/**
要求:使用字符用户界面。当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:
1、查询余额:初始余额为10000元
2、ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。
3、ATM存款:不能出现负存款。
4、修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。
(卡号密码余额放到文件中)
*/
public class Test {
private static int account;
private static int password;
private static int money;
private static boolean isLogin;
static{
account = 123456;
password = 123456;
money = 10000;
isLogin = false;
}
//存款
public void cun(int cunKuan){
if(cunKuan=0){
this.money += cunKuan;
}else{
System.out.println("存款不能为负!");
}
}
//取款
public void qu(int quKuan){
if(this.money - quKuan 0){
System.out.println("余额不足!");
return;
}
if(isValid(quKuan)){
this.money -= quKuan;
}else{
System.out.println("取款不能为负,且应为100的倍数!");
}
}
//判断是否为有效的金额
private boolean isValid(int money){
if(money = 0 money % 100 == 0){
return true;
}
return false;
}
//登陆
public void login(){
System.out.println("请输入账号和密码【格式为:账号/密码】");
String login = new Scanner(System.in).next();
if(login.equalsIgnoreCase("123456/123456")){
this.isLogin = true;
}else{
System.out.println("账号或者密码错误,请重新输入!");
login();
}
}
//主菜单
public void show(){
System.out.println("[1]存款");
System.out.println("[2]取款");
System.out.println("[3]退出");
System.out.println("请输入:");
int key = new Scanner(System.in).nextInt();
switch (key) {
case 1:
cun(new Scanner(System.in).nextInt());
break;
case 2:
qu(new Scanner(System.in).nextInt());
break;
case 3:
System.exit(0);
default:
break;
}
}
public static void main(String[] args) {
Test t = new Test();
t.login();
if(t.isLogin){
for(;;){
t.show();
System.out.println("您当前的余额为:" + t.money);
}
}
}
}
用JAVA制作简单的ATM的代码 求教
ok,稍等
呵呵,已经给你拆分成了两个独立的类了。
我再吧注释加起吧。
哪儿不清楚的可以给我留言嘛,刚开始学习的时候就要多看看别人写的代码,然后从中学习。这里写的用到了简单的封装面向对象静态类,你可以在多了解下,不难的。
import java.util.Scanner;
public class Atm {
//显示菜单
static void showMenu() {
System.out.println();
System.out.print("1.查询账户余额\n");
System.out.print("2.存款\n");
System.out.print("3.取款\n");
System.out.print("0.退出\n");
System.out.print("请选择操作:");
}
public static void main(String[] arg) {
//创建一个account的对象
Account account = new Account();
System.out.println("*******欢迎使用**********");
//循环操作提示
while (true) {
showMenu();//调用显示菜单的方法
//得到用户的输入
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
switch (input) {
case 1:
account.query();
break;
case 2:
System.out.print("请输入存款额:");
float in = scanner.nextFloat();
account.in(in);
account.query();
break;
case 3:
System.out.print("请输入取款额:");
float out = scanner.nextFloat();
account.out(out);
account.query();
break;
case 0:
System.out.println("谢谢使用");
System.exit(0); //终止程序
break;
default:
System.out.println("输入有误");
}
}
}
}
//帐号类
class Account {
private float money = 8000;
// 查询账户余额
public void query() {
System.out.println("账户余额:" + money);
}
// 取出,out是取出的存款数
public void out(float out) {
if (money out) {
System.out.println("账户余额不足");
}
this.money -= money;
}
// 存入,in是输入的存款数
public void in(float in) {
this.money += in;
}
}
Java模拟银行ATM完成以下功能: 1)查询余额 2)取款 3)存款 4)退出
import java.util.Scanner;
public class ATM{
public static void main(String... args){
Scanner sc=new Scanner(System.in);
double money=0;
do{
System.out.println("请选择业务:1)查询余额 2)取款 3)存款 4)退出");
int c=sc.nextInt();
if(c==1){
System.out.println("用户余额为:"+money+"元");
}else if(c==2){
while(true){
System.out.println("请输入取款金额:");
double load=sc.nextDouble();
if(load=money){
System.out.println("账户余额不足,请重新输入取款金额");
continue;
}else{
money-=load;
System.out.println("取款成功");
break;
}
}
}else if(c==3){
System.out.println("请输入存款金额:");
money+=sc.nextDouble();
System.out.println("存款成功");
}else if(c==4){
System.exit(0);
}else{
System.out.println("输入错误,请重新选择业务");
}
}while(true);
}
}
用java做一个简易的ATM机具体流程在下面
代码如下
package BaiDdu;
import java.util.Scanner;
public class ATM {
/*1提示请输入密码然后直接进入下一步。密码6位限制(限制方法用 “最小大于100000最大小于999999”这样限制)
2.提示密码正确还是错误密码直接弄成“123456”错误返回上一步循环方法用for循环。
3.密码输入正确后进入下一步提示5个选项(1.余额查询“基础10000”2.取款 3存款4.退出)
4.进行取款或者存款之后要回到第三步重新选择(余额和取款存款相关联)
备注:用键盘输入的方法用scanner*/
private static int money=10000;//全局变量 余额 默认10000
public static void main(String args[])
{
for(;;){//for循环,有意思吗?
System.out.println("请输入密码:");
Scanner input=new Scanner(System.in);
int pw=input.nextInt();
if ( Checkpw(pw)) {
System.out.println("密码正确。");
Next();
}
else System.out.println("密码错误!");
}
}
public static boolean Checkpw(int pw)
{
if (pw==123456)return true;//固定密码就不需要限制位数了,反正不符合就错
else
return false;
}
public static void Next() {
do {
System.out.println("请选择你需要的功能:");
System.out.println("1.余额查询 2.取款 3.存款 4.退出");
int value = new Scanner(System.in).nextInt();
switch (value) {
case 1:// 查询余额
System.out.println("您的余额为 "+money+"元");
break;
case 2:// 取款
System.out.println("请输入取款金额:");
int getnum=new Scanner(System.in).nextInt();
if (getnum0) System.out.println("输入金额有误!");
else if(getnummoney)System.out.println("余额不足.");
else {money=money-getnum;System.out.println("取款成功,余额为"+money);}
break;
case 3:// 存款
System.out.println("请输入存款金额:");
int pushnum= new Scanner(System.in).nextInt();
if (pushnum0) System.out.println("输入金额有误!");
else {money=money+pushnum;System.out.println("存款成功,余额为"+money);}
break;
case 4:// 退出
System.out.println("谢谢使用!");
System.exit(0);
break;
default:
System.out.println("输入有误");
break;
}
}while(true);
}
}
2、运行效果
Java编程实现程序用于模拟ATM取款机。
package demo;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
int cnt=3;
String username = null;
String password = null;
double money = 1000;
String targetName = "admin33";
double targetMoney = 1000;
while(true){
if(username!=nullpassword!=null){
if("admin".equals(username) "123".equals(password)){
System.out.println("欢迎光临");
while(true){
System.out.println("请选择您的操作 1 取钱 2 存钱 3 转账 4 查询 5 退出 ");
int n = scanner.nextInt();
if(n==1){//取钱
System.out.println("请输入金额");
int getter = scanner.nextInt();
if(getter=0){
if(getter=5000){
if(getter=money){
money-=getter;
}else{
System.out.println("余额不足");
}
}else{
System.out.println("单笔只能取5000及以下");
}
}else{
System.out.println("银行不到给");
}
}else if(n==2){//存钱
System.out.println("请输入金额");
int save = scanner.nextInt();
if(save=0){
money+=save;
}
}else if(n==3){//转账
System.out.println("请输入目标账户");
String target = scanner.next();
if(target.equals(targetName)){
System.out.println("请输入金额");
int getter = scanner.nextInt();
if(getter=0){
if(getter=5000){
if(getter=money){
money-=getter;
targetMoney+=getter;
}else{
System.out.println("余额不足");
}
}else{
System.out.println("单笔只能取5000及以下");
}
}else{
System.out.println("银行不到给");
}
}
}else if(n==4){//查询
System.out.println(money);
}else if(n==5){//退出
System.exit(0);
}else{
System.out.println("没有该项服务");
}
}
}else{
cnt--;
System.out.println("输入错误,您还有"+cnt+"次机会");
username=null;
password=null;
if(cnt=0){
System.out.println("对不起,您的账号被冻结,请到最近的营业厅解除冻结");
System.exit(0);
}
}
}else{
System.out.println("请输入您的账号");
username = scanner.next();
System.out.println("请输入您的密码");
password = scanner.next();
}
}
}
}
用java编写多线程银行ATM 模拟程序
先构建一个客户端,再构建一个服务器端,其实做一个简单的界面,建立一个数据库,调用SQl 语句,,实现单机,模拟多线程的就可以了,服务器部分不做也可以模拟出来。。
PS:这不会是程序专题训练一吧。。。