pollllyyy
12.02.2022 13:09

Решить методом гаусса с выбором главного элемента. я вроде все сделала, но программа выдает ошибку в 17 строке:
1. const n=4;
2. a: array[1..n,1..n] of real=((1, -0.1, -0.2, -0.3),
3. (0.1, 1, -0.1, 0.2),
4. (0.1, 0.15, 1, -0.05),
5. (0.15, 0.1, 0.005, 1));
6. b: array[1..n] of real= (0, 0.5, -0.5, 0.75);
7. var z,m: real; i,j,k: integer; x,y: array[1..n] of real;
8. begin for i: =1 to n-1 do
9. begin {прямой ход метода гаусса}
10. m: =a[i,i]; k: =i; {ищем главный элемент}
11. for j: =i+1 to n do
12. if a[j,i]> m then begin m: =a[j,i]; k: =j end;
13. for j: =i to n do
14. begin {переставляем уравнения}
15. z: =a[i,j]; a[i,j]: =a[k,j]; a[k,j]: =z
16. end;
17. z: =b[i]; b[i]: =b[k]; b[k]: =z;
18. for j: =i+1 to n do
19. begin {исключаем i-тую переменную}
20. z: =a[j,i];
21. for k: =i to n do a[j,k]: =a[i,i]*a[j,k]-z*a[i,k];
22. b[j]: =a[i,i]*b[j]-z*b[i]
23. end
24. end;
25. for i: =n downto 1 do
26. begin z: =0;
27. for j: = n downto i+1 do z: =z+a[i,j]*x[j];
28. x[i]: =(b[i]-z)/a[i,i]
29. end;
30. for i: =1 to n do write(x[i]: 6: 4,' '); readln end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
alexstasy
24.09.2020 12:04

В паскале

1) program one;

uses crt;
var a:array [1..10] of integer;
x: real; i:integer;
begin
clrscr;
x:=0;
for i:=1 to 10 do
readln(A[i]);
for i:=1 to 10 do
begin
if (A[i]<0) or (A[i] mod 2=0) then
x:=x+Sqr(A[i]);
end;
writeln;
write(x);
end.

2)

program two;
uses crt;
var a:array [1..52] of integer;
x,i: integer;
begin
clrscr;
x:=34;
for i:=1 to 52 do
begin
A[i]:=1+x;
x:=x+1;
if (A[i] mod 7 =1)or (A[i] mod 7 =2) or (A[i] mod 7 =5)
then writeln(A[i]);
end;
end.

3)

Program three;
Uses crt;
var n,x:integer; a,y:real;
begin
Clrscr;
readln(a,n);
for x:=1 to n do
y:=x*a;
writeln(y);
end.

4)

Program four;
Uses crt;
var A:array [1..100] of integer;
n,i,max,x:integer;
begin
clrscr;
writeln('vvedite kol-vo elementov');
readln(n);
writeln('Vvedite elementy');
for i:=1 to n do
read(A[i]);
for i:=1 to n do
begin
max:=A[1];
if (A[i] <0) and (A[i]>A[x])
then max:=A[i];
x:=i;
end;
writeln ('Naib',max,'nomer',x);
end.

5)

Program abc;
Uses crt;
var S,a,b:integer;
begin
clrscr;
S:=0;
a:=1;
b:=3;
while a<98 do
begin
while b<100 do
begin
S:=S+b-a;
a:=a+4;
b:=b+4;
end;
end;
writeln(s);
end.

0,0(0 оценок)
Ответ:
irina20042005
24.09.2020 12:04

В паскале

1) program one;

uses crt;
var a:array [1..10] of integer;
x: real; i:integer;
begin
clrscr;
x:=0;
for i:=1 to 10 do
readln(A[i]);
for i:=1 to 10 do
begin
if (A[i]<0) or (A[i] mod 2=0) then
x:=x+Sqr(A[i]);
end;
writeln;
write(x);
end.

2)

program two;
uses crt;
var a:array [1..52] of integer;
x,i: integer;
begin
clrscr;
x:=34;
for i:=1 to 52 do
begin
A[i]:=1+x;
x:=x+1;
if (A[i] mod 7 =1)or (A[i] mod 7 =2) or (A[i] mod 7 =5)
then writeln(A[i]);
end;
end.

3)

Program three;
Uses crt;
var n,x:integer; a,y:real;
begin
Clrscr;
readln(a,n);
for x:=1 to n do
y:=x*a;
writeln(y);
end.

4)

Program four;
Uses crt;
var A:array [1..100] of integer;
n,i,max,x:integer;
begin
clrscr;
writeln('vvedite kol-vo elementov');
readln(n);
writeln('Vvedite elementy');
for i:=1 to n do
read(A[i]);
for i:=1 to n do
begin
max:=A[1];
if (A[i] <0) and (A[i]>A[x])
then max:=A[i];
x:=i;
end;
writeln ('Naib',max,'nomer',x);
end.

5)

Program abc;
Uses crt;
var S,a,b:integer;
begin
clrscr;
S:=0;
a:=1;
b:=3;
while a<98 do
begin
while b<100 do
begin
S:=S+b-a;
a:=a+4;
b:=b+4;
end;
end;
writeln(s);
end.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота