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

решить уравнение: (2 ^ 2x+3)* 5 ^x + 2*4^x * 5^x+1 = 0,9

👇
Ответ:
HollyTribe
HollyTribe
21.04.2022
Метод Ньютона (метод Ньютона-Рафсона, метод касательных) требует для нахождения корня нелинейного уравнения выполнения достаточно большого количества условий. В качестве компенсации он (в общем случае) сходится быстрее любого другого численного метода нахождения корня уравнения F(x)=0.
Для функции F(x) должен быть определен интервал изоляции корня [a;b], такой что на нем:
а) F(a) и F(b) имеют разные знаки;
б) F(x) определена и непрерывна;
в) F'(x) ≠ 0
г) F"(x) определена всюду и имеет постоянный знак

1. Перепишем уравнение в более привычном виде и сделаем преобразования, необходимые для нахождения интервала изоляции корня [a;b], а также проверки выполнения на нем условий а) - г)

\displaystyle F(x)=(2^{2x}+3)5^x+2\cdot4^x\cdot5^{x+1}-0.9; \\ 
F(x)=11\cdot20^x+3\cdot5^x-0.9; \\ 
F'(x)=11\cdot20^x\cdot\ln{20}+3\cdot5^x\cdot\ln5; \\
F''(x)=11\cdot20^x\cdot(\ln{20})^2+3\cdot5^x\cdot(\ln5)^2

Степенная функция при натуральном основании и вещественном показателе степени всюду положительна, является непрерывной и монотонно возрастающей. Комбинация показательных функций будет также обладать этими свойствами.
При х=0 (считать удобно) F(x) = 11+3-0.9 = 13.1
При х=-1 (тоже удобно) F(x) = 11/20 +3/5 - 9/10 = 1/4 (почти ноль!)
При х=-2 F(x) = 11/400 + 3/25 - 9/10 = -301/400 ≈ - 0.7525
Условие а) выполнено, интервал изоляции корня найден, a=-2, b=-1.
Прочие условия на этом интервале также выполняется в соответствии с написанным выше.

2. В качестве начального приближения выберем точку, находящуюся в середине интервала изоляции. х₀ = -1.5

3. Зададимся максимальной погрешностью решения, равной 10⁻⁶

4. Определим условие завершения поиска корня.
В соответствии с известной формулой (например, см. стр. 41 в книге  Гловацкая А.П. Методы и алгоритмы вычислительной математики. Учеб. пособие для вузов. - М.: Радио и связь, 1999), длина интервала изоляции корня связана с погрешностью следующим образом:
\displaystyle |x_{n+1}-x_n|\leq\sqrt{ \frac{2m\epsilon}{M}}, \\
\displaystyle m=|min(F'[a,b]|, \quad M=|max(F''[a,b]|
F'(a) = 11/400*ln(20)+3/25*ln(5) ≈ 0.275515187014827;
F"(b) = 11/20*ln(20)²+3/5*ln(5)² ≈ 6.49010075653527
Величина интервала для х при ε=10⁻⁶ будет составлять приблизительно 0.0002914.

5. Составим программу на языке программирования PascalABC.NET 3.3. и найдем корень уравнения.

// PascalABC.NET 3.3, сборка 1579 от 18.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var f:real->real:=x->11*Power(20,x)+3*Power(5,x)-0.9;
  var f1:real->real:=x->11*Power(20,x)*Ln(20)+3*Power(5,x)*Ln(5);
  var f2:real->real:=x->11*Power(20,x)*Sqr(Ln(20))+3*Power(5,x)*Sqr(Ln(5));
  var (a,b,eps):=(-2.0,-1.0,1e-6);
  var d:=Sqrt(2*f1(a)*eps/f2(b));
  var xn1:=(a+b)/2;
  var xn:real;
  repeat
    (xn,xn1):=(xn1,xn-f(xn)/f1(xn));
  until Abs(xn-xn1)<=d;
  Writeln(xn1:0:6);
end.

Результат:
-1.109118
4,7(28 оценок)
Открыть все ответы
Ответ:
Ludmila28041985
Ludmila28041985
21.04.2022

var
t,o:array [1..30] of integer;
d,s,i:integer;
begin
randomize;
writeln ('Kol-vo osadkov: ');
for i:=1 to 30 do begin
o[i]:=random(20);
write (o[i],' ,');
if i=15 then writeln;
end;
writeln;
writeln ('Temperatura vozduxa: ');
for i:=1 to 30 do begin
t[i]:=random(26)-15;
if (t[i]>0) and (o[i]<>0) then d:=d+o[i] else
if (t[i]<0) and (o[i]<>0) then s:=s+o[i];
write (t[i],',');
if i=15 then writeln;
end;
writeln;
writeln ('Kol-vo osadkov v vide snega: ',s);
writeln ('Kol-vo osadkov v vide dozhdya: ',d);
readln;
end.

4,7(48 оценок)
Ответ:

Задание 3 (двухмерный массив)

var

a:array [1..10,1..7] of integer;

k,i,j:integer;

begin

randomize;

for i:=1 to 10 do begin

for j:=1 to 7 do begin

a[i,j]:=random(9)+1;

write (a[i,j]:4);

if a[i,j] mod 2 <> 0 then k:=k+1;

end;

writeln;

end;

writeln ('Количество нечетных элементов массива = ',k);

readln;

end.

Задание 2 (двухмерный массив)

uses crt;
const
a:array [1..5,1..5] of integer = ((100,101,102,103,104),
                                                     (200,201,202,203,204),
                                                     (300,301,302,303,304),
                                                     (400,401,402,403,403),
                                                     (500,501,502,503,504));
var
i,j:integer;
begin
clrscr;
for i:=1 to 5 do begin
for j:=1 to 5 do
if j mod 2 = 0 then begin
textcolor (12);
write (a[i,j]:4);
textcolor (7);
end else begin
textcolor (9);
write (a[i,j]:4);
textcolor (7);
end;
writeln;
end;
readln;
end.

Задание 1 (одномерный массив) 

uses crt;
var
a:array [1..7] of integer;
i,sum:integer;
begin
clrscr;
for i:=1 to 7 do begin
write ('A[',i,'] = ');readln(a[i]);
if a[i]>0 then sum:=sum+a[i];
end;
for i:=1 to 7 do
if a[i]>0 then begin
textcolor (red);
write (a[i]:4);
end else begin
textcolor (blue);
write (a[i]:4);
end;
writeln;
textcolor (darkgray);
writeln ('Сумма положительных элементов = ',sum);
readln;
end.

Задание 4 (одномерный массив)

uses crt;
var
a:array [1..12] of integer;
i,buf,min,max:integer;
begin
clrscr;
randomize;
a[1]:=random(14)+1;
min:=1;
max:=2;
writeln ('Исходный массив: ');
write (a[1]:4);
for i:=2 to 12 do begin
a[i]:=random(14)+1;
write (a[i]:4);
if a[i]>a[max] then max:=i else
if a[i]<a[min] then min:=i;
end;
writeln;
{смена 1-ого и последнего эл}
buf:=a[1];
a[1]:=a[12];
a[12]:=buf;
{смена 2-ого и мин эл}
buf:=a[2];
a[2]:=a[min];
a[min]:=buf;
{смена 1-ого и макс эл}
buf:=a[1];
a[1]:=a[max];
a[max]:=buf;
writeln ('Результирующий массив:: ');
for i:=1 to 12 do write (a[i]:4);
writeln;
readln;
end.

Задание 3 (одномерный массив)

var
a,b:array [1..10] of integer;
i,j:integer;
s1,s2:real;
begin
randomize;
s1:=0;
s2:=0;
writeln;
for i:=1 to 10 do begin
a[i]:=random(11)-5;
b[i]:=random(19)-9;
write (a[i]:4);
s1:=s1+a[i];
s2:=s2+b[i];
end;
writeln;
for i:=1 to 10 do write (b[i]:4);
writeln;
s1:=s1/10;
s2:=s2/10;
if s1>s2 then writeln ('S1 > S2') else
if s1<s2 then write ('S1 < S2') else writeln ('S1 = S2');
readln;
end.

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