Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2009, 10:34   #1
Deis
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 37
Восклицание помогите решить матрицу в паскале

Дана действительная квадратичная матрица порядка N(N-нечетное), все элементы которой различны. Найти наибольший элемент среди стоящих на главной и побочной диагоналях и поменять его местами с эдементом, состоящим на пересечении этих диагоналей
Deis вне форума Ответить с цитированием
Старый 21.01.2009, 10:44   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Код:
uses crt;
const n=100;
var i,j,d,temp,maxi,maxj:integer;
    a:array[1..n,1..n] of integer;
    
begin
repeat
clrscr;
writeln('->');
readln(d);
until d mod 2=1;
for i:=1 to d do
begin
 for j:=1 to d do
  begin
   a[i,j]:=random(1000);
   write(a[i,j]:4);
  end;
  writeln;
end;
i:=1;j:=1;maxi:=1;maxj:=1;
while i<=d do
 begin
  if a[i,j]>a[maxi,maxj] then begin
                               maxi:=i;
                               maxj:=j;
                              end;
  inc(i);inc(j);
 end;
i:=d;j:=1;
while i>=1 do
 begin
   if a[i,j]>a[maxi,maxj] then begin
                               maxi:=i;
                               maxj:=j;
                              end;
  dec(i);inc(j);
 end;
 temp:=a[d div 2 +1,d div 2 +1];
 a[d div 2 +1,d div 2 +1]:=a[maxi,maxj];
 a[maxi,maxj]:=temp;
 writeln('=======================================');
 for i:=1 to d do
 begin
 for j:=1 to d do
   write(a[i,j]:4);
  writeln;
 end;
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 21.01.2009, 11:36   #3
Deis
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 37
По умолчанию

Прога не работает!
Deis вне форума Ответить с цитированием
Старый 21.01.2009, 11:54   #4
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Что не так?
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 21.01.2009, 12:08   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Все работает, просто вводить нужно нечетные числа. Введи 7 или 1
I'm learning to live...

Последний раз редактировалось Stilet; 21.01.2009 в 12:20.
Stilet вне форума Ответить с цитированием
Старый 21.01.2009, 12:09   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Похоже, я знаю, почему "Прога не работает". Видимо, не все знают про существование окна "Output" и о запуске из командной строки. Поэтому отсутствие readln'а они и принимают за неработоспособность программы.
Ну и, конечно, "проблема" может заключаться в вводимом числе, как и сказал Stilet
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 21.01.2009, 12:15   #7
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Если человек не может даже посмотреть что ему написали то тогда....

P.S. Размер матрицы должен быть нечетным, поэтому программа добивается от Вас нечетного числа
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 21.01.2009, 12:19   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Поэтому отсутствие readln'а они и принимают за неработоспособность программы.
Тоже верно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.01.2009, 12:26   #9
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Цитата:
Сообщение от Sazary Посмотреть сообщение
Похоже, я знаю, почему "Прога не работает". Видимо, не все знают про существование окна "Output" и о запуске из командной строки. Поэтому отсутствие readln'а они и принимают за неработоспособность программы.
Ну и, конечно, "проблема" может заключаться в вводимом числе, как и сказал Stilet
Ага, пусть ТЗ пишут
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 21.01.2009, 12:37   #10
Deis
Пользователь
 
Регистрация: 15.01.2009
Сообщений: 37
По умолчанию

Он на переменную n орёт. После 2го бегина орёт на переменную i
Deis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
привет всем! помогите пожалуйста решить две задачи на паскале. я в паскале полный ноль. Пищенок Саша Паскаль, Turbo Pascal, PascalABC.NET 5 20.01.2009 13:46
Помогите Помогите Пожалуйста Решить Одну Задачку в Паскале!!! VisTBacK Помощь студентам 6 19.09.2008 13:44
Помогите решить матрицу по матем Rymata Помощь студентам 2 12.06.2008 16:52
Помогите решить на Паскале 010 Паскаль, Turbo Pascal, PascalABC.NET 8 13.04.2008 15:06