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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2015, 11:53   #1
Аелд
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 33
По умолчанию Упорядочить по возрастанию четные элементы каждого столбца двумерного массива

Помогите правильно вывести
Код:
program Project18;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
var A:array [1..30,1..30] of integer;
    n,m,i,j,k,P:integer;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  write('Введите число строк массива n=');
  readln(n);
  write('Введите число столбцов массива m=');
  readln(m);
  writeln('Введите исходный двумерный массив A:');
  for i := 1 to n do
    begin
      for j := 1 to m do
        read(A[i,j]);
        readln;
    end;
    for j := 1 to m do
for i := 1 to n - 1 do
for k := i+1 to n do
if (A[i,j] mod 2=0)  and (A[i,j]>A[k,j]) and (A[k,j] mod 2=0) then
 begin
  P:=A[i,j];
  A[i,j]:=A[k,j];
  A[k,j]:=P;
 end;
writeln('Упорядоченный массив :');
for i := 1 to n do
 begin
  for j:=1 to m do
  write(A[j,j]:5);
  writeln;
 end;
readln;
end.

Последний раз редактировалось Аелд; 05.05.2015 в 11:55.
Аелд вне форума Ответить с цитированием
Старый 05.05.2015, 11:58   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
A[j,j]
Может A[i,j] ?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2015, 12:02   #3
Аелд
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 33
По умолчанию

пробовал так,но выдает тот же массив что я и вводил
Аелд вне форума Ответить с цитированием
Старый 05.05.2015, 12:16   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если поправку Виталия учел, то все должно правильно сработать. Согласно изложенного ТЗ
Изображения
Тип файла: jpg Безымянный.JPG (25.9 Кб, 86 просмотров)
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 05.05.2015 в 12:20.
Аватар вне форума Ответить с цитированием
Старый 05.05.2015, 12:57   #5
Аелд
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 33
По умолчанию

смотрите,что у меня получается
Безымянный.jpg
Аелд вне форума Ответить с цитированием
Старый 05.05.2015, 13:31   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Показывай измененный тобой код.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2015, 13:36   #7
Аелд
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Показывай измененный тобой код.
Код:
program Project18;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var A:array [1..30,1..30] of integer;
    n,m,i,j,k,P:integer;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  write('Введите число строк массива n=');
  readln(n);
  write('Введите число столбцов массива m=');
  readln(m);
  writeln('Введите исходный двумерный массив A:');
  for i := 1 to n do
    begin
      for j := 1 to m do
        read(A[i,j]);
        readln;
    end;
    for j := 1 to m do
for i := 1 to n - 1 do
for k := i+1 to n do
if (A[i,j] mod 2=0)  and (A[i,j]>A[k,j]) and (A[k,j] mod 2=0) then
 begin
  P:=A[i,j];
  A[i,j]:=A[k,j];
  A[k,j]:=P;
 end;
writeln('Упорядоченный массив :');
for i := 1 to n do
 begin
  for j:=1 to m do
  write(A[i,i]:5);
  writeln;
 end;
readln;
end.
Аелд вне форума Ответить с цитированием
Старый 05.05.2015, 13:38   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
A[i,i]

Повнимательнее будь )
Нужно было заменить на i,j (И запятая Джи) а не на (И запятая И)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2015, 13:40   #9
Аелд
Пользователь
 
Регистрация: 15.11.2014
Сообщений: 33
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение

Повнимательнее будь )
Нужно было заменить на i,j (И запятая Джи) а не на (И запятая И)
тю вот балда,спасибо!
Аелд вне форума Ответить с цитированием
Старый 05.05.2015, 14:03   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вот балда
Бывает...
Вот почему я у себя применяю не i,j которые визуально похожи, а другие. Например q и w.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Упорядочить по возрастанию элементы одномерного динамического массива Aselyabel Visual C++ 2 14.01.2014 19:41
Упорядочить строки двумерного массива элементов типа Char по возрастанию их ординальных номеров методом прямого включения. Alesia_Lesia Помощь студентам 4 27.11.2013 16:51
Упорядочить нечетные элементы, оставив четные на местах JegorX Помощь студентам 8 22.11.2011 15:54
В матрице nxm (n, m ≥ 10) целых чисел элементы нечетных строк упорядочить по возрастанию, а элементы четн serafimGroup Помощь студентам 1 01.12.2010 16:45
Упорядочить по возрастанию элементы.. TemaTim Паскаль, Turbo Pascal, PascalABC.NET 2 16.05.2009 19:00