Численный метод - printf выводит неправильный результат - C (СИ)
Формулировка задачи:
У меня есть вопросы к знающим людям, но только по
Турбо Си
, проблема в том, что printf("\n%f", a); выводит неправильный результат. После ввода значения S. находится а, сама ошибка в функции F(x) или pow(x,y) не работает с float и значениями со знаком.??Помогите !!!!! )
#include<stdio.h> #include<math.h> float f(float x) { float aa; aa=pow(x,3) - 2,52 * pow(x,2) - 27,342 * x + 25,952; return aa; } void main() { float s, a; scanf("%f", &s); a=f(s); printf("\n%f", a); getch(); return 0; }
Решение задачи: «Численный метод - printf выводит неправильный результат»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <conio.h> double f(double x) { double aa; aa=pow(x,3) - 2,52 * pow(x,2) - 27,342 * x + 25,952; return aa; } int main() { double s, a; scanf("%f", &s); a=f(s); printf("%f", a); getch(); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек:
для работы с функцией вывода, для работы с математическими функциями, для работы с функцией задержки. - Определение функции f(double x), которая принимает аргумент типа double и возвращает значение типа double.
- Внутри функции объявлена переменная типа double с именем aa.
- Значение переменной aa вычисляется как результат возведения в степень x кубического уравнения 3,252 pow(x,2) - 27,342 x + 25,952.
- Функция возвращает значение переменной aa.
- В функции main() объявлены две переменные типа double с именами s и a.
- С помощью функции scanf() в переменную s считывается значение с клавиатуры.
- Значение переменной a вычисляется как результат вызова функции f(s).
- С помощью функции printf() выводится значение переменной a.
- Вызов функции getch() для приостановки выполнения программы до нажатия клавиши.
- Возвращение значения 0, означающее успешный конец работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д