Permalänk

Skoluppgifter

Har fastnat i några skoluppgifter i C#. Någon duktig i C# som kan hjälpa?

Permalänk
Medlem

Skriv vad du har problem med istället, hur långt du har kommit o vad uppgiften är

Permalänk

Skoluppgiften:

Klassen Animal:
Konstruktorer
- Defaultkonstruktor
- Konstruktor med samtliga attribut
Properties
- Kontrollera så att åldern är större än 0
- set o get på namnet
ToString ska skriva ut samtliga attribut.

Klassen Pet
Konstruktorer
- Defaultkonstruktor
- Konstruktor med samtliga attribut
Properties
- set och get på samtliga.
ToString ska skriva ut samtliga attribut.

Klassen Cat:
Konstruktorer
- Defaultkonstruktor
- Konstruktor med samtliga attribut
Properties
- set och get på samtliga.
ToString ska skriva ut samtliga attribut förutom moode. Om moode är sann ska det skrivas ut att katten spinner annars att den är arg och otrevlig.

Klassen Dog:
Konstruktorer
- Defaultkonstruktor
- Konstruktor med samtliga attribut
Properties
- set och get på samtliga.
ToString ska skriva ut samtliga attribut förutom moode. Om moode är sann ska det skrivas ut att hunden viftar på svansen annars att svansen slokar.

Uppgift:
Skapa klasserna ovan
Testa de olika klasserna genom att skapa objekt och använda alla de olika metoderna/konstruktorerna/propertyrna i en Main metod.

Dold text
Permalänk

