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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2008, 21:49   #1
Enchantner
Новичок
Джуниор
 
Регистрация: 21.04.2008
Сообщений: 1
Восклицание двухмерный массив

1Задать матрицу из M строк и N столбцов, лбым удобным способом.
2 В заданной матрице необходимо найти максимальный элемент на главной диагонали матрицы и присвоить нулевые значения другим элементам строки и столбца, на пересечении которых он стоит.
Enchantner вне форума Ответить с цитированием
Старый 22.04.2008, 16:37   #2
Makarov
Форумчанин
 
Аватар для Makarov
 
Регистрация: 03.01.2008
Сообщений: 102
По умолчанию

Зайдите в поиск и наберите "двумерный массив" или "матрицы". Там полно подобных примеров. Задачи самые простые.
Теория без практики мертва и бесплодна, практика без теории невозможна и пагубна.
Makarov вне форума Ответить с цитированием
Старый 22.04.2008, 19:30   #3
WOLFak
Форумчанин
 
Аватар для WOLFak
 
Регистрация: 30.12.2007
Сообщений: 180
По умолчанию

Код:
var
 a:array[1..100,1..100]of longint;
 n,i,j,nom1,max:longint;
begin
 read(n); {ввод массива как захочется}
 {n:=10;   
 randomize;
 for i:=1 to n do
  for j:=1 to n do
   a[i,j]:=random(9999);}
   for i:=1 to n do
    for j:=1 to n do
     read(a[i,j]);
    max:=-maxlongint;
    for i:=1 to n do
     if max<a[i,i] then
      begin
       max:=a[i,i];
       nom1:=i;
      end;
     for i:=1 to n do
     if nom1<>i then
      begin
       a[nom1,i]:=0;
       a[i,nom1]:=0;
      end;
      for i:=1 to n do
       begin
        for j:=1 to n do
         write(a[i,j],' ');
         writeln;
       end;
end.
^_^
WOLFak вне форума Ответить с цитированием
Старый 22.04.2008, 20:47   #4
МаксимNEWProgramm
Пользователь
 
Аватар для МаксимNEWProgramm
 
Регистрация: 04.04.2008
Сообщений: 57
По умолчанию

можно чуть по проще
Код:
var a:array[1..100,1..100]of byte;poz,i,j,n,m,t:longint;
begin read(n,m);
for i:=1 to n do
for j:=1 to m do read(a[i,j]);
t:=1;poz:=1;
for i:=1 to n do
if a[i,i]>t then begin t:=a[i,i];poz:=i;end;
for i:=1 to n do begin
    if a[i,poz]=0 then a[i,poz]:=0;
    if a[poz,i]=0 then a[poz,i]:=0;
end;
end.
Программированине-это не очередная пара, а искуство показать себя!!!
МаксимNEWProgramm вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двухмерный массив xtraSHAD0W Паскаль, Turbo Pascal, PascalABC.NET 2 22.04.2008 18:17
Двухмерный массив (кинозал) fudzy79 Помощь студентам 3 10.04.2008 00:07
Двухмерный массив, 2 задачи Juhn Паскаль, Turbo Pascal, PascalABC.NET 7 10.02.2008 18:55
Двухмерный массив Atheist Общие вопросы C/C++ 4 22.11.2007 14:05