#include "pch.h"
#include
#include
using namespace std;
double f(double x)
{
double m = -7 * pow(x, 3) - 5.8*x - 4;
return m;
}
int main()
{
double a = -1; double b = 2;
flag1:
double c = 0.5*(a + b);
if (f(c) == 0)
cout << "The result is " << c << endl;
if (f(c)*f(a) < 0)
{
b = c;
goto flag1;
}
if (f(c)*f(b) < 0)
{
a = c;
goto flag1;
}
if (c >= a && c <= b)
cout << "The solution belongs to the interval" << endl;
else
cout << "The solution doesn't belongs to the interval";
return 0;
}
Тут с флагами. Если не нравятся флаги - перестройте под себя.
function f(x: real): real;
begin
f:=x*x*x - 4.2*x - 4;
end;
{ основная программа }
var a,b,c,eps: real;
k: integer;
{ a - начало интервала, b - конец }
begin
write('a = '); readln(a);
write('b = '); readln(b);
if f(a)*f(b)<0 then
begin
write('точность вычислений eps: '); readln(eps);
k:=1;
while abs(a-b)>eps do
begin
writeln('итерация ',k,' a =',a:12:8, ' b =',b:12:8);
c:=(a+b)/2;
if f(c)<>0 then
begin
if f(c)*f(b)<0 then a:=c
else b:=c
end;
k:=k+1;
end;
writeln('корень = ',a:12:8);
end
else
writeln('на интервале [',a,',',b,']',' корней нет');
end.
a = -3
b = 4
точность вычислений eps: 0.0001
итерация 1 a = -3.00000000 b = 4.00000000
итерация 2 a = 0.50000000 b = 4.00000000
итерация 3 a = 2.25000000 b = 4.00000000
итерация 4 a = 2.25000000 b = 3.12500000
итерация 5 a = 2.25000000 b = 2.68750000
итерация 6 a = 2.25000000 b = 2.46875000
итерация 7 a = 2.35937500 b = 2.46875000
итерация 8 a = 2.41406250 b = 2.46875000
итерация 9 a = 2.41406250 b = 2.44140625
итерация 10 a = 2.41406250 b = 2.42773438
итерация 11 a = 2.41406250 b = 2.42089844
итерация 12 a = 2.41748047 b = 2.42089844
итерация 13 a = 2.41918945 b = 2.42089844
итерация 14 a = 2.41918945 b = 2.42004395
итерация 15 a = 2.41918945 b = 2.41961670
итерация 16 a = 2.41918945 b = 2.41940308
итерация 17 a = 2.41929626 b = 2.41940308
корень = 2.41934967
Поделитесь своими знаниями, ответьте на вопрос:
ХЕЛП ЯЗЫК ПИТОН Используя полное ветвление, у следующий фрагмент программы: if a > b: c = 1 if a > b: d = 2 if a <= b: c = 3 if a <= b: d = 4 3. Имеются данные о количестве полных лет трёх призёров спартакиады. Напишите программу, выбирающую и выводящую возраст самого младшего призёра.
ages = list(input("Введите возраст " + str(i) + " призёра: ") for i in range(1,4))
print("Самому младшему: " + min(ages))