У меня проблема с выходом в коде ниже.C# - Возможно, ploblem with CultureInfo.InvariantCulture
using System;
using System.Globalization;
class GreaterNum
{
static void Main()
{
double num1 = 0;
double num2 = 0;
System.Threading.Thread.CurrentThread.CurrentCulture =
System.Globalization.CultureInfo.InvariantCulture;
Console.Write("Enter first number: ");
bool isDouble1 = Double.TryParse(Console.ReadLine(), out num1);
Console.Write("Enter second number: ");
bool isDouble2 = Double.TryParse(Console.ReadLine(), out num2);
if (isDouble1 && isDouble2)
{
Console.WriteLine("The greater number is: " + Math.Max(num1, num2));
}
else
{
Console.WriteLine("Not a valid number!");
}
}
}
Проблема в том, что, когда числа не являются десятичными "." выход:
Введите первое число: 1,2 Введите второе число: 2,3 Чем больше число: 23
Этого следовало ожидать. «,» - это тысячный разделитель, поэтому синтаксический анализ будет игнорировать его. –
System.Threading.Thread.CurrentThread.CurrentCulture = \t \t \t \t новый CultureInfo ("nl"); –