Перейти к содержимому

Как получить дробную часть числа в c

  • автор:

Как получить дробную часть у числа с плавающей запятой?

что значит извлечь? вы хотите получить только дробную часть?

20 янв 2017 в 14:20

да, только дробную

20 янв 2017 в 14:20

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Используйте функцию modf . Стоит учитывать, что знак дробной части будет такой же как знак исходного числа. Для отрицательных чисел, дробная часть будет отрицательной.

float money; double fractpart, intpart; money = 8.12; fractpart = modf(money, &intpart); printf("Integral part = %lf\n", intpart); printf("Fraction Part = %lf \n", fractpart); 

Отслеживать

ответ дан 20 янв 2017 в 14:24

Mikhail Vaysman Mikhail Vaysman

14.2k 1 1 золотой знак 21 21 серебряный знак 31 31 бронзовый знак

для отрицательных может работать немного неожиданно. Да и money — (int)money как-то привычнее.

20 янв 2017 в 14:27

что вы имеете в виду под неожиданно?

20 янв 2017 в 14:29

отрицательная дробная часть например. Как бы многие знакомые с математикой предполагают, что дробная часть строго меньше 1 и больше или равна 0.

Как получить дробную часть числа?

cpp

  • C++

Не могу, понять как компьютер перемещает свой знак?

  • 1 подписчик
  • 16 часов назад
  • 76 просмотров

cpp

  • C++
  • +2 ещё

Почему не компилируется код C++ в VS code/Platformio?

  • 1 подписчик
  • 19 часов назад
  • 65 просмотров

cpp

  • C++

Что быстрее индексы или указатели?

  • 1 подписчик
  • 03 янв.
  • 172 просмотра

c#

  • C#
  • +4 ещё

Как реализовать движение частиц в векторном поле или сплошной среде?

  • 1 подписчик
  • 03 янв.
  • 106 просмотров

windows

  • Windows
  • +2 ещё

Как отлавливать курсор при наведении на дочернее окно?

  • 1 подписчик
  • 02 янв.
  • 118 просмотров

cpp

  • C++

Как обеспечивается совместимость динамических библиотек при ликовке в рантайме?

  • 3 подписчика
  • 30 дек. 2023
  • 312 просмотров

cpp

  • C++

Как установить библиотеку c++ если в папке lib пусто и при запуске ошибка LINK2019?

  • 1 подписчик
  • 29 дек. 2023
  • 57 просмотров

cpp

  • C++

Как лучше добавить перед структурой ещё одну и поместить в массив?

  • 1 подписчик
  • 29 дек. 2023
  • 71 просмотр

cpp

  • C++

Почему прога билдится, но не запускается?

  • 1 подписчик
  • 28 дек. 2023
  • 97 просмотров

cpp

  • C++
  • +1 ещё

Какие хорошие ресурсы для изучения c++?

  • 2 подписчика
  • 28 дек. 2023
  • 240 просмотров

Bell Integrator • Екатеринбург

До 150 000 ₽

Bell Integrator • Санкт-Петербург

До 150 000 ₽

До 150 000 ₽

08 янв. 2024, в 17:01

10000 руб./за проект

08 янв. 2024, в 17:00

3000 руб./за проект

08 янв. 2024, в 16:52

1500 руб./в час

Минуточку внимания

Присоединяйтесь к сообществу, чтобы узнавать новое и делиться знаниями

  • Есть ли не официальные аналоги миджорни апи?
    • 3 подписчика
    • 1 ответ
    • 4 подписчика
    • 1 ответ
    • 3 подписчика
    • 0 ответов
    • 3 подписчика
    • 3 ответа
    • 2 подписчика
    • 0 ответов
    • 2 подписчика
    • 4 ответа
    • 2 подписчика
    • 3 ответа
    • 2 подписчика
    • 1 ответ
    • 2 подписчика
    • 0 ответов
    • 2 подписчика
    • 2 ответа

    Modf – разделяет число на целую и дробную части

    Запись была обновлена

    Функция modf() позволяет разделить число типа double на целую и дробную части. Целая часть помещается в iptr, а дробная возвращается. Метод modf имеет реализацию, которая использует Streaming SIMD Extensions 2 (SSE2). C++ допускает вызов перегрузки modf, которая принимает и возвращает параметры типа float или long double. В приложении на языке программирования C функция modf всегда принимает на вход два двойных значения, а возвращает двойное значение.

    Синтаксис

    #include float modff(float x, float *iptr); double modf(double x, double *iptr); long double modfl(long double x, long double *iptr); //x – число, которое требуется разделить на две части: целую дробную //iptr – указатель на переменную, содержащую целую часть числа x

    Прототип

    Название Язык
    math.h С
    cmath С++

    Возвращаемое значение

    Метод modf() возвращает целую и дробную части в виде двух элементов, возвращаемое значение которых имеют один и тот же знак. Целая часть x возвращается в виде вещественного числа.

    Обработка ошибок

    • Если x равно ±0, возвращается ±0, а ±0 сохраняется в *iptr.
    • Если x равно ±∞, возвращается ±0, а ±∞ сохраняется в *iptr.
    • Если x равно NaN, возвращается NaN, а NaN сохраняется в *iptr.

    Возвращаемое значение x является точным, а округление игнорируется.

    Переносимость

    Функция modf уникальна для DOS.

    Пример

    #include double func, integer; double number = StrToFloat(Edit1->Text); func = modf(number,&integer); Edit2->Text = integer; Edit3->Text = func;

    Как получить дробную часть числа в c

    Форумчанин

    Регистрация: 16.01.2008

    Сообщений: 288

    Дробная часть числа

    Подскажите, какая фунция в Си выделяет дробную часть числа(типа Frac в Паскале)

    Участник клуба

    Регистрация: 02.09.2007

    Сообщений: 1,193

    Смотрите help по modf

    Участник клуба

    Регистрация: 22.04.2007

    Сообщений: 1,329

    #include int main()

    Регистрация: 18.01.2008

    Сообщений: 1,720

    Сообщение от Carbon

    #include int main()

    Нельзя, если x < 0

    Участник клуба

    Регистрация: 22.04.2007

    Сообщений: 1,329

    #include int main()

    Регистрация: 26.07.2009

    Сообщений: 1

    Первый вариант был правильнее, не надо fabs.

    adminish4e
    Посмотреть профиль
    Найти ещё сообщения от adminish4e

    Форумчанин

    Регистрация: 02.02.2010

    Сообщений: 305

    Нет, флур здесь не катит!
    google

    #include void main()

    Skype: CODERua

    Последний раз редактировалось [CODER]; 09.11.2010 в 18:54 .

    Форумчанин

    Регистрация: 26.09.2010

    Сообщений: 570

    остаток от деления — (число 1)%(число 2)
    отбросить все что после запятой — int ((число 1)/(число 2))

    Пишу ПО, создаю сайты, делаю курсовые работы, за деньги
    C#, .NET, MS SQL, AngularJS, HTML, jQuery

    Форумчанин

    Регистрация: 02.02.2010

    Сообщений: 305

    что то, я ниче не понял
    припустим «число 1» — это то вещественное число от которого нам нужно найти вещественную часть. (на сколько я знаю у вещественных числах нельзя найти остаток от деления!)
    что есть — «число 2»?

    Skype: CODERua

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *