Округление чисел - C# (181712)
Формулировка задачи:
Всем привет, стоит такая задача..
У нас есть 3 числа, допустим
345 78 25
нам нужно разделить первое на второе и округлить до точности третьего, т.е
(345/25) и округляем до 25 знаков после запятой
ответ должен получиться: 4.4230769230769230769230769
Какие есть варианты)?
Решение задачи: «Округление чисел»
textual
Листинг программы
// = x/y округление до n знаков, дробная часть выводтся групами по g цифр с разделителями "пробел" // если g <=0 то разделителей нет static public string delenieDoN(int x, int y, int n, int g = -1) { string rez; int r; int o; int py; o = Math.Abs(x % y); py = Math.Abs(y); //целая часть r = x / y; int[] a = new int[n]; //часть после точки if (n > 0) { for (int i = 0; i < n ; i++) { a[i] = o * 10 / py; o = o * 10 % py; } } //округление if ((o * 10 / py) > 4) { int j = n - 1; a[j]++; while ((j>0)&&(a[j]>9)){ a[j] = 0; j--; a[j]++; } } if (a[0]>9){ a[0]=0; if (r>0) { r++; } else{ r--; } } //строка rez = "" + r; if (n > 0) { rez += "."; for (int i = 0; i < n; i++) { // вставка разделителя групп if ((g > 0) && (i > 0) && (i % g == 0)) { rez += " "; } rez += a[i]; } } return rez; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д