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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2011, 17:30   #1
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
Злость Дан двумерный массив размером 5 х 6, заполненный случайным образом

Дан двумерный массив размером 5 х 6, заполненный случайным образом.

- Заменить максимальный элемент каждой строки на противоположный;
- Вставить после столбцов с максимальными элементами столбец и нулей;
- Удалить среднюю строку;
- Поменять местами средние столбцы

______________________________

- Вставить после столбцов с максимальными элементами столбец и нулей;
- Удалить среднюю строку

Это я сделал)

Код:
const
  n=5;
  m=6;
var
  a,b,c,d:integer;
  z:array[1..n,1..(m+1)]of integer;
begin
  {создаем матрицу}
  c:=1;
  d:=1;
  randomize;
  for a:=1 to n do
    begin
      for b:=1 to m do
        begin
          {создаем и выводим}
          z[a,b]:=random(50);
          write(z[a,b]:4);
          {ищем максимальный элемент}
          if z[a,b]>z[c,d] then
            begin
              c:=a;
              d:=b;
            end;
        end;
      writeln;
    end;
  {выводим результат поиска}
  writeln(chr(13),chr(10),'I:',chr(13),chr(10),'maximum z[',c,',',d,']:=',z[c,d],chr(13),chr(10));
  {подстановка столбца}
  for a:=1 to n do
    begin
      for b:=m+1 downto d+1 do
        z[a,b]:=z[a,b-1];
      z[a,d+1]:=0;
    end;
  {вывод результата}
  for a:=1 to n do
    begin
      for b:=1 to m+1 do
        write(z[a,b]:4);
      writeln;
    end;
  readln;
  writeln(chr(13),chr(10),'II:',chr(13),chr(10));
  {удаление строки}
  for a:=((n div 2)+(n mod 2)) to n-1 do
    for b:=1 to m do
      z[a,b]:=z[a+1,b];
  {вывод результата}
  for a:=1 to n-1 do
    begin
      for b:=1 to m do
        write(z[a,b]:4);
      writeln;
    end;
  readln;
  end.
Осталось :

- Заменить максимальный элемент каждой строки на противоположный;
- Поменять местами средние столбцы


Но мне нужно написать ее одним кодом. помогите пожалуйста буду благодарен, хоть подскажите!
dark999 вне форума Ответить с цитированием
Старый 19.04.2011, 17:31   #2
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

Код:
writeln('Обмен средних столбцoв:');
for i:=1 to m do
 begin
  for j:=1 to n do
  write(a[i,j]:3);
  writeln;
 end;
readln

Обмен средних столбцoв вроде бы так выходит)
dark999 вне форума Ответить с цитированием
Старый 19.04.2011, 18:00   #3
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
Обмен средних столбцoв вроде бы так выходит)
а где обмен то7
Цитата:
Заменить максимальный элемент каждой строки на противоположный
Код:
for a:=1 to n do
begin
i:=1;
for b:=1 to m do
if z[a,b]>z[a,i] then i:=b;
z[a,i]:=- z[a,i];end;
for a:=1 to n do
begin
for b:=1 to m do
write(z[a,b]:4);
writeln;
end;
Цитата:
Башкирия
откуда именно7
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 19.04.2011 в 19:33.
Mad_Cat вне форума Ответить с цитированием
Старый 19.04.2011, 18:24   #4
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

А можешь все одним кодом записать?(так сказать готовым) Буду очень благодарен) Я с Тмз
dark999 вне форума Ответить с цитированием
Старый 19.04.2011, 18:50   #5
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
{выводим результат поиска}
1)после этого вставь мой код
2)я это уже сделал
3)вставь продолжение своей проги
p.s Белебей
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 19.04.2011 в 19:33.
Mad_Cat вне форума Ответить с цитированием
Старый 19.04.2011, 18:55   #6
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

А обмен средних столбцов?
dark999 вне форума Ответить с цитированием
Старый 19.04.2011, 18:56   #7
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
2)потом добавь вывод матрицы
Поясни какой вывод ?

Последний раз редактировалось dark999; 19.04.2011 в 19:05. Причина: )
dark999 вне форума Ответить с цитированием
Старый 19.04.2011, 23:05   #8
dark999
Пользователь
 
Аватар для dark999
 
Регистрация: 17.03.2011
Сообщений: 42
По умолчанию

Объясните плиз(
dark999 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан двумерный массив 4х4,заполненный вручную, введенный в StringGrid. Radamant Помощь студентам 0 20.02.2011 09:05
Дан двумерный массив размерностью n*m ValeriySergeevich Помощь студентам 4 16.01.2011 13:13
Сформировать массив случайным образом... (Pascal ABC) om3n Помощь студентам 2 14.04.2010 22:27
Нужно автоматически заполнить двумерный массив специальным образом diman87 Помощь студентам 5 25.09.2009 14:13
Как вывести на экран двумерный массив случайным образом? Stager Общие вопросы C/C++ 5 07.01.2009 20:53