Найти корень уравнения методом хорд - C (СИ)
Решение задачи: «Найти корень уравнения методом хорд»
textual
Листинг программы
#include <stdio.h>
#include <math.h>
int main() {
float a,b,e;
printf("\nVvedite predel a:\n");
scanf("%f",&a);
printf("\nVvedite predel b:\n");
scanf("%f",&b);
printf("\nVvedite epselent a:\n");
scanf("%f",&e);
while (fabs(b-a)>e) {
a = b-(b-a) * (2*b+log(b+1)+1)/( (2*b+log(b+1)+1)-(2*a+log(a+1)+1) );
b = a-(a-b) * (2*a+log(b+1)+1)/( (2*a+log(a+1)+1)-(2*b+log(b+1)+1) );
printf("x: %f\n", b);
}
printf("x: %f\n", b);
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Объявляем переменные a, b, e типа float
- Выводим сообщение и призыв к вводу первого корня
- Считываем значение переменной a с помощью функции scanf
- Выводим сообщение и призыв к вводу второго корня
- Считываем значение переменной b с помощью функции scanf
- Выводим сообщение и призыв к вводу третьего корня
- Считываем значение переменной e с помощью функции scanf
- Выполняем цикл while, пока разница между b и a больше e
- Внутри цикла обновляем значение a
- Вычисляем новое значение b
- Выводим новое значение b
- Выходим из цикла while
- Выводим окончательное значение b
- Возвращаем 0, чтобы указать, что программа успешно завершилась