Skip to content
12 changes: 12 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Beater.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package org.example;


public class Beater extends Player{


public Beater(){
this.chance = 40;
}


}
11 changes: 11 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Chaser.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package org.example;


public class Chaser extends Player {

public Chaser(){
this.chance = 30;
}


}
11 changes: 11 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Keeper.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package org.example;


public class Keeper extends Player {


public Keeper(){
this.chance = 70;
}

}
55 changes: 55 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Match.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package org.example;

import java.sql.SQLOutput;

public class Match {
Team team1 = new Team();
Team team2 = new Team();

public void start ()
{
for (int i = 0; i < 100; i++)
{
if(team1.teamSeeker.isSuccessful())
{
team1.goals += 150;
System.out.println("team 1 WINS ");
System.out.println("team 1 score is :"+ team1.goals);
System.out.println("team 2 score is :"+ team2.goals);
return;
}
if(team2.teamSeeker.isSuccessful())
{
team2.goals += 150;
System.out.println("team 2 WINS ");
System.out.println("team 1 score is :"+ team1.goals);
System.out.println("team 2 score is :"+ team2.goals);
return;
}
team1.play();
team2.play();
}
if(team1.goals < team2.goals)
{
System.out.println("team 2 WINS ");
System.out.println("team 1 score is :"+ team1.goals);
System.out.println("team 2 score is :"+ team2.goals);

}
else if(team1.goals > team2.goals)
{
System.out.println("team 1 WINS ");
System.out.println("team 1 score is :"+ team1.goals);
System.out.println("team 2 score is :"+ team2.goals);

}
else
{
System.out.println("DRAW");
System.out.println("team 1 score is :"+ team1.goals);
System.out.println("team 2 score is :"+ team2.goals);

}

}
}
9 changes: 9 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/MyApp.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package org.example;

public class MyApp {
public static void main(String[] args){
Match match = new Match();

match.start();
}
}
21 changes: 21 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Player.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package org.example;

import java.util.Random;

class Player implements Success{

int chance ;
Random randomNumber = new Random();

@Override
public boolean isSuccessful() {

int successChance = randomNumber.nextInt(100)+1 ;

if(successChance <= chance)
{
return true;
}
return false;
}
}
12 changes: 12 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Seeker.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package org.example;


public class Seeker extends Player{

public Seeker(){
this.chance=5;
}



}
5 changes: 5 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Success.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package org.example;

public interface Success {
boolean isSuccessful();
}
68 changes: 68 additions & 0 deletions Answers/Quidditch/src/main/java/org/example/Team.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
package org.example;

public class Team {
int goals=0;
Seeker teamSeeker = new Seeker();
Keeper teamKeeper = new Keeper();
Chaser teamChaser1 = new Chaser();
Chaser teamChaser2 = new Chaser();
Chaser teamChaser3 = new Chaser();
Beater teamBeater1 = new Beater();
Beater teamBeater2 = new Beater();



private void setGoals()
{
goals ++;
}



public void play(){
if(requiredBeatersSuccess() && requiredChaserSuccess() && teamKeeper.isSuccessful())
{
setGoals();
}
}
private boolean requiredBeatersSuccess()
{

if(teamBeater1.isSuccessful())
{
return true;
}
if(teamBeater2.isSuccessful())
{
return true;
}
else
{
return false;
}
}
private boolean requiredChaserSuccess()
{
int chaserSuccess = 0;
if(teamChaser1.isSuccessful())
{
chaserSuccess ++;
}
if(teamChaser2.isSuccessful())
{
chaserSuccess ++;
}
if(teamChaser3.isSuccessful())
{
chaserSuccess ++;
}
if(chaserSuccess >= 2)
{
return true;
}
else
{
return false;
}
}
}