Permalänk
Medlem

nybörjarfråga c#!

håller på o lär mig lite om metoder. Men har kört fast, här kommer min lilla räkneoperation jag sätter ihop:

static double AreaAndOmkrets(double number) { double area = number * number * 3.14; double omkrets = number * 2 * 3.14; return omkrets; } static void Main(string[] args) { Console.WriteLine("KÖTTA IN RADIEN!"); string input; input = Console.ReadLine(); double area = double.Parse(input); double omkrets = double.Parse(input); Console.WriteLine("Arean blir: " + AreaAndOmkrets(area)); Console.WriteLine("Omkretsen blir: " + AreaAndOmkrets(omkrets)); } } }

Det fungerar för det jag ställer in return på, men hur gör jag för att kunna få return båda?

eller kanske är så att jag skrivit allt helt fel ?

Permalänk

Antingen får du ha två olika metoder eller så får du ta och bygga en struct som har area och omkrets:
http://msdn.microsoft.com/en-us/library/ah19swz4.aspx

Lättast är nog att bara ha två olika funktioner.

Btw så kommer ditt program att crasha om man skriver "HEJ" i rutan. Kolla på try catch
http://msdn.microsoft.com/en-us/library/0yd65esw.aspx

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Eller så kan man returnera en array. (Vilket är fulare men enklare)
Sedan tycker jag du kan använda code taggarna, speciellt om du har hängt här i sex år.

Sedan lyssna på KurreKula om try catch, det är verkligen en klassiker att skriva "tjugotre" som radie istället för 23.

Visa signatur

citera!

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Dosshell
Eller så kan man returnera en array. (Vilket är fulare men enklare)
Sedan tycker jag du kan använda code taggarna, speciellt om du har hängt här i sex år.

Sedan lyssna på KurreKula om try catch, det är verkligen en klassiker att skriva "tjugotre" som radie istället för 23.

hoppsan råkade missa det, inte med mening ! aja editerat nu.

Löste det genom två funktioner som KurreKula sa, funkade prima.

Tack för hjälpen.

Permalänk
Medlem

I c#4 som är på gång kan man kunna returnera en Tuple med båda värdena. Efter att ha programmerat ganska mkt Python blir man lite störd varje gång man hamnar i xonke's sits och behöver returnera 2 saker, den ena lösningen är tjockare och fulare än den andra..

Man kan fixa det med out-parametrar oxå, typ såhär:

static double AreaAndOmkrets(double number, out area) { area = number * number * 3.14; double omkrets = number * 2 * 3.14; return omkrets; } static void Main(string[] args) { Console.WriteLine("KÖTTA IN RADIEN!"); string input; input = Console.ReadLine(); double area = double.Parse(input); double omkrets = double.Parse(input); double areaResult; AreaAndOmkrets(area, out areaResult) Console.WriteLine("Arean blir: " + areaResult); Console.WriteLine("Omkretsen blir: " + AreaAndOmkrets(omkrets)); } } }

(Innan du blivit mer erfaren är det nog bättre o göra på andra sätt än med out-parametrar)

Visa signatur

AK47s for everyone! - Angry mob
Since NaN /= NaN, I think, we should decipher 'NaN' as 'Not a NaN' - Miguel Mitrofanov
(Varför är människan så benägen att tro på Gud?) Antagligen har det lönat sig och evolutionen har drivit fram sådana hjärnor. - Anon

Permalänk

Ett mer objektorienterat sätt vore kanske att ha en klass "Circle" som du har 2 properties på. Lite mer kod men mycket snyggare och lättare att utöka!

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase