Перевод градусов в радианы(проблема с типами) - C (СИ)
Формулировка задачи:
здравствуйте. понадобилась программа для перевода градусов в радианы.
Все отлично работает. затем изменяю тип переменных на double или long double и программа вместо чисел выдает одни 0.0000000
Длинный вещественный тип нужен для использования в другой программе.
Подскажите почему это происходит и как исправить?
#include <stdio.h> #define PI 3.14159265 int main(void) { float degrees, radians; printf("Enter degrees:\n"); scanf("%f", °rees); radians = degrees * (PI / 180.0); printf("%f degrees = %f radians\n", degrees, radians); return 0;
double degrees, radians;
Решение задачи: «Перевод градусов в радианы(проблема с типами)»
textual
Листинг программы
#include <stdio.h> #define PI 3.14159265 int main(void) { long double degrees, radians; printf("Enter degrees:\n"); scanf("%Lf", °rees); radians = degrees * (PI / 180.0); printf("%Lf degrees = %Lf radians\n", degrees, radians); return 0; }
Объяснение кода листинга программы
- Включаем стандартную библиотеку ввода-вывода
- Определяем константу PI, которая представляет число π в виде десятичной дроби
- В функции main() объявляем переменную типа long double с именем degrees для хранения градусов и переменную типа long double с именем radians для хранения радиан
- Выводим сообщение
Enter degrees:
и считываем из консоли значение градусов в переменную degrees с помощью функции scanf() - Переводим значение градусов в радианы, умножая его на (PI / 180.0) и сохраняем результат в переменную radians
- Выводим сообщение
degrees = radians
для иллюстрации соответствия между градусами и радианами - Возвращаем 0, чтобы указать, что программа успешно завершилась
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д