public static void Main()
{
WriteLine("Farenheit Here>>");
int F = Int32.Parse(ReadLine());
Double FtoC = (5.0 / 9.0) * (F - 32);
WriteLine("the celsius is {0} ", FtoC);
}
输入适用于整数,但我也希望它适用于十进制数。防爆。如果我输入10它会给我一个答案,但如果我输入10.5它将停止工作。我确实是C#的新手。
答案 0 :(得分:1)
你需要使用你想要的数字解析器,目前你正在使用int
generateDeck :: Int -> Deck
generateDeck players = basics ++ actions ++ bombs
where
cats = concatMap (replicate 5 . Basic) [TacoCat ..]
actions = map Action . concat $
[ replicate 2 Nope
, replicate 4 Skip
, replicate 4 Attack
, replicate 4 Shuffle
, replicate 4 Future
, replicate 1 Defuse
, replicate 4 Favor
]
bombs = replicate (players + 1) BombCard
你可以使用double或decimal(我建议使用十进制数加倍)
Int32.Parse(ReadLine());
然后改为
decimal F = Decimal.Parse(ReadLine());
(M用于定义小数文字)
答案 1 :(得分:0)
int
不存储十进制数。使用double
或decimal
public static void Main()
{
WriteLine("Farenheit Here>>");
double F = double.Parse(ReadLine());
Double FtoC = (5.0 / 9.0) * (F - 32);
WriteLine("the celsius is {0} ", FtoC);
}
答案 2 :(得分:0)
嗯,Int32
具体用于处理整数。如果您想要处理Decimal
值,他们会使用自己的 Parse
方法,因此我会查看以下内容:
public static void Main() {
Console.Write("Farenheit Here>> ");
Decimal F = Decimal.Parse(Console.ReadLine());
Decimal FtoC = (5.0M / 9.0M) * (F - 32M);
Console.WriteLine("The celsius is {0} ", FtoC);
}
请注意使用M
后缀。如果您想使用Decimal
类型,那么您可能最好完全拒绝它们,而不是恢复为double
类型及其foibles。