Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> printf, отбростить дробную часть 
:(
    Опции темы
lv151
Дата 5.11.2009, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 2



Как с помощью printf сделать так чтобы 150.0000(double) выводилось как 150?
PM MAIL   Вверх
bsa
Дата 5.11.2009, 18:18 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



printf("%.0f",x);
PM   Вверх
Dov
Дата 5.11.2009, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



или так:
Код
printf("%g",x);




--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
Pitlord
Дата 5.11.2009, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата(Dov @  5.11.2009,  22:54 Найти цитируемый пост)
printf("%g",x);

С чего Вы взяли?
PM MAIL   Вверх
Dov
Дата 5.11.2009, 23:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(Pitlord @  5.11.2009,  22:01 Найти цитируемый пост)
С чего Вы взяли?

что именно?



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
Pitlord
Дата 5.11.2009, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Цитата(Dov @  5.11.2009,  23:31 Найти цитируемый пост)
что именно?

Что спецификатор %g отбрасывает дробную часть? Он же в зависимости от порядка величины будет аналогом либо %f, либо %e 
PM MAIL   Вверх
Cheloveck
Дата 5.11.2009, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1578
Регистрация: 26.7.2008
Где: Тула

Репутация: 5
Всего: 32



Тут советую почитать где-то около .precision и в примерах показано.


--------------------
user posted image
PM Jabber   Вверх
Dov
Дата 5.11.2009, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(Pitlord @  5.11.2009,  22:35 Найти цитируемый пост)
Что спецификатор %g отбрасывает дробную часть? 


Pitlord, он не отбрасывает дробную часть, а 'отбрасывает' лишние нули после десятичной точки, равно, как и саму точку...
ТС что хотел? что бы 150.0000 выводилось, как 150. Он же не сказал, что хочет, что бы 150.12345 выводилось, как 150. Или я что-то не так понял?  smile 



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
bsa
Дата 6.11.2009, 00:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



тема называется "printf, отбростить дробную часть". Ответ дан. Кстати, %g хороший вариант, если не нужно только "отбросить".
Цитата(man 3 printf)
       g, G   The double argument is converted in style f or e (or F or E  for
              G  conversions).  The precision specifies the number of signifi‐
              cant digits.  If the precision is missing, 6 digits  are  given;
              if  the  precision is zero, it is treated as 1.  Style e is used
              if the exponent from its conversion is less than -4  or  greater
              than or equal to the precision.  Trailing zeros are removed from
              the fractional part of the result
; a decimal point appears  only
              if it is followed by at least one digit.

PM   Вверх
Dov
Дата 6.11.2009, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


аСинизатор
***


Профиль
Группа: Завсегдатай
Сообщений: 1721
Регистрация: 10.5.2003
Где: Эрец-Исраэль

Репутация: 11
Всего: 88



Цитата(bsa @  5.11.2009,  23:50 Найти цитируемый пост)
тема называется "printf, отбростить дробную часть". 

 smile  правильно. 

Как вы яхту назовёте, так она и поплывёт.   smile

Добавлено через 3 минуты и 42 секунды
и ещё один вариант:
Код
printf("%d",(int)150.0000);



--------------------
Тут вечности запах томительный,
И свежие фрукты дешевые, 
А климат у нас – изумительный, 
И только соседи – #уевые. 
                           Игорь Губерман.
PM   Вверх
lv151
Дата 6.11.2009, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: нет
Всего: 2



thx.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




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


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

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