Så här långt har jag kommit och fastnat. Jag ska kunna skriva ut samtliga attribut. När jag trycker F5 så ska det stå i konsolen t ex:
Djuren heter Lassie och är 10 år.
Ägaren heter Bosse och han är glad.
Husdjuret är på bra humör.
Katten spinner/arg och otrevlig.
Hunden viftar med svansen/hunden slokar med svansen.

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace uppgift { class Program { static void Main(string[] args) { //Animal a = new Animal("Lassie", 10); Pet p = new Pet("Lassie", true, "Bosse", 10); Console.WriteLine(p.ToString()); Console.ReadKey(); } } } --------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace uppgift { class Animal { private string name; private int age; public Animal() : this("default value", 0) { //Console.WriteLine("Default konstruktor Animal"); } public Animal(string n, int a) { Name = n; Age = a; //Console.WriteLine("Konstruktor Animal"); } public string Name { get { return name; } set { name = value; } } public int Age { get { return age; } set { if (value > 0) age = value; //Console.WriteLine("Åldern är större än 0"); } } public override string ToString() { string s = "Djurens namn är " + name +" och åldern är " + age + "."; return s; } } } ------------------------------------------------------------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace uppgift { class Pet : Animal { private string owner; private bool mood = true; public Pet() { //Console.WriteLine("Default konstruktor Pet"); } public Pet(string o, bool m, string name, int age) : base(name, age) { owner = o; mood = m; //Console.WriteLine("Konstruktor Pet"); } public string Owner { get { return owner; } set { owner = value; } } public bool Mood { get { return mood; } set { mood = value; } } public override string ToString() { string s = base.ToString() + " Ägarens namn är " + owner + "."; return s; } } } using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace uppgift { class Cat : Animal { private string color; public Cat() { //Console.WriteLine("Default konstruktor Cat"); } public Cat(string c) { color = c; //Console.WriteLine("Konstruktor Pet"); } public string Color { get { return color; } set { color = value; } } public string Moode { get { retun moode; } set { moode = value; if (value == moode) { Console.WriteLine("Katten spinner"); } else Console.WrIteLine("Katten är arg och otrevlig"); } } public override string ToString() { string s = base.ToString() + "Kattens färg " + color; returns s; } } } ----------------------------------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace uppgift { class Dog : Cat { private string race; public Dog() { //Console.WriteLine("Default konstruktor Dog"); } public Dog(string r) { race = r; //Console.WriteLine("Konstruktor Dog"); } public string Race { get { return race; } set { race = value; } } public string Moode { get { retun moode; } set { moode = value; if (value == moode) { Console.WriteLine("Hunden viftar på svansen"); } else Console.WriteLine("Hunden slokar med svansen"); } } public override string ToString() { string s = base.ToString() + "Ras " + race; returns s; } } }

Dold text
Lade till code-taggar
Permalänk
Medlem
Skrivet av Kalleanke:

Har kommit så här långt men fastnat. an inte skriva ut samtliga attribut.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Program
{
static void Main(string[] args)
{
//Animal a = new Animal("Lassie", 10);

Pet p = new Pet("Lassie", true, "Bosse", 10);

Console.WriteLine(p.ToString());

Console.ReadKey();
}

}
}

---------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Animal
{
private string name;
private int age;

public Animal() : this("default value", 0)
{
//Console.WriteLine("Default konstruktor Animal");
}

public Animal(string n, int a)
{
Name = n;
Age = a;

//Console.WriteLine("Konstruktor Animal");
}
public string Name
{
get { return name; }

set { name = value; }
}

public int Age
{
get { return age; }
set
{
if (value > 0)

age = value;

//Console.WriteLine("Åldern är större än 0");
}

}
public override string ToString()
{
string s = "Djurens namn är " + name +" och åldern är " + age + ".";
return s;

}

}
}

-------------------------------------------------------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Pet : Animal
{
private string owner;
private bool mood = true;

public Pet()
{
//Console.WriteLine("Default konstruktor Pet");
}
public Pet(string o, bool m, string name, int age) : base(name, age)
{
owner = o;
mood = m;

//Console.WriteLine("Konstruktor Pet");
}
public string Owner
{
get { return owner; }
set { owner = value; }
}
public bool Mood
{
get { return mood; }
set { mood = value; }
}

public override string ToString()
{
string s = base.ToString() + " Ägarens namn är " + owner + ".";
return s;
}
}

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Cat : Animal
{
private string color;

public Cat()
{
//Console.WriteLine("Default konstruktor Cat");
}
public Cat(string c)

{
color = c;

//Console.WriteLine("Konstruktor Pet");
}
public string Color
{
get { return color; }
set { color = value; }
}

public string Moode
{
get { retun moode; }
set
{
moode = value;

if (value == moode)
{
Console.WriteLine("Katten spinner");
}
else
Console.WrIteLine("Katten är arg och otrevlig");

}

}
public override string ToString()
{
string s = base.ToString() + "Kattens färg " + color;

returns s;
}
}
}

-----------------------------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Dog : Cat
{
private string race;

public Dog()
{
//Console.WriteLine("Default konstruktor Dog");
}
public Dog(string r)
{

race = r;

//Console.WriteLine("Konstruktor Dog");
}
public string Race
{
get { return race; }
set { race = value; }
}

public string Moode
{
get { retun moode; }
set
{
moode = value;

if (value == moode)
{
Console.WriteLine("Hunden viftar på svansen");
}
else
Console.WriteLine("Hunden slokar med svansen");

}
}
public override string ToString()
{
string s = base.ToString() + "Ras " + race;

returns s;
}

}
}

Dold text

Jeeeesuz... använd [spoiler] taggen nästa gång och även [code] taggen hade varit bra

Visa signatur

| EVGA Z170 FTW | i7 6700k | ASUS RTX 3070 | 16GB DDR4 3200MHz | Cooler Master V850 | Samsung 840 Evo 250GB + 2x WD Black 500GB + Seagate 2TB SSHD + Samsung 970 Evo M.2 1TB|

Permalänk
Medlem
Skrivet av Kalleanke:

Har kommit så här långt men fastnat. an inte skriva ut samtliga attribut.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace uppgift
{
class Program
{
static void Main(string[] args)
{
//Animal a = new Animal("Lassie", 10);

Pet p = new Pet("Lassie", true, "Bosse", 10);

Console.WriteLine(p.ToString());

Console.ReadKey();
}

}
}

........Massa kod

Lägg in koden i kod-taggar

Visa signatur

Neon
Citera mig om du vill ha svar!

Permalänk

Är ny här. Har inte kollat runt vilka funktioner det finns.

Permalänk
99:e percentilen
Skrivet av Kalleanke:

Är ny här. Har inte kollat runt vilka funktioner det finns.

[code]Bla bla bla[/code]

blir

Bla bla bla

[html]<div id="foo">Bla bla bla</div>[/html]

blir

<div id="foo">Bla bla bla</div>

[spoiler]Lång text[/spoiler]

blir

Lång text

Dold text
Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk

testar, verkar funkar

Dold text
Permalänk
Medlem
Skrivet av Kalleanke:

testar, verkar funkar

Dold text

Testa nu att redigera inlägget du gjorde innan och lägg code-taggar runt koden

Visa signatur

2500k @ 4Ghz - H80 | GTX 970 DCII | 8 GB ram
Qpad MK-50, Qpad 5k, Qpad QH-85, Qck+
voff | voff voff

Permalänk
Medlem

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

Visa signatur

Folk på internet har en tendens att tala sanning extra mycket.

Permalänk
Medlem
Skrivet av fosf0r93:

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

I stortsett så har man all basic i huvudet, sen så är det inte meningen att man ska ha allt i huvudet längre fram.
Man ska komma så pass långt att man kan programmering sen använder man sig av referenser och dylikt för större bibliotek då man inte har tid att lära sig allt utantill.

Skulle i princip säga att vem som helst kan lära sig programmera, man behöver absolut inte vara nåt mattesnille.
Men sen är det som med allt annat, det kan ta längre tid för vissa personer, vissa personer kan bli lite extra duktiga etc etc...
Så det är bara att köra på, när man kommer över den där första muren så brukar allt komma på plats.

Visa signatur

Corsair 16GB (4x4096MB) CL9 1600Mhz | Asus P8Z77-V PRO |
Samsung SSD Basic 830-Series 256GB | Intel Core i7 3770K 3,5Ghz |
Asus Xonar Essence STX | Noctua NH-U9B SE2 | Antec Performance One P280 | Corsair HX 850W 80+ Gold Modulär | MSI GTX 770

Permalänk
Medlem

Du har fortfarande inte svarat på vad du har för problem med uppgiften. Att posta all kod berättar inte vad just du har fastnat på.

Permalänk

Jag ska kunna skriva ut samtliga attribut. När jag trycker F5 så ska det stå i konsolen t ex:
Djuren heter Lassie och är 10 år.
Ägaren heter Bosse och han är glad.
Husdjuret är på bra humör.
Katten spinner/arg och otrevlig.
Hunden viftar med svansen/hunden slokar med svansen.

Permalänk
Medlem
Skrivet av fosf0r93:

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

Du ser kluriga formler. Jag ser brunetter, blondiner, red-heads etc..

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem
Skrivet av fosf0r93:

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

Kan inte matte alls knappt och klarade en C# kurs. Svårt som fan men meningen är att ha alla grunder i huvudet (tex vad en if sats gör) men att sedan googla/ta reda på mer specifika saker. Det är inte memorerande av massa formler som är utmaningen, utan att vet vilka man ska använda och hur man letar upp dessa.

Visa signatur

PS3 Slim 750GB PSN: Asseroth
Dator:
i7 4790k | Gigabyte GA-Z97P-D3 | 32GB DDR3 | SanDisk SSD 128GB, OZC SSD 256MB, Toshiba 4TB, Toshiba 3TB | AMD Radeon R9 290x 4GB| Corsair CS650W | Fujitsu 27" 1080p & AOC 24" 1080p | Windows 10 Pro x64

