A bank in your town updates its customers’ accounts at the end of each month. Th
ID: 3631798 • Letter: A
Question
A bank in your town updates its customers’ accounts at the end of each month. The bank offers two types of accounts: savings and checking. Every customer must maintain a minimum balance. If a customer’s balance falls below the minimum balance, there is a service charge of $10.00 for savings accounts and $25.00 for checking accounts. If the balance at the end of the month is at least the minimum balance, the account receives interest as follows:
a. Savings accounts receive 4% interest.
b. Checking accounts with balances of up to $5000 more than the minimum balance receive 3% interest; otherwise, the interest is 5%.
This Java program using Eclipse Indigo reads a customer’s account number ( int type ), account type ( char type; s or S for savings, c or C for checking), minimum balance that the account should maintain, and current balance. The program should then output the account number, account type, current balance, and new balance or an appropriate error message. Test program by running it five times, using the following data:
46728 S 1000 2700
87324 C 1500 7689
79873 S 1000 800
89832 C 2000 3000
98322 C 1000 750
[code]
import java.util.*;
public class bank
{
public static void main (String [] args)
{int num,error=1,itype=0;
char type =0;
double min,cur =0,balanc =0,rate=0;
Scanner in=new Scanner(System.in);
System.out.println("Enter account number: ");
num=in.nextInt();
while(error==1)
{
System.out.println("Enter account type(s-savings or c-checking):");
type=in.next().charAt(0);
if(type=='c'||type=='C')
{itype=1;
error=0;
rate=3/100.;
}
else if(type=='s'||type=='S')
{itype=0;
error=0;
rate=4/100.;
}
if(error==1)
System.out.println("Invalid type-re enter");
}
System.out.println("Enter minimum balance: ");
min=in.nextDouble();
System.out.println("Enter current balance: ");
cur=in.nextDouble();
balance = cur;
if(itype==1)
{ if(cur>min+5000)
rate=5/100.;
else if(cur<min)
cur-=25;
}
else
if(cur<min)
cur-=10;
cur=cur+rate*cur;
System.out.printf("After interest and fees your balance is = $%.2f ",cur);
System.out.println("Your account number: " + num);
System.out.println("Your account type: " + type);
System.out.printf("Your starting balance: $%.2f ", balanc);
System.out.printf("Your new balance: $%.2f ", cur);
}
}
[/code]
Explanation / Answer
please rate - thanks
5 tests worth of runs
----jGRASP exec: java bank
Enter account number:
46728
Enter account type(s-savings or c-checking):
s
Enter minimum balance:
1000
Enter current balance:
2707
After interest and fees your balance is = $2815.28
Your account number: 46728
Your account type: s
Your starting balance: $2707.00
Your new balance: $2815.28
----jGRASP: operation complete.
----jGRASP exec: java bank
Enter account number:
87324
Enter account type(s-savings or c-checking):
c
Enter minimum balance:
1500
Enter current balance:
7689
After interest and fees your balance is = $8073.45
Your account number: 87324
Your account type: c
Your starting balance: $7689.00
Your new balance: $8073.45
----jGRASP: operation complete.
----jGRASP exec: java bank
Enter account number:
79873
Enter account type(s-savings or c-checking):
s
Enter minimum balance:
1000
Enter current balance:
800
After interest and fees your balance is = $790.00
Your account number: 79873
Your account type: s
Your starting balance: $800.00
Your new balance: $790.00
----jGRASP: operation complete.
----jGRASP exec: java bank
Enter account number:
89832
Enter account type(s-savings or c-checking):
c
Enter minimum balance:
2000
Enter current balance:
3000
After interest and fees your balance is = $3090.00
Your account number: 89832
Your account type: c
Your starting balance: $3000.00
Your new balance: $3090.00
----jGRASP: operation complete.
----jGRASP exec: java bank
Enter account number:
98322
Enter account type(s-savings or c-checking):
c
Enter minimum balance:
1000
Enter current balance:
750
After interest and fees your balance is = $725.00
Your account number: 98322
Your account type: c
Your starting balance: $750.00
Your new balance: $725.00
----jGRASP: operation complete.
------------------------------------------------------------------
import java.util.*;
public class bank
{
public static void main (String [] args)
{int num,error=1,itype=0;
char type =0;
double min,cur =0,balance =0,rate=0;
Scanner in=new Scanner(System.in);
System.out.println("Enter account number: ");
num=in.nextInt();
while(error==1)
{
System.out.println("Enter account type(s-savings or c-checking):");
type=in.next().charAt(0);
if(type=='c'||type=='C')
{itype=1;
error=0;
rate=3/100.;
}
else if(type=='s'||type=='S')
{itype=0;
error=0;
rate=4/100.;
}
if(error==1)
System.out.println("Invalid type-re enter");
}
System.out.println("Enter minimum balance: ");
min=in.nextDouble();
System.out.println("Enter current balance: ");
cur=in.nextDouble();
balance = cur;
if(itype==1)
{ if(cur>min+5000)
rate=5/100.;
if(cur<min)
cur-=25;
}
else
if(cur<min)
cur-=10;
if(cur>=min)
cur=cur+rate*cur;
System.out.printf("After interest and fees your balance is = $%.2f ",cur);
System.out.println("Your account number: " + num);
System.out.println("Your account type: " + type);
System.out.printf("Your starting balance: $%.2f ", balance);
System.out.printf("Your new balance: $%.2f ", cur);
}
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.