Ошибка в коде по нахождению гипотенузы - C (СИ)
Формулировка задачи:
Не могу понять почему результат выдает по нолям? с целыми числами все в норме. lf везде поставил, в чем проблема?
#include <stdio.h>
#include <math.h>
double hypotenuse (double, double);
main()
{
double side1, side2;
scanf("%.1lf %.1lf", &side1,&side2);
printf("%.1lf\t%.1lf\t%.1lf\n", side1, side2, hypotenuse(side1,side2));
return 0;
}
double hypotenuse(double x, double y)
{
double c = sqrt(x*x + y*y);
return c;
}Решение задачи: «Ошибка в коде по нахождению гипотенузы»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
double hypotenuse (double, double);
int main()
{
double side1, side2;
scanf("%lf %lf", &side1,&side2);
printf("%.1f\t%.1f\t%.1f\n", side1, side2, hypotenuse(side1, side2));
return 0;
}
double hypotenuse(double x, double y)
{
double c = sqrt(x*x + y*y);
return c;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы для работы сstdio.h и math.h
- Объявляем функцию hypotenuse(double, double), которая будет вычислять гипотенузу
- В функции main() объявляем две переменные типа double side1 и side2 и инициализируем их значениями, введенными пользователем
- С помощью функции scanf() считываем два числа с консоли и сохраняем их в переменные side1 и side2
- Вызываем функцию hypotenuse(side1, side2) и выводим ее результат на экран с помощью функции printf()
- Возвращаем 0 из функции main(), чтобы указать на успешный конец работы программы
- В функции hypotenuse(double, double) вычисляем гипотенузу как квадратный корень из суммы квадратов двух считанных значений
- Возвращаем значение переменной c из функции hypotenuse()