Как ограничить размер переменной типа double? - C#
Формулировка задачи:
Здравствуйте! Когда я пытаюсь найти квадратный корень любого числа через класс Math, то выходит число с очень большим кол-вом знаком после запятой. И из-за этого срабатывает исключение. Как исправить?
Код на всякий случай -
double _dbl = Convert.ToDouble(_TotalEnergy); _dbl = Math.Sqrt(_dbl);
Решение задачи: «Как ограничить размер переменной типа double?»
textual
Листинг программы
decimal _Mass, _Velocity, _TotalEnergy; int _C = 229792459; Console.Clear(); Console.WriteLine("Сколько потребуется для разгона энергии (дробные числа через ","):"); Console.WriteLine("Масса (КГ) :"); _Mass = Convert.ToDecimal(Console.ReadLine()); Console.Clear(); Console.WriteLine("Сколько потребуется для разгона энергии (дробные числа через ","):"); Console.WriteLine("Масса = " + _Mass + " КГ"); Console.WriteLine("Скорость (М/С) :"); _Velocity = Convert.ToDecimal(Console.ReadLine()); Console.Clear(); Console.WriteLine("Сколько потребуется для разгона энергии (дробные числа через ","):"); Console.WriteLine("Масса = " + _Mass + " КГ"); Console.WriteLine("Скорость = " + _Velocity + " М/С"); _TotalEnergy = 1 - ((_Velocity * _Velocity) / (_C * _C)); double _dbl = Convert.ToDouble(_TotalEnergy); _dbl = Math.Sqrt(_dbl); _TotalEnergy = Convert.ToDecimal(_dbl); _TotalEnergy = 1 / _TotalEnergy; _TotalEnergy = _TotalEnergy - 1; _TotalEnergy = _TotalEnergy * (_C * _C); _TotalEnergy = _TotalEnergy * _Mass; Console.WriteLine("================================"); Console.WriteLine("Для разгона объекта массой " + _Mass + " кг до скорости " + _Velocity + " м/с потребуется\n" + _TotalEnergy + " Дж"); Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д