Рубрики

nextafter () и nexttoward () в C / C ++

Как бы вы решили следующие проблемы в C / C ++?

  • Какое наименьшее представимое положительное число с плавающей запятой в C / C ++?
  • Какое наибольшее представимое отрицательное число с плавающей точкой в C / C ++?
  • Учитывая положительное число с плавающей запятой x, найдите наибольшее представимое значение с плавающей запятой меньше, чем x?

следующий (x, y) и следующий (xy)
В C и C ++, как nextafter (x, y), так и nexttoward (xy) являются аналогичными функциями, определенными в заголовочных файлах math.h или cmath. Они оба возвращают следующее представимое значение после x в направлении y. nexttoward () имеет более точный второй параметр y.

Следующая программа демонстрирует концепцию:

// C программа для демонстрации использования nextafter () и nexttoward ()
#include <stdio.h>
#include <math.h>

int main ()

{

    // используя nextafter

    printf ("Smallest positive floating point number : %e\n",

            nextafter(0.0, 1.0));

    printf ("Largest negative floating point number :%e\n",

            nextafter(0.0, -1.0));

    printf ("Largest positive floating point number smaller than 0.5 : %e\n",

            nextafter(0.5, 0.0));

  

    // используя nexttoward

    printf ("Smallest positive floating point number : %e\n",

            nexttoward(0.0, 1.0));

    printf ("Largest negative floating point number : %e\n",

            nexttoward(0.0, -1.0));

    printf ("Largest positive floating point number smaller than 0.5 : %e\n",

            nexttoward(0.5, 0.0));

    return (0);

}

Выход:

nextafter first value greater than zero: 4.940656e-324
nextafter first value less than zero: -4.940656e-324
nexttoward first value greater than zero: 4.940656e-324
nexttoward first valnextafter first value greater than zero: 4.940656e-324
nextafter first value less than zero: -4.940656e-324
nexttoward first value greater than zero: 4.940656e-324
nexttoward first value less than zero: -4.940656e-324 ue less than zero: -4.940656e-324 

Эта статья предоставлена Адитьей Чаттерджи. Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по обсуждаемой теме

Рекомендуемые посты:

nextafter () и nexttoward () в C / C ++

0.00 (0%) 0 votes