第1个回答 2011-10-23
既然是新手,那给你两个小程序试试,程序的功能是一样的,实现思路不一样,多多研究
第一种思路,面向过程
import java.util.Scanner;
public class ATM {
public static void main(String[] args) {
int mima = 111111;
int jine;
int cishu;
Scanner input = new Scanner(System.in);
for (int i = 0; i < 3; i++) {
System.out.println("请输入密码。");
int mm = input.nextInt();
if (mm == mima) {
for (;;) {
System.out.println("请输入取款金额:");
int je = input.nextInt();
if (je > 0 && je <= 2000) {
System.out.println("操作成功,取款金额为" + je + "元");
System.out.println("是否继续取款?y/n");
String yn = input.next();
if (yn.equals("y") || yn.equals("Y")) {
continue;
} else if (yn.equals("n") || yn.equals("N")) {
return;
} else {
System.out.println("输入错误,异常终止。");
}
return;
} else if (je <= 0 || je > 2000) {
System.out.println("金额不合法。");
continue;
}
}
} else if (mm != mima) {
System.out.println("输入错误");
}
}
System.out.println("密码3次错误,异常终止。");
}
}
第二种思路,面向对象
import java.util.Scanner;
import java.util.concurrent.ConcurrentHashMap;
public class ATM2 {
Scanner input = new Scanner(System.in);
// 判断密码是否正确。(密码默认为111111)
void mima() {
System.out.println("请输入密码:");
int mm = input.nextInt();
if (mm == 111111) {
qukuai();
}
if (mm != 111111) {
for (int i = 0; i < 2; i++) {
System.out.println("输入错误,请重新输入");
if (mm == 111111) {
qukuai();
return;
}
}
System.out.println("3次错误,程序终止。");
}
}
// 开始取款
void qukuai() {
for (;;) {
System.out.println("请输入取款金额:");
int je = input.nextInt();
if (je > 0 && je <= 2000) {
System.out.println("取款成功,取款金额为" + je);
jixu();
return;
} else {
System.out.println("金额不合法.");
continue;
}
}
}
// 继续取款
void jixu() {
System.out.println("是否继续取款?y/n");
String yn = input.next();
if (yn.equals("y") || yn.equals("Y")) {
qukuai();
} else if (yn.equals("n") || yn.equals("N")) {
System.out.println("谢谢使用!");
} else {
System.out.println("输入错误,异常终止。");
}
}
// 程序入口
public static void main(String[] args) {
ATM2 s = new ATM2();
s.mima();
}
}