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

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

20.02.2013, 16:53. Показов 11036. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru