С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/54: Рейтинг темы: голосов - 54, средняя оценка - 4.98
 Аватар для Vortal
104 / 104 / 27
Регистрация: 11.08.2011
Сообщений: 301

Отсечение дробной части до сотых

20.02.2013, 16:53. Показов 10991. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
собственно сабж.
Есть переменная типа double, которая динамически меняется, но при вводе данных в базу, мне надо чтоб ее дробную часть отсекало до сотых.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.02.2013, 16:53
Ответы с готовыми решениями:

Дано положительное вещественное число Х. Определить, равна ли первая цифра его дробной части последней цифре целой части
Дано положительное вещественное число Х. Определить, равна ли первая цифра его дробной части последней цифре целой части. Данные должны...

Отсечение целой части у простой дроби [HomeLisp]
В HomeLisp функция floor для этого совсем не подходит: (floor 3/4) Aргумент FIX - не число ==> ERRSTATE (floor 0.75) ...

Определить равна ли сумма k цифр дробной части заданного вещественного числа сумме цифр целой части
Помогите доделать задание, исправьте пожалуйста код!!! Срочно! Задание: Выполнить задания, выделяя цифры числа, хранящегося в переменной...

10
 Аватар для Sonyk91
111 / 111 / 13
Регистрация: 01.10.2012
Сообщений: 2,228
20.02.2013, 17:01
Java
1
2
3
4
5
6
// dz-кол знаков после запятой
double formatDouble(double d, int dz) 
{ 
    double dd=Math.pow(10,dz); 
    return Math.round(d*dd)/dd; 
}
1
 Аватар для Vortal
104 / 104 / 27
Регистрация: 11.08.2011
Сообщений: 301
21.02.2013, 13:00  [ТС]
Премного благодарен

Добавлено через 1 час 14 минут
Но мне надо не округлить, а именно отсечь дробную часть.
0
 Аватар для Vortal
104 / 104 / 27
Регистрация: 11.08.2011
Сообщений: 301
21.02.2013, 14:20  [ТС]
Ну так такая же беда, ваш метод не хуже тех, что передложены там. Дело в том, у меня есть входящие число, которое делиться на n количество частей, и получается огромная дробная часть, которую надо не округляя свести к сотым. А там все сводиться к округлению, прошелся по каждому методу.
0
 Аватар для Sonyk91
111 / 111 / 13
Регистрация: 01.10.2012
Сообщений: 2,228
21.02.2013, 14:50
Vortal, Есть не очень хорошее решение, занести вещественное число в строку и обрезать не нужное, затем конвертировать обратно в double.
1
 Аватар для Drygba
512 / 454 / 119
Регистрация: 17.02.2012
Сообщений: 1,032
Записей в блоге: 1
21.02.2013, 14:51
Цитата Сообщение от Vortal Посмотреть сообщение
надо не округляя свести к сотым.
это есть не правильно.
Но если хочется:
Java
1
2
3
double d = 15.2455687;
        String s = String.valueOf(d);
        d = Double.parseDouble(s.substring(0, s.indexOf(".")+3));
Добавлено через 59 секунд
Цитата Сообщение от Sonyk91 Посмотреть сообщение
Есть не очень хорошее решение
почему?
1
 Аватар для Vortal
104 / 104 / 27
Регистрация: 11.08.2011
Сообщений: 301
21.02.2013, 16:21  [ТС]
Большое спасибо Drygba, Sonyk91, помогло. А то я перепробывал массу вариантов, но мне так и не открылась. Я просто хотел реализовать каким нибудь методом джавы, оказалось, надо было идти более простым путем.
0
 Аватар для Sonyk91
111 / 111 / 13
Регистрация: 01.10.2012
Сообщений: 2,228
21.02.2013, 16:33
Drygba, хотелось бы стандартного метода, реализованного на другом уровне...
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
21.02.2013, 17:22
Цитата Сообщение от Vortal Посмотреть сообщение
Ну так такая же беда, ваш метод не хуже тех, что передложены там. Дело в том, у меня есть входящие число, которое делиться на n количество частей, и получается огромная дробная часть, которую надо не округляя свести к сотым. А там все сводиться к округлению, прошелся по каждому методу.
Я чего-то не понимаю в этой жизни?

Java
1
2
3
4
double d = 15.2455687;
int n = 2;
double mul = Math.pow(10, n);
System.out.println(((long)(d*mul))/mul);
Умножаем на 10 в степени нужного числа знаков, дальше приводим к целому (отрезаем хвост), потом делим обратно. ВСЁ.

P.S. В строку, в строку... "Вы бы еще Буран с Байконура пригнали!" ©
0
21.02.2013, 17:43

Не по теме:

Цитата Сообщение от Skipy Посмотреть сообщение
Я чего-то не понимаю в этой жизни?
слишком просто:), нет полета фантазии

0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
21.02.2013, 18:04
Цитата Сообщение от Drygba Посмотреть сообщение

Не по теме:

слишком просто:), нет полета фантазии

Ну тогда вот Вам еще вариант конвертации. В метод приходит Double, гарантированно без дробной части. Надо сделать int.

Java
1
2
Double d;
int n = new Double(Double.parseDouble(d.toString().trim())).intValue();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.02.2013, 18:04
Помогаю со студенческими работами здесь

Определения, равна сумма цифр целой части вещественного числа сумме такого же количества цифр в дробной части
Нада написать 2 программки 1. Определения, равна сумма цифр целой части вещественного числа сумме такого же количества цифр в дробной...

Найти произведение первой цифры целой части и третьей цифры дробной части вещественного числа
Помогите написать программу в Паскале Найти произведение первой цифры целой части и третьей цифры дробной части вещественного числа ...

Вывести старшую цифру дробной части и младшую цифру целой части числа
Даны натуральные числа M и N. Вывести старшую цифру дробной части и младшую цифру целой части числа M/N.

Вывести старшую цифру дробной части и младшую цифру целой части числа
Даны натуральные числа M и N. Вывести старшую цифру дробной части и младшую цифру целой части числа M/N.

Вывести старшую цифру дробной части и младшую цифру целой части числа M/N
Люди, помогите, пожайлуста, решить задачи! Кто-какие знает: 1. Даны натуральные числа M и N. Вывести старшую цифру дробной части и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru