Посчитать количество всех отрицательных значений функции - C (СИ)
Формулировка задачи:
Добрый вечер.
Требуется посчитать количество всех отрицательных значений функции x*exp(x)+2*sin(x)-sqrt(abs(x*x*x-x*x))
Для функции x*exp(x)+2*sin(x)-sqrt(abs(x*x*x-x*x)) составить программу построения таблицы значений функции при изменении аргумента от A=-5 до B=5 с шагом H=0,1. Значения A,B и H объявить как константы в директивах #define. В каждой строке выводить значение аргумента и соответствующее ему значение функции в форматированном виде с 4 знаками после запятой. В конце таблицы нужно напечатать отдельной строкой значение, которое требуется вычислить в соответствии с индивидуальным вариантом.
Спасибо.
Решение задачи: «Посчитать количество всех отрицательных значений функции»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <stdlib.h> #define A -1 #define B 5 #define H 0.1f int main() { float x, res; unsigned cnt = 0; for (x = A; x <= B; x += H) { res = x * exp(x) + 2 * sin(x) - sqrt(abs(x * x * x - x * x)); cnt += (res < 0); printf("%.1f\t%.4f\n", x, res); } printf("cnt = %u\n", cnt); return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек: iostream, math.h, stdlib.h
- Объявление констант: A, B, H
- Объявление переменных: x, res, cnt
- В цикле for происходит перебор значений x от A до B с шагом H
- Для каждого значения x вычисляется значение res по формуле x exp(x) + 2 sin(x) - sqrt(abs(x x x - x * x))
- Результат сравнивается с нулем, и если он отрицательный, то переменная cnt увеличивается на единицу
- Выводится текущее значение x и соответствующее ему значение res
- После завершения цикла выводится значение переменной cnt
- Возвращается 0, что означает успешное завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д