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

Ваш аккаунт

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

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

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

помогите с задачей на паскале

12K
22 ноября 2005 года
ronique
6 / / 22.11.2005
Вот такая задча:
С файла Ф1 прочитать матрицу А(10,10).найти самый большой елемент каждой строки и переместить его на главную диагональ,а диагональный елемент на место самого большого.
вот все что смог сделать,но правильно не работает

program test (INPUT, OUTPUT, F1, F2);
const
n=10; m=10;
type
f = file of integer;
var
a:array[1..n,1..m] of integer;
F1, F2 : f;
max:integer;
j,i:integer;
Begin
assign(f1,'c:\pas.dat');
assign(f2,'c:\pas2.dat');
reset(f1);
for i:=1 to n do
for j:=1 to m do
begin
read(f1,a[i,j]);
end;
for i:=1 to n do
begin
max:=a[i,i];
for j:=1 to m do
begin
if max<a[i,j] then
begin
max:=a[i,j];
a[i,j]:=a[i,i];
a[i,i]:=max;
end;
end;
end;
rewrite(f2);
for i:=1 to n do
for j:=1 to m do
begin
write(f2,a[i,j]);
end;
for i:=1 to n do
for j:=1 to m do
begin
write(a[i,j]);
end;
close(f1);
close(f2);
end.


помогите,пожалуйста.я просто в шоке.
2.2K
22 ноября 2005 года
123tk
57 / / 28.06.2003
Код:
program test (INPUT, OUTPUT, F1, F2);
const
  n=10; m=10;
type
   f = file of integer;
var
  a:array[1..n,1..m] of integer;
  F1, F2 : f;
  max:integer;
  j,i,[color=red]jpos[/color]:integer;
Begin
 assign(f1,'c:\pas.dat');
 assign(f2,'c:\pas2.dat');
 reset(f1);
 for i:=1 to n do
   for j:=1 to m do
   begin
     read(f1,a[i,j]);
   end;
 for i:=1 to n do
 begin
   max:=a[i,i];
   [color=red]jpos:=i;[/color]
   for j:=1 to m do
   begin
     if max<a[i,j] then
     begin
       [color=red]max:=a[i,j];[/color]
       [color=red]jpos:=j;[/color]
     end;
   end;
   [color=red]if jpos<>i then[/color]
   [color=red]begin[/color]
     [color=red]a[i,jpos]:=a[i,i];[/color]
     [color=red]a[i,i]:=max;[/color]
   [color=red]end;[/color]
 end;
 rewrite(f2);
 for i:=1 to n do
   for j:=1 to m do
   begin
   write(f2,a[i,j]);
  end;
    for i:=1 to n do
   for j:=1 to m do
   begin
   write(a[i,j]);
   end;
   close(f1);
   close(f2);
end.

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

Ваш ответ

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