Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> формат double при преобразовании в текст, Откуда лишние нули при форматном преобр. 
V
    Опции темы
jk1
Дата 7.12.2011, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 40
Всего: 75



Если оставить софистику и вернуться к решению задачи, то реализация флага # для Java существует.

Чтобы ей воспользоваться нам потребуются две библиотеки lava3 core и lava3 printf. С ними можно использовать флаг #, например, таким образом:

Код

import com.sharkysoft.printf.Printf;
...
double a, b, c, d, e;
a = 0.1;
b = 0.01;
c = 0.001;
d = 0.0001;
e = 0.00001;
System.out.println(Printf.format("%-#7.5g", new Object[]{a}));
System.out.println(Printf.format("%-#7.5g", new Object[]{b}));
System.out.println(Printf.format("%-#7.5g", new Object[]{c}));
System.out.println(Printf.format("%-#7.5g", new Object[]{d}));
 System.out.println(Printf.format("%-#7.5g", new Object[]{e}));


Я также добавил флаг "-" для выравнивания по левому краю


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
Mirkes
Дата 7.12.2011, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 586
Регистрация: 18.8.2011
Где: Красноярск

Репутация: 7
Всего: 17



Цитата(Nikolja @  6.12.2011,  20:51 Найти цитируемый пост)
Я хотел сказать "ТАКОЙ форматированный вывод" (или "форматный" - встречал и такой, и такой перевод.). С такими обозначениями f, g, d, o и т.п.


синтаксис языка Fortran IV F12.5  порядок букв другой - суть та же. В PL1 точно не помню, не писал на нем более 20 лет. Но по-моему выглядит так же.
Кстати PL1  по моему один из первых языков, в которых появился НЕ форматированный вывод. Раньше формат ВСЕГДА надо было указывать.

Цитата(Nikolja @  6.12.2011,  20:51 Найти цитируемый пост)
Вот поди пойми -- кому советуешь! В соседней теме некто Voron91 спрашивает, что такое printf() и что там символы % и d означают (ответить, что ли?) -- совсем новичок; а здесь человек рассуждает о таких языках, которым лет больше, чем большинству присутствующих на форуме. Уже одно, что названия такие знает, заслуживает уважения  . Respect!


Я на них еще и писал. Что, впрочем не мешает попасть в просак с java. Так что благодарность вам была вполне искренней.

Цитата(Nikolja @  6.12.2011,  20:51 Найти цитируемый пост)
ЦитатаКстати и в  FORTRAN и в PL1 вывод осуществлялся так же, как в моем примере на Pascal или в Вашем на C. Тут задумался над смыслом сказанного... Синтаксис то разный в этих языках? Имеется в виду без хвостовых нулей, наверное?


Нет, без всяких выкрутасов. Сколько знаков сказано, столько и выводится.



--------------------
Mirkes
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0588 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.