Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions Answers/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
### IntelliJ IDEA ###
out/
!**/src/main/**/out/
!**/src/test/**/out/

### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

### VS Code ###
.vscode/

### Mac OS ###
.DS_Store
8 changes: 8 additions & 0 deletions Answers/.idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions Answers/.idea/New folder (2).iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions Answers/.idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions Answers/.idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions Answers/.idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions Answers/Quidditch.iml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
10 changes: 10 additions & 0 deletions Answers/src/Beater.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
public class Beater extends Player implements Success{
private static final double STOPPROBABILITY=0.4;
public Beater(String name,int number) {
super();
}
@Override
public boolean isSuccessful(){
return Math.random()<STOPPROBABILITY;
}
}
11 changes: 11 additions & 0 deletions Answers/src/Chaser.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
public class Chaser extends Player implements Success{
private static final double SCORPROBABILITY=0.3;
public Chaser(String name,int number)
{
super();
}
@Override
public boolean isSuccessful(){
return Math.random()<SCORPROBABILITY;
}
}
11 changes: 11 additions & 0 deletions Answers/src/Keeper.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
public class Keeper extends Player implements Success{
private static final double SAVEPROBILITY=0.7;
public Keeper(String name,int number)
{
super();
}
@Override
public boolean isSuccessful(){
return Math.random()<SAVEPROBILITY;
}
}
11 changes: 11 additions & 0 deletions Answers/src/Match.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
public class Match {
private Team teamA;
private Team teamB;
private Random random;
public Match(Team teamA,Team teamB)
{
this.teamA=teamA;
this.teamB=teamB;
random=new Random();
}
}
17 changes: 17 additions & 0 deletions Answers/src/Player.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
public class Player {
private String name;
private int number;
public Player(String name,String number)
{
this.name=name;
this.number=number;
}

public String getName() {
return name;
}

public int getNumber() {
return number;
}
}
9 changes: 9 additions & 0 deletions Answers/src/Quidditch.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import java.util.Random;

public class Quidditch {
public static void main(String[] args){
Team teamA=new Team("Gryffindor");
Team teamB=new Team("Slytherin");
Match match =new match(teamA,teamB);
}
}
10 changes: 10 additions & 0 deletions Answers/src/Seeker.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
public class Seeker extends Player implements Success{
private static final double SNITCHPROBABILITY=0.5;
public Seeker(String name,int number){
super();
}
@Override
public boolean isSuccessful(){
return Math.random()<SNITCHPROBABILITY;
}
}
3 changes: 3 additions & 0 deletions Answers/src/Success.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
public interface Success {
boolean isSuccessful();
}
32 changes: 32 additions & 0 deletions Answers/src/Team.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
public class Team {
private String name;
private Player[] players;
private int goalsScored;
public void Team(String name) {
this.name = name;
players = new Player[7];
players[0] = new Keeper("Keeper", 1);
players[1] = new Seeker("Seeker", 2);
for (int i = 2; i < 5; i++)
players[i] = new Chaser("Chaser" + (i - 1), i + 1);
for (int i = 5; i < 7; i++)
players[i] = new Beater("Beater" + (i - 1), i + 1);

goalsScored=0;}
public void setGoal() {
goalsScored++;
}
public String getName(){
return name;}
public boolean play(){
int successfulKeepers=0;
int successfulChasers=0;
int successfulBeaters=0;
for (Player player:players)
{if (player instanceof Keeper && ((Success).player).isSuccessful(())){successfulKeepers++;}
else if (player instanceof Chaser && ((Success).player).isSuccessful(())){successfulChasers++;}
else if (player instanceof Beater && ((Success).player).isSuccessful(())){successfulBeaters++;}
}
return( (successfulKeepers> 0) && (successfulChasers>=2) && (successfulBeaters >=1));
}
}