Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Must be written in c#! 2. A community has 7 swimming pools, as shown in the foll

ID: 3725088 • Letter: M

Question

Must be written in c#!

2. A community has 7 swimming pools, as shown in the following map 10 (12,9 (6, 6) (10,5 1 234 56 78910 1112 13 14 Your project must satisfy the following requirements 1. Create three classes: Pool, Temperature, and Location 2. A swimming pool shall have an object of "Temperature" and an object of "Location" as data members. Compositionally" speaking: A pool has-a temperature, and a pool has-a location) 3. A temperature has "degree" and "scale" 4. A location is defined by (x, y); hence a location has an 'x value and a 'y' value 5. Provide ToString method for all three classes 6. Provide other member methods for each of the classes properly. For example, a FindDistance method to find the distance between pools 7. All methods shall be public. 8. The Pool class shall have a static data member 'Count The driver program shall print out the static member count before any pool object is created, and.also after each pool is instantiated 9. A maintenance crew can set the temperature for each pool within the range of 98 and 104 °F. (Note: generate a random number between [98, 104].) 10. A maintenance person will go through all seven pools and set the temperatures. The person starts from location (0,0), and will go to the nearest pool after she/he finishes the job. The process continues until all the pools are visited. Each pool can only be visited once Your driver program determines and displays the route she/he takes to visit all the pools such as (0.0) »> B with temperature at 99 degree F C with temperature at 103 degree F>>

Explanation / Answer

SOURCE CODE:

using System;

using System.Collections;

namespace HelloWorldApplication

{

class Temperature{

public double degrees;

double scale;

public override string ToString{}{

return {*degrees:"+degrees+",scale:"+scale);

}

}

class Location{

int x;

int y;

}

public double getDistance(Location otherLoc)(

return Math.Sqrt((x-otherLoc.x) + (y-otherLoc.y)*(y-otherLoc.y) );

}

public override string ToString()(

return {"{"x+", "y+")");

}

}

class Pool{

public Pool {}{

count++;

}

public static int count=0;

public Location location;

public Temperature temperature;

public override string ToString{}{

return ("location:"+location+",temperature:"+temperature);

}

}

class Driver

{

static void Main (string[] args

{

Random r = new Random();

ArrayList list = new ArrayList();

Console.WriteLine("Before adding pool count : "+Pool.count);

Pool pool = new Pool();

pool.location = new Location(4,8);

pool.temperature = new Temperature();

pool.temperature.degrees = r.Next(98,105);

list.Add(pool);

Console.WriteLine("Before adding pool count :"+Pool.count);

pool = new Pool();

pool.location = new Location(12,9);

pool.temperature = new Temperature();

pool.temperature.degrees = r.Next(98,105);

list.Add(pool);

Console.WriteLine("After adding pool count : "+Pool.count);

Console.WriteLine("Before adding pool count : "Pool.count);

pool = new Pool();

pool.location = new Location(6,6);

pool.temperature = new Temperature();

pool.temperature.degrees = r.Next(98,105);

list.Add(pool);

Console.WriteLine("After adding pool count : "+Pool.count);

Location location = new Location(0,0);

Console.WriteLine("Path is : ");

while(list.Count > 0){

Pool selectedPool = null;

double dist = double.Maxvalue;

foreach (Pool l in list)

{

if(i.location.getDistance(location) < dist){

}

}

Console.Write(selectedPool + " >> ");

location = selectedPool.location;

list.Remove(selectedPool);

}

Console.WriteLine(" end.");

Console.ReadKey();

}

}

}