Есть переменная типа double d = 1.5997, подскажите пожалуйста, как вывести три знака после запятой не округляя его?
Пробовал Console.WriteLine("{0:0.###}", d);
Возвращает 1.6.
Пробовал Console.WriteLine("{0:0.000}", d);
Возвращает 1.600,
а нужно 1.599.
Вот такой костыль поможет. precision
- требуемое число знаков после запятой
static double myRound(double x, int precision)
{
return ((int)(x * Math.Pow(10.0, precision)) / Math.Pow(10.0, precision));
}
Вот менее уневерсальный вариант но более быстрый.
Math.Truncate(1000 * 1.5997) / 1000; // 1,599
небольшая манипуляция должна решить ваш вопрос.
public double ReformatDouble (double num)
{
string number = num.ToString();
string[] array = number.Split('.');
string newNum = array[0].ToString() + "." + array[1].Substring(0, 3).ToString();
return Double.Parse(newNum);
}
ReformatDouble(1.12345);
//результат 1.123
String.Format("{0:0.000}", 140.6767554); // "140.676"
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый деньПрошу Вашей помощи в следующем вопросе: Есть выпадающий список, который я получаю в результате выборки из БД SQL
Синтаксис array_rand, гласит: array_rand ( array input [, int num_req] ), где num_req - количество выбираемых значений
Здравствуйте, внутри класса есть задание конфига:
Начал разбираться с ООП php, а именно с архитектурой MVCВозник вопрос по подключению к бд