Permalänk
Medlem
Skrivet av Kalleanke:

Jag ska kunna skriva ut samtliga attribut. När jag trycker F5 så ska det stå i konsolen t ex:
Djuren heter Lassie och är 10 år.
Ägaren heter Bosse och han är glad.
Husdjuret är på bra humör.
Katten spinner/arg och otrevlig.
Hunden viftar med svansen/hunden slokar med svansen.

Du svarar fortfarande inte på vad som är problemet. Var har du fastnat. Får du kompileringsfel eller blir det fel resultat när du kör koden?

Hur ska vi kunna hjälpa dig om du inte beskrivet problemet?

Ingen här kommer att skriva koden åt dig.

Permalänk
Medlem

Du kan börja med att kolla igenom vilka klasser som ärver från vilka, då jag misstänker att det är fel.

Så här ser det ut nu:

-> Pet / Animal- \ -> Cat -> Dog

Permalänk
Hedersmedlem

Jag lade till code-taggar i inlägget med koden.

Som sagts tidigare. Du får berätta vilken bit det är du har problem med, du verkar ju ha kommit en bra bit på vägen om det inte är en grund som du redan fått.

Berätta vilken funktionalitet du har problem att göra och varför du inte vet hur du ska göra det.

MVH
Moderator Shimonu

Permalänk
Entusiast
Skrivet av fosf0r93:

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

Du kan säkert minst två språk. Svenska och Engelska. Där kan du massor med ord och massor med grammatik. Det är precis lika dant i ett programeringspråk. Du måste kunna orden och grammatiken som uppgör språket. När du kan det så kan du också forma meningar, eller program i det här fallet.

T.ex. I de flesta språken kan du avsluta en mening med punkt, utropstecken eller frågetecken. I ett flertal programmeringsspråk avslutar du med semikolon eller uhm.. vad nu } tecknet heter :P.

Det du måste vara bra på för att programmera är framförallt att kunna bryta isär problem i alla sina beståndsdelar.

Permalänk
Skrivet av JasPlan:

Du kan börja med att kolla igenom vilka klasser som ärver från vilka, då jag misstänker att det är fel.

Så här ser det ut nu:

-> Pet / Animal- \ -> Cat -> Dog

Så här ska det se ut.

Dold text

Jag vet inte hur man kodar så att samtliga attribut kommer på konsolen. Lyckas bara få attributen från Animal.cs och Pet.cs till konsolen. Typ "Djuren heter Lassie och är 10 år. Ägarens namn är Bosse.

Får inte fram attributen från Cat.cs och Dog.cs. Får alltså inte fram katten spinner/är otrevlig och hunden viftar med svansen/slokar med svansen.

Permalänk
Medlem
Skrivet av Kalleanke:

Så här ska det se ut.

Jag vet inte hur man kodar så att samtliga attribut kommer på konsolen. Lyckas bara få attributen från Animal.cs och Pet.cs till konsolen. Typ "Djuren heter Lassie och är 10 år. Ägarens namn är Bosse.

Får inte fram attributen från Cat.cs och Dog.cs. Får alltså inte fram katten spinner/är otrevlig och hunden viftar med svansen/slokar med svansen.

Den kod som du kör är nedanstående:

