home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Datafile PD-CD 5
/
DATAFILE_PDCD5.iso
/
utilities
/
a
/
armbob
/
!ArmBob
/
progs
/
main
/
Account
next >
Wrap
Text File
|
1994-03-14
|
2KB
|
96 lines
/* Main program for account */
main()
{
account_no = 0;
client = newvector(enough=6); /* 6 is big enough for Toy Town */
print(""+12); /* clear screen */
banner();
while ((i = input()) != "0") /* Top level interaction loop */
{
switch (i)
{
case "1": /* Open an account */
if (account_no<enough)
new_account();
else
print("Sorry, no more accounts.\n");
break;
case "2": /* Make a withdrawal */
if (account_no) withdraw();
break;
case "3": /* Get a statement */
if (account_no) statement();
break;
case "4": /* Change password */
if (account_no) change_password();
break;
default:
print("Sorry. Did not understand.\n");
break;
}
banner();
}
print("Goodbye.\n");
}
banner()
{
print("\nWelcome to the Toy Town Bank.\n");
print("\n 0 Quit\n");
print(" 1 Open an account\n");
print(" 2 Make a withdrawal or deposit\n");
print(" 3 Get a statement\n");
print(" 4 Change your password\n\n");
print("Press one of the above numbers then press RETURN.\n\n");
print("Number :");
}
new_account()
{
local name,amount;
print("Enter your name: ");
name = input();
print("Enter the amount you wish to deposit: ");
amount = val(input());
client[account_no++] = new account(amount,name);
print("Thank you for your custom , ",name,".\n");
}
withdraw()
{
local the_account;
if ((the_account = get_account())<account_no)
{
print("How much do you wish to withdraw? ");
client[the_account]->withdraw(val(input()));
}
}
statement()
{
local the_account;
if ((the_account = get_account())<account_no)
client[the_account]->statement();
}
change_password()
{
local the_account;
if ((the_account = get_account())<account_no)
client[the_account]->change_password();
}
get_account()
{
local name, the_account;
the_account = 0;
print("Enter your name: ");
name = input();
while ((the_account<account_no)
&& !(client[the_account]->has_owner(name)))
the_account++;
if (the_account>=account_no)
print("We cannot find any account owned by ",name,".\n");
return the_account;
}