All kod jag skrivit in kommer inte med
Hej,
jag är väldigt ny på C# och ska ha min första inlämning på lördag. Jag håller på med en uppgift som heter pension och förstår inte varför all kod jag skrivit in inte kommer med? Tror jag missar något?
Nu står det en massa annat som inte är färdigt med men det enda jag undrar är varför det inte står med "Skriv in din ålder: " när jag startar debug.
Hej!
Det är för att programmet väntar på inmatning från användaren. Console.ReadLine()
stoppar programmet fram tills användaren tryckt på enter. Raden som bara innehåller Console.ReadLine()
ser överflödig ut, räcker nog med inmatning = Console.ReadLine()
.
Hej,
Tack tog nu bort det som var överflödigt.
Får fortfarande inte programmet att fungera, när jag matar in mitt namn och trycker enter så avslutas programmet. Det står ett felmeddelande vid ”namn = int.Parse(inmatning);” . Felmeddelandet lyder:
system.formatexeption: ’input string not a correct format’
Jag skrev in: Martina Andersson
Behöver jag ha två separata inmatningar för för- och efternamn?
int.Parse(inmatning) kan inte gå bra när du ger ett namn. Den funktionen väntar sig ett heltal.
Det fungerar nog om du sätter
namn = inmatning;
i stället.
Okej, ska jag ta bort det där uppe under string inmatning och under Console.Readline? Ska jag behålla Parse?
Får det inte att fungera. Kommer bara massa felmeddelanden jag inte förstår. Förlåt att jag inte förstår :/
Det parse gör är att omvandla till en annan datatyp. När användaren skriver något läser Console.ReadLine() det som datatypen string, dvs bokstäver och tecken. När det är ett namn som ska sparas behöver det inte omvandlas, utan kan vara en string. Alltså räcker namn = inmatning
, istället för namn = int.Parse(inmatning)
.
När användaren däremot matar in en ålder är det bra att omvandla det som du gör. int.Parse() gör då om det till datatypen int (integer), alltså ett heltal. Det behövs för att programmet sedan ska kunna räkna matte med talet :)
Att däremot försöka göra om ett namn till ett heltal blir ju galet, vilket kan orsaka dina error.
TACK, nu fungerade det!
Härligt!