Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: 6310
Последний выпуск: 19.06.2015

помогите найти ошибки в программе

84K
26 декабря 2012 года
akk2013
7 / / 17.12.2012
1.Разработать в среде Turbo Pascal программу решения взаимосвязанных задач:
a. расчет элементов квадратной матрицы A = (aij), i,j – 1,2,…,n по заданной формуле: a[i,j]=(i-j)/(i*j)*(i*j)*(i*j)
b. упорядочить элементы первых трех столбцов матрицы А по убыванию абсолютных значений;
Program zadaha;
Const r=10;
Var a: array[1..r,1..r] of real;
i,j,n,k: integer; z:real;
begin
writeln('vvedi n');
readln(n);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=(i-j)/(i*j)*(i*j)*(i*j);
writeln('matriza A:');
writeln;
for i:=1 to n do
begin
for j:=1 to n do
writeln(a[i,j]:6:2,' ');
writeln;
end;
for i:=1 to n do
begin
for j:=1 to 3 do
begin
for k:=1 to n-1 do
if a[k,j]>a[k+1,j] then
begin
z:=a[k,j];
a[i,k]:=a[k+1,j];
a[k+1,j]:=z;
end;
end;
end;
writeln('otsortirovannay matriza A:');
writeln;
for i:=1 to n do
begin
for j:=1 to n do
writeln(a[i,j]:6:2,' ');
writeln;
end;
end.
84K
27 декабря 2012 года
akk2013
7 / / 17.12.2012
Const r=10;
Var a: array[1..r,1..r] of real;
i,j,n,k: integer; b:real;
begin
writeln('vvedi n');
readln(n);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=(i-j)/(i*j)*(i*j)*(i*j);
writeln('matriza A:');
writeln;
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:6:2,' ');
writeln;
end;
for j:=1 to 3 do

for i:=1 to n-1 do
for k:=i+1 to n do

if a[i,j]<a[k,j] then
begin
b:=a[i,j];
a[i,j]:=a[k,j];
a[k,j]:=b;

end;
writeln('otsortirovannay matriza A:');
writeln;
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j]:6:2,' ');
writeln;
end;
readln;
end.
84K
26 декабря 2012 года
akk2013
7 / / 17.12.2012
я тут кажется с сортировкой намутил что то не правильно сортирует((
20K
27 декабря 2012 года
ellor!
198 / / 24.05.2012
Во-первых, при сравнении надо брать значения по модулю:
 
Код:
if abs(a[k,j]) > abs(a[k+1,j]) then
Во-вторых, в перестановке элементов вместо a[i,k]:
 
Код:
a[k,j] := a[k+1,j];
84K
27 декабря 2012 года
akk2013
7 / / 17.12.2012
Цитата: ellor!
Во-первых, при сравнении надо брать значения по модулю:
 
Код:
if abs(a[k,j]) > abs(a[k+1,j]) then
Во-вторых, в перестановке элементов вместо a[i,k]:
 
Код:
a[k,j] := a[k+1,j];

спасибо но я уже сам во всем разобрался))

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог