М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
angelochec1999
angelochec1999
07.07.2021 08:19 •  Информатика

Методом половинного деления вычислить на эвм корень уравнения вида f (x) = 0, расположенный на интервале [a, b] с заданной погрешностью. определить число итераций, необходимое для нахождения корня. 3sin√x+0,35x-3,8=0 [2; 3] 10^(-3) нужно прям программу(

👇
Ответ:
1StarTrek1
1StarTrek1
07.07.2021
Function f(x: real): real;
begin
  f := 3 * sin(sqrt(x)) + 0.35 * x - 3.8
end;

var
  n: integer;
  a, b, c, fc, eps: real;

begin
  writeln('Введите границы интервала (a,b) и точность решения: ');
  readln(a, b, eps);
  n := 0;
  repeat
    c := (a + b) / 2;
    fc := f(c);
    if sign(fc) = sign(f(b)) then b := c
    else a := c;
    n := n + 1;
  until abs(a - b) <= eps;
  writeln('Найден корень уравнения х=', c, ' за ', n, ' итераций')
end.

Тестовое решение:

Введите границы интервала (a,b) и точность решения:
2 3 0.001
Найден корень уравнения х=2.2978515625 за 10 итераций
4,6(84 оценок)
Открыть все ответы
Ответ:
kulisenok
kulisenok
07.07.2021

// PascalABC.NET 3.6.3

uses School;

function Divizors(n: integer): List<integer>;

begin

 var L := new List<integer>;

 L.Add(1);

 L.Add(n);

 if n > 3 then

   begin

   var k := 2;

   while (k * k <= n) and (k < 46341) do

   begin

     if n mod k = 0 then

     begin

       var t := n div k;

       L.Add(k);

       if k < t then L.Add(t)

       else break

     end;  

     Inc(k)

   end;

   L.Sort;

 end;

 Result := L

end;

begin

 // 1

 if ReadInteger.IsPrime then Println('YES')

 else Println('NO');

 // 2

 ReadInteger.Factorize.First.Println;

 // 3

 var a := Divizors(ReadInteger);

 Print(a.Count, a.Sum)

end.

4,5(40 оценок)
Ответ:
аникдим
аникдим
07.07.2021

// PascalABC.NET 3.6.3

uses School;

function Divizors(n: integer): List<integer>;

begin

 var L := new List<integer>;

 L.Add(1);

 L.Add(n);

 if n > 3 then

   begin

   var k := 2;

   while (k * k <= n) and (k < 46341) do

   begin

     if n mod k = 0 then

     begin

       var t := n div k;

       L.Add(k);

       if k < t then L.Add(t)

       else break

     end;  

     Inc(k)

   end;

   L.Sort;

 end;

 Result := L

end;

begin

 // 1

 if ReadInteger.IsPrime then Println('YES')

 else Println('NO');

 // 2

 ReadInteger.Factorize.First.Println;

 // 3

 var a := Divizors(ReadInteger);

 Print(a.Count, a.Sum)

end.

4,4(91 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