class Program { static void Main(string[] args) { //Animal a = new Animal("Lassie", 10); Pet p = new Pet("Lassie", true, "Bosse", 10); Console.WriteLine(p.ToString()); Console.ReadKey(); } }

I den så skapar du bara ett djur av typen Pet och kör metoden ToString() för att skriva ut värdena.

För att få ut t.ex. värdena från Cat eller Dog så måste du inom Main() skapa sånna objekt och anropa metoden ToString() på varje.

Programmet skriver inte ut information som du inte efterfrågar

Mvh Jonas

Permalänk
Skrivet av fosf0r93:

Ni som programmerar: Sitter alla dessa kluriga formlerna i huvet eller har ni någon manual vid sidan om? Känns som en del att hålla reda på.. På tok för mycket för min lilla hjärna :(. Har alla potential för att lära sig och programmera? Eller endast mattesnillen?

Det är väldigt logiskt. Bara man vet var man ska ha alla { ; )( "" osv så är det inga problem

Permalänk
Moderator
Festpilot 2020, Antiallo
Skrivet av Blargmode:

Du kan säkert minst två språk. Svenska och Engelska. Där kan du massor med ord och massor med grammatik. Det är precis lika dant i ett programeringspråk. Du måste kunna orden och grammatiken som uppgör språket. När du kan det så kan du också forma meningar, eller program i det här fallet.

T.ex. I de flesta språken kan du avsluta en mening med punkt, utropstecken eller frågetecken. I ett flertal programmeringsspråk avslutar du med semikolon eller uhm.. vad nu } tecknet heter :P.

Det du måste vara bra på för att programmera är framförallt att kunna bryta isär problem i alla sina beståndsdelar.

Rätt:
} - Hakklammer, klammerparentes accepteras i vissa fall.
] - Hakparentes
) - Parentes
" - Citattecken/citationstecken

Fel:
} - Måsvinge
] - Häftklammer
) - böj
" - Dubbelfnuttar/kaninöron.

Regelmässigt nyttjande av samtliga ovanstående felaktiga benämningar bestraffas med att man till att börja med gör bort sig och visar inkompetens/likgiltighet inför att försöka förbättra sig själv. AKA Digital Halshuggning. =D

Visa signatur

 | PM:a Moderatorerna | Kontaktformuläret | Geeks Discord |
Testpilot, Skribent, Moderator & Geeks Gaming Huvudadmin

Permalänk
Medlem
Skrivet av DavidtheDoom:

Rätt:
} - Hakklammer, klammerparentes accepteras i vissa fall.
] - Hakparentes
) - Parentes
" - Citattecken/citationstecken

Fel:
} - Måsvinge
] - Häftklammer
) - böj
" - Dubbelfnuttar/kaninöron.

Regelmässigt nyttjande av samtliga ovanstående felaktiga benämningar bestraffas med att man till att börja med gör bort sig och visar inkompetens/likgiltighet inför att försöka förbättra sig själv. AKA Digital Halshuggning. =D

Jag använder Parantes, citattecken, måsvinge och kallar inte shift 8-9 för något särskilt D:

Min lärare säger allt du har på -fel haha.
Får väl lära mig. Tack!

Visa signatur

I7 12700K, Asus RTX 3080 TI, Alienware AW3423DW och annat smått o gott.

Permalänk
Medlem
Skrivet av DavidtheDoom:

Fel:
" - Dubbelfnuttar/kaninöron.

OT: "situationstecken" är ju en vanligt förekommande benämning också... :-/

Skickades från m.sweclockers.com

Visa signatur

as far as we can tell, the massacre went well...

Permalänk
Moderator
Festpilot 2020, Antiallo
Skrivet av jovnas:

OT: "situationstecken" är ju en vanligt förekommande benämning också... :-/

Skickades från m.sweclockers.com

Helt klart vilket egentligen bara är en slö variant av citationstecken vilket är det korrekta

Visa signatur

 | PM:a Moderatorerna | Kontaktformuläret | Geeks Discord |
Testpilot, Skribent, Moderator & Geeks Gaming Huvudadmin

Permalänk
Medlem
Skrivet av DavidtheDoom:

Rätt:
} - Hakklammer, klammerparentes accepteras i vissa fall.
] - Hakparentes
) - Parentes
" - Citattecken/citationstecken

Har faktiskt aldrig tagit mig tid att kolla upp rätt benämningar på de första två tecken du nämner men tack för informationen.