Предмет: Информатика, автор: Aillianna

На языке программирования С !
Задача 2
При выполнении этой задачи, необходимо сделать алгоритмы и программы с использованием рекурсии. Необходимо принимать во внимание граничные условия выхода из рекурсии.

Путем деления сегмента в пополам найти с точностью 0,0001 корень уравнения

Приложения:

Aillianna: Есть еще задания, если хорошо разбираетесь
Качественный ответ обязательно отмечу лучшим. Могу дублировать задания если нужно больше баллов

Ответы

Автор ответа: petyaGavrikov
1

#include <math.h>

#include <stdio.h>

const float eps=0.0001;

float F(double x){

return cos(2.0/x)-2*sin(1.0/x)+1.0/x;

}

float Func(double a, double b)

{

float x=(a+b)/2;

float y=F(x);

if (fabs(y)<eps) return x;

else if (F(a)*y<0) Func(a,x);

else Func(x,b);

}

int main()

{

   float a, b;

   printf("a = ");

scanf("%f",&a);

   printf("b = ");

scanf("%f",&b);

if (F(a)*F(b)<0) printf("x = %f\n",Func(a,b));

else printf("Нет сходимости\n");

   return 0;

}

Пример - в прилагаемом файле.

PS. Без анализа деления на 0.

Приложения:

Aillianna: ошибка у вас в рекурсии, return не хватает
Похожие вопросы
Предмет: Алгебра, автор: isususususia
Предмет: Английский язык, автор: kaliyevadilnaz
Предмет: Алгебра, автор: pro100popsik
Предмет: Математика, автор: киса523