1.a为int型。去掉‘’
2.ATM1 atm = new ATM1 , 类名要和前面的一致
3.加入int a = sc.nextInt()// 请加入此句 进而选择相应功能,
PS:程序已调好,试试吧。
import java.util.Scanner
public class ATM1 {
Scanner sc = new Scanner(System.in)
private String name = "lorin"
private double password = 123
private double money = 500
public void aloha(){
System.out.println("***********************")
System.out.println("* *")
System.out.println("* 欢迎使用ATM *")
System.out.println("* *")
System.out.println("* 制作人:lorin *")
System.out.println("* *")
System.out.println("* *")
System.out.println("************************")
land()
}
//登陆页面
public void land(){
System.out.println("请选择 *** 作界面:1取款,2存款,3查询,4转账,5退出")
int a = sc.nextInt()// 请加入此句
switch(a){
case 1 : // 去掉‘’ 因为a 为int型。
get()
break
case 2 :
set()
break
case 3 :
query()
break
case 4 :
divert()
break
case 5 :
SetOut()
break
}
}
//取款
public void get(){
System.out.println("请输入取款金额:")
int a = sc.nextInt()
if(a>money){
System.out.println("余额不足!")
}else{
money-=a
System.out.println("当前余额为:"+money)
land()
}
}
//存款
public void set(){
System.out.println("请输入存款金额:")
int a = sc.nextInt()
money+=a
System.out.println("当前余额为:"+money)
land()
}
//查询
public void query(){
System.out.println("当前余额为:"+money)
land()
}
//转账
public void divert(){
System.out.println("该功能站未开放!")
land()
}
//退出
public void SetOut(){
System.exit(0)
}
public static void main(String[] args) {
ATM1 atm = new ATM1()
atm.aloha()
}
}
下面是一个简单的登录示例:
代码复制展示:
public class ATMLogin {
public static void main(String[] args) {
// 设置用户名和密码
String username = "gqk"
String password = "520"
// 最多可以登录 3 次
for (int i = 0i <3i++) {
// 读取用户输入的用户名和密码
Scanner in = new Scanner(System.in)
System.out.print("请输入用户名:")
String inputUsername = in.nextLine()
System.out.print("请输入密码:")
String inputPassword = in.nextLine()
// 检查用户名和密码是否正确
if (inputUsername.equals(username) &&inputPassword.equals(password)) {
System.out.println("欢迎" + username + "登录!")
break// 登录成功,退出循环
} else {
System.out.println("用户名或密码错误,请重新输入!")
}
}
// 如果 3 次登录都失败,则提示用户
System.out.println("卡片已经被锁,请联系客服人员!")
}
}
回答不易望请采纳
/**要求:使用字符用户界面。当输入给定的卡号和密码(初始卡号和密码为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)
}
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)