Programmering C# fastnat på array & string

Trädvy Permalänk
Medlem
Registrerad
Sep 2011

Programmering C# fastnat på array & string

Tjena, kortfattat, det jag vill göra är att få array att gå ihop med "menyval1" och ge fyra alternativ att stoppa i ryggsäcken, "menyval2" ska vara kopplad till en lista med string och kunna stoppa i vadsomhelst. "menyval3" säger vilka föremål jag har i ryggäscken. "Menyval4" ska jag kunna ta ut föremål.

http://pastebin.com/nbdU31YP

ovan är koden, några idéer? Jag har läst alla forum, sökt med google, frågat på fb. Inte kommit nånvart

tack på förhand.

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Jun 2010

Det är inte så mycket rätt i din kod tyvärr så det är svårt att hjälpa dig utan att helt göra uppgiften. Tänk på vad du gör med koden helt enkelt. Varför har du en foreach-loop? Är det tänkt att utskriften av menyn ska ligga i ovannämnda loop och alltså göras om för varje string i ryggsäcken? Varför säger inte menyalternativen vad de innebär? Vilken key läser du med ReadKey?

Trädvy Permalänk
Medlem
Registrerad
Sep 2011
Skrivet av snajk:

Det är inte så mycket rätt i din kod tyvärr så det är svårt att hjälpa dig utan att helt göra uppgiften. Tänk på vad du gör med koden helt enkelt. Varför har du en foreach-loop? Är det tänkt att utskriften av menyn ska ligga i ovannämnda loop och alltså göras om för varje string i ryggsäcken? Varför säger inte menyalternativen vad de innebär? Vilken key läser du med ReadKey?

http://pastebin.com/1ccrwbdg

Tror jag gått framåt nu iallafall, är detta bättre än föregående?

Jag försöker dock nu fixa en funktion som sammanfattar allting jag stoppat in i ryggsäcken.

Trodde myList + ytterFack skulle fungera men icke, tankar?

edit: För att summera båda listorna i slutet, är jag på rätt väg om jag skriver

foreach (int TotalObjects in ytterFack + myList)
Console.WriteLine (TotalObjects)

Trädvy Permalänk
Medlem
Registrerad
Okt 2015
Skrivet av skriy:

http://pastebin.com/1ccrwbdg

Tror jag gått framåt nu iallafall, är detta bättre än föregående?

Jag försöker dock nu fixa en funktion som sammanfattar allting jag stoppat in i ryggsäcken.

Trodde myList + ytterFack skulle fungera men icke, tankar?

edit: För att summera båda listorna i slutet, är jag på rätt väg om jag skriver

foreach (int TotalObjects in ytterFack + myList)
Console.WriteLine (TotalObjects)

Nu har jag aldrig suttit med C# men mer med Java som är ganska likt.

För det första, din indentering är helt knas. Om du försöker få lite struktur, få alla { } på samma rad, allt innanför ska vara intabbat. Det ser OK ut i början men sen blir det helt tokigt.

Jag tror du tänker på fel sätt. Du får försöka bryta ut detta och gå igenom vad allt gör.
t.ex. vill du räkna alla items, gör en metod som heter countItemsInBackpack();
Då kan du t.ex. bara göra så här:

switch (menyVal) { case 1: countItemsInBackpack(); break; case 2: görnågotannathär(); break; }

Det blir mer lättläst och du vet precis vad som händer i vilket case och vill du ändra något i countItemsInBackpack() då går du ner till den metoden och ändrar där nere.

Du skapar en lista som heter ytterFack som har 4 platser i sig.
Sen skapar du en lista till som heter myList. Inga kommentarer här, så vad håller den listan och vart används den?

Med tanke på att du slarvar så mycket med indentering och struktur så glömmer du av att sätta { } vid for each, jag är inte så påläst om C# men en snabb googling så står det med { }

foreach (var item in ytterFack) { Console.WriteLine($"Item: {item}"); }

Börja med att bryta ner det du vill göra in i metoder. Ta en metod i taget och lägg bara till ett meny val. När första menyvalet fungerar kanon! Gå till nästa.
När alla 4 fungerar så kan du lägga allt i en while loop och kanske ett till menyval nummer 5 som stänger ner pogrammet.