На входе вводим с клавиатуры размерность массива: n строк и m столбцов.
Первые два вложенных цикла - это ввод двумерного массива с датчика случайных чисел randomize.
Далее во вложенных циклах ищем максимальную сумму элементов по строкам и запоминаем номер строки в переменную k.
Строку с выводом s и k писать не нужно.
Далее один цикл обмена к-той строки и последней.
Последние вложенные циклы выводят изменённый массив.
Прежде чем выводить массив нужно поставить поверку:
If k=m then write(‘Менять строки местами не нужно’) else begin и последние два вложенных цикла.
begin
var f:real->real:=x-> 0.1*(sin(x)/cos(x))*(0.1*x+0.0025*x*x);
var (a,b):=ReadReal2('Введите границы интервала:');
var (fa,fb):=(f(a),f(b));
var eps:=ReadReal('Введите требуемую точность:');
var n:=1;
var y:real;
Writeln(' n',12*' ','x',14*' ','y');
repeat
var x:=(a+b)/2;
y:=f(x);
Writeln(n:3,x:15:6,y:15:6);
if Sign(fa)=Sign(y) then a:=x else b:=x;
n+=1
until Abs(y)<eps;
end.
Пример:
Введите границы интервала: -1 0
Введите требуемую точность: 0.00001
n x y
1 -0.500000 0.002697
2 -0.250000 0.000634
3 -0.125000 0.000157
4 -0.062500 0.000039
5 -0.031250 0.000010
На входе вводим с клавиатуры размерность массива: n строк и m столбцов.
Первые два вложенных цикла - это ввод двумерного массива с датчика случайных чисел randomize.
Далее во вложенных циклах ищем максимальную сумму элементов по строкам и запоминаем номер строки в переменную k.
Строку с выводом s и k писать не нужно.
Далее один цикл обмена к-той строки и последней.
Последние вложенные циклы выводят изменённый массив.
Прежде чем выводить массив нужно поставить поверку:
If k=m then write(‘Менять строки местами не нужно’) else begin и последние два вложенных цикла.
begin
var f:real->real:=x-> 0.1*(sin(x)/cos(x))*(0.1*x+0.0025*x*x);
var (a,b):=ReadReal2('Введите границы интервала:');
var (fa,fb):=(f(a),f(b));
var eps:=ReadReal('Введите требуемую точность:');
var n:=1;
var y:real;
Writeln(' n',12*' ','x',14*' ','y');
repeat
var x:=(a+b)/2;
y:=f(x);
Writeln(n:3,x:15:6,y:15:6);
if Sign(fa)=Sign(y) then a:=x else b:=x;
n+=1
until Abs(y)<eps;
end.
Пример:
Введите границы интервала: -1 0
Введите требуемую точность: 0.00001
n x y
1 -0.500000 0.002697
2 -0.250000 0.000634
3 -0.125000 0.000157
4 -0.062500 0.000039
5 -0.031250 0.000010