Permalänk

Uppgift 2: Avrundaren

Hej,

Läser Programmering 1 på Hermods och har kört fast lite på en av uppgifterna på första inlämningen. Den går ut på att man ska be användaren mata in ett decimaltal och sedan ange hur många decimaler hen vill att man ska avrunda talet till. Det jag har lyckats klura ut hittills är bara hur man anger ett förutbestämt antal, inte hur man väljer själv hur många man vill ha. Jag är inte ute efter att få svaret serverat, behöver bara lite vägledning på hur jag ska komma vidare i mitt kodande. Detta är inget som har tagits upp i boken på de kapitlen som man ska läsa inför första inlämningen, utan studieguiden uppmanar till att söka på internet. Så här ser min kod ut hittills:

Får detta fel meddelandet ; System.FormatException: 'Input string was not in a correct format.'

Exempel:

Användaren skriver in talet 1,3457322 och 5 för antal decimaler. Talet redovisas dels med så många decimaler som användaren valt (1,34573), samt även med tre decimaler (1,346).

Min kod;

Console.WriteLine("Hello Welcome");
Console.WriteLine("Please type in number with decimals");

string strNr = Console.ReadLine();
double nr = Convert.ToDouble(strNr);

Console.WriteLine("Now choose the amount of decimals");

string str = Console.ReadLine();
int nr2 = Convert.ToInt32(str);

Console.WriteLine("Your number has been rounded off to: " + Math.Round(nr, nr2));

Permalänk
Medlem

@Will Sheza C:
Ledtråd: Decimalkomma vs Decimalpunkt.

Permalänk
Medlem

Det handlar sannolikt om vilket tecken du använder som decimaltecken. punkt/komma

edit: late.

Permalänk

Tack så mycket för hjälpen det löste problemet. Ni är grymma. HUr skall jag få in att det också skrivs ut med 3 decimaler ?

Permalänk
Medlem
Skrivet av Will Sheza C:

Tack så mycket för hjälpen det löste problemet. Ni är grymma. HUr skall jag få in att det också skrivs ut med 3 decimaler ?

Det är väl bara att plussa på Math.Round(nr, 3) till utskriften, eller har jag missförstått vad du vill göra?