Difference between revisions of "Allow the capacity of a warren to vary, some warrens may be smaller and other may be larger"

From TRCCompSci - AQA Computer Science
Jump to: navigation, search
(Created page with "Within the warren class, a variable called MaxRabbitsInWarren is set to 99. The const declaration means it can't be changed during runtime. You must therefore remove the const...")
 
Line 12: Line 12:
  
 
==Warren Constructors==
 
==Warren Constructors==
 +
Both of the constructors below are used to create a warren. We need to add some code to both to set the size of the warren randomly.
 +
 
<syntaxhighlight lang=csharp>
 
<syntaxhighlight lang=csharp>
ublic Warren(int Variability)
+
public Warren(int Variability)
 
     {
 
     {
 
       this.Variability = Variability;
 
       this.Variability = Variability;

Revision as of 11:00, 8 June 2017

Within the warren class, a variable called MaxRabbitsInWarren is set to 99. The const declaration means it can't be changed during runtime. You must therefore remove the const:

private const int MaxRabbitsInWarren = 99;

Becomes:

private int MaxRabbitsInWarren = 99;

Warren Constructors

Both of the constructors below are used to create a warren. We need to add some code to both to set the size of the warren randomly.

public Warren(int Variability)
    {
      this.Variability = Variability;
      Rabbits = new Rabbit[MaxRabbitsInWarren];
      RabbitCount = (int)(CalculateRandomValue((int)(MaxRabbitsInWarren / 4), this.Variability));
      for (int r = 0; r < RabbitCount; r++)
      {
        Rabbits[r] = new Rabbit(Variability);
      }
    }

    public Warren(int Variability, int rabbitCount)
    {
      this.Variability = Variability;
      this.RabbitCount = rabbitCount;
      Rabbits = new Rabbit[MaxRabbitsInWarren];
      for (int r = 0; r < RabbitCount; r++)
      {
        Rabbits[r] = new Rabbit(Variability);
      }
    }