允许用户选择在计算器中显示整数或只显示2位小数



我正在制作一个基本的计算器,我想知道如何让用户选择是显示完整的结果,还是只显示带2位小数的结果。例如,如果用户输入第一个数字4.213和第二个数字4.6321,方法为"+",则控制台会询问"您希望显示整个结果还是将其四舍五入到2位小数",用户可以键入"是"或"否"。

我不是在找这个程序来舍入小数,只显示2个小数或整个数字。

我想如果和其他的声明会是走到这里的方式。

代码:

using System.Collections.Generic;
namespace ConsoleApp1
{
class Program
{
private static int runda;
static void Main(string[] args)
{
List<double> Numbers = new List<double>();
string Method = "";
while (true)
{
loop:
try
{
Numbers.Add(ConvStr(TakeUserInput("First Number:")));
}
catch
{
Console.Clear();
Console.WriteLine("Error, try again.");
Console.ReadLine();
goto loop;
}
Console.Clear();
looop:
try
{
Numbers.Add(ConvStr(TakeUserInput("Second Number:")));
}
catch
{
Console.Clear();
Console.WriteLine("Error, try again.");
Console.ReadLine();
goto looop;
}
Console.Clear();

do
{
Method = TakeUserInput("Choose method: ");
Console.Clear();
Console.WriteLine("Error (Endast Addition (+) Subtraktion (-) Multiplikation (*) samt division (/)");
}
while (!CheckMethod(Method));
Console.Clear();
**HERE IS WHERE I WOULD LIKE USER TO CHOOSE IF DISPLAY ENTIRE NUMBER OR ONLY 2 DECIMALS**
Console.WriteLine("Result:");
Console.WriteLine(Calc(Numbers, Method));
Console.WriteLine("If you wish to keep using this calculator press Enter.");
Console.ReadLine();
Numbers.Clear();
}
}

private static string TakeUserInput(string DisplayText)
{
Console.Write(DisplayText);
return Console.ReadLine();
}
private static bool CheckMethod(string method)
{
switch(method)
{
case "+":
break;
case "-":
break;
case "*":
break;
case "/":
break;
default:
return false;
}
return true;
}
private static double Calc(List<double> input, string method)
{
double Answer = 0;
switch (method)
{
case "+":
Answer = input[0] + input[1];
break;
case "-":
Answer = input[0] - input[1];
break;
case "*":
Answer = input[0] * input[1];
break;
case "/":
Answer = input[0] / input[1];
break;
}

return Answer;
}
private static double ConvStr(string input)
{
return Convert.ToDouble(input = input.Replace(".", ","));
}
}
}

可能是错误的,但不是吗1( 。将整数(结果(转换为字符串2( 。对字符串使用.indexOf("(函数来获取句点的位置3( 。检查索引+3是否在结果的范围内,以免出现任何错误(3也可以跳过周期(4( 。使用.remove(index(函数删除新索引中的所有其他数字5( 。使用Convert.toInt32(字符串(将其值返回

还有一个"Data."函数,它可以让你计算表达式的字符串表示的结果,如果这对有任何帮助的话

最新更新