Tjena. Som rubriken lyder så har jag en uppgift att göra ett program som kallas Joppeshundar.
De jag har problem med är en metod som heter Feed(). Den går ut så att jag ska mata någon av djuren.
Sen har jag en Hungry_Animal(); Den styr om djuret får sin favoritmat blir den mätt å nöjd, får den något annat blir den arg. Men katten har en override på Hungry_Animal metoden för får den inte favoritmaten så är de 50%den fångar en mus och då skrivs de ut om den lyckades eller inte.
Har tre djur. och dom har jag lagrat i min AnimalList. En hund katt och en valp!
Mycket tacksam för hjälp! Vore guldvärt<3
De jag har problem med är en metod som heter Feed(). Den går ut så att jag ska mata någon av djuren.
Sen har jag en Hungry_Animal(); Den styr om djuret får sin favoritmat blir den mätt å nöjd, får den något annat blir den arg. Men katten har en override på Hungry_Animal metoden för får den inte favoritmaten så är de 50%den fångar en mus och då skrivs de ut om den lyckades eller inte.
Har tre djur. och dom har jag lagrat i min AnimalList. En hund katt och en valp!
Kod:
namespace Arvjoppeshundar
{
abstract class Animals
{
protected int age;
protected string name;
protected string fav_food;
protected string breed;
protected bool hungry;
public bool Hungry
{
get { return hungry; }
set { hungry = value; }
}
public int Age
{
get { return age; }
set { age = value; }
}
public string Name
{
get { return name; }
set { name = value; }
}
public string FavFood
{
get { return fav_food; }
set { fav_food = value; }
}
public string Breed
{
get { return breed; }
set { breed = value; }
}
public virtual void Interact()
{
Console.WriteLine("Playing with {0}}",name);
}
public void Eat(string food)
{
Hungry_animal();
}
public virtual void Hungry_animal()
{
if (Hungry.Equals(FavFood)) //Denna som ska styra om den får favorit mat eller inte
{
Console.WriteLine($"{name}is ate up the food and loved it!");
}
else
{
Console.WriteLine($"{name} wants {FavFood} NOW!!");
}
}
}
}
Class PetOwner
public void Feed()
{
/*
Denna metod frågar användaren vilket djur som Joppe ska mata och därefter anropa det
djurobjektets metod för detta (eat()). Denna metod hanterar också vilken mat som Joppe
ska mata hunden med och som ska skickas med som en inparameter till denna metod.
*/
Console.WriteLine("Which animal do you want to feed?");
Console.WriteLine("Dog,Cat or Puppy?");
string AnimalChoise = Console.ReadLine();
AnimalList.Add(new Dog("Dogge", 5));
AnimalList.Add(new Cat("Kitty", 10));
AnimalList.Add(new Puppy(2));
if (AnimalChoise.Equals("Dog"))
{
AnimalList[0].FavFood = "Pizza";
AnimalList[0].Eat("Pizza");
}
if (AnimalChoise.Equals("Cat")) //Vet att detta säkert ser jättedumt ut men hur gör jag?
{
AnimalList[1].FavFood = "Fish";
AnimalList[1].Eat("Pizza");
}
if (AnimalChoise.Equals("Puppy"))
{
AnimalList[0].FavFood = "Hamburger";
AnimalList[0].Eat("Fish");
}
}
De jag vill göra är då att sätta en favoriträtt på varje djur och sen skicka in en inparameter i Eatt(//favoriträtt) och jämföra den med djurets favoritmat och beroende på så löser metoden Hungry_Animals de med olika utskrifter!
Om jag förklarat luddigt be mig förklara mera:)
Mycket tacksam för hjälp! Vore guldvärt<3