0% found this document useful (0 votes)
19 views

CAP680 11906059 Assignment 2

CA 2 Assignment for CAP680. For Reg no 11906059.

Uploaded by

ANUP KUMAR
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

CAP680 11906059 Assignment 2

CA 2 Assignment for CAP680. For Reg no 11906059.

Uploaded by

ANUP KUMAR
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

SCHOOL OF COMPUTER APPLICATION

(CAP 680: PROGRAMMING IN JAVA-LAB)

ASSIGNMENT-I
Set-Odd

Supervised by Prince Arora

Submitted by
ANUP KUMAR
Roll No: 37
Reg No. 11906059
Q1.: All the banks operating in India are controlled by RBI.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
App app = new App();
app.run();
}
}
class App {
private final String message = "Enter the Bank name to find the rate of interest :";
private final Scanner scanner = new Scanner(System.in);
public void run(){
System.out.print(message);
String bankName = scanner.nextLine();
rateOfInterestPrinter.print(BankFactory
.getInstance(bankName)
);
}
}
class BankFactory {
public static RBI getInstance(String bankName){
if(bankName.equals("SBI")){
return new SBI();
}else if(bankName.equals("ICICI")) {
return new ICICI();
}else if(bankName.equals("PNB")){
return new PNB();
}else if(bankName.equals("RBI")){
return new RBI();
}else {
return null;
}
}
}
class rateOfInterestPrinter {
public static void print(RBI bank){
String message = String.format("%s rate of interest is: %.2f%s",
bank.getName(),
bank.getInterest(),
"%"
);

System.out.println(message);
}
}
class RBI {
private final String bankName = "RBI";
private Double interestInPercentage = 4.0;
public final Double minimumInterestInPercentage = 4.0;
public String getName(){
return this.bankName;
}
public Double getInterest(){
return this.interestInPercentage;
}
}

class ICICI extends RBI{


private final String bankName = "ICICI";
private Double interestInPercentage = 5.0;
public ICICI()
{
super();
if(interestInPercentage < super.minimumInterestInPercentage){
interestInPercentage = super.minimumInterestInPercentage;
}
}

@Override
public String getName(){
return this.bankName;
}
@Override
public Double getInterest(){
return this.interestInPercentage;
}
}
class PNB extends RBI{
private final String bankName = “PNB”;
private Double interestInPercentage = 6.0;

public PNB() {
super();
if(interestInPercentage < super.minimumInterestInPercentage){
interestInPercentage = super.minimumInterestInPercentage;
}
}

@Override
public String getName(){
return this.bankName;
}

@Override
public Double getInterest(){
return this.interestInPercentage;
}
}

class SBI extends RBI{


private final String bankName = “SBI”;
private Double interestInPercentage = 7.0;
public SBI() {
super();
if(interestInPercentage < super.minimumInterestInPercentage){
interestInPercentage = super.minimumInterestInPercentage;
}
}

@Override
public String getName(){
return this.bankName;
}

@Override
public Double getInterest(){
return this.interestInPercentage;
}
}
OUTPUT:
Q2.: In this problem, you are given an interface Food.
import java.util.Scanner;

public class Main {


public static void main(String[] args) {
App app = new App();
app.run();
}
}
class App {
private final String message = "Enter the food name :";
private final Scanner scanner = new Scanner(System.in);
public void run(){
System.out.print(message);
String foodName = scanner.nextLine();

Food food = FoodFactory.getFood(foodName);

String message1 = String.format("The factory returned %s", food.getClass());


String message2 = String.format("Someone ordered a %s!", food.getType());

System.out.println(message1);
System.out.println(message2);
}
}

interface Food{
String getType();
}

class Cake implements Food{

@Override
public String getType() {
return "Dessert";
}
}

class Pizza implements Food{

@Override
public String getType() {
return "Fast Food";
}
}

class FoodFactory {
public static Food getFood(String foodName) {
if(foodName.equals("Pizza")){
return new Pizza();
} else if (foodName.equals("Cake")) {
return new Cake();
}else{
return null;
}
}
}
OUTPUT:

*****

You might also like