Функция, переводящая число из double в short (в случае потери точности выдавать предупреждение) - C (СИ)
Формулировка задачи:
функция переводит число из double в short, при этом в случае потери точности функция должна выдавать предупреждение на экран. Число вводить с клавиатуры. Реализовать алгоритм работы программы внутри тела функции.
Решение задачи: «Функция, переводящая число из double в short (в случае потери точности выдавать предупреждение)»
textual
Листинг программы
short doublt2short(double d) { short res = (short)d; long l = (long)d; if (l != res) { printf("WARNING\n"); } else { if ( fabs(d-l) > 1.0e-7 ) { printf("WARNING"); } } return res; }
Объяснение кода листинга программы
- В функции doublt2short(double d) есть переменная d типа double, которая содержит число, которое нужно перевести в short.
- Сначала число приводится к типу short с помощью явного приведения типов (short res = (short)d;).
- Затем число приводится к типу long с помощью явного приведения типов (long l = (long)d;).
- Переменная l содержит результат преобразования числа d к типу long.
- Сравниваются значения переменных res и l. Если они не равны, то выводится сообщение
WARNING
с помощью функции printf. - Если значения переменных res и l равны, то проверяется разница между числами d и l с помощью функции fabs(d-l). Если эта разница больше 1.0e-7, то выводится сообщение
WARNING
с помощью функции printf. - Функция возвращает значение переменной res.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д