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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2014, 12:13   #1
darwin1
 
Регистрация: 15.03.2014
Сообщений: 7
По умолчанию Дан массив X(N,M).Найти номера столбцов массива,все элементы которых четны. Из полученных значений сформировать одномерный массив.

Дан массив X(N,M).Найти номера столбцов массива,все элементы которых четны. Из полученных значений сформировать одномерный массив.
darwin1 вне форума Ответить с цитированием
Старый 16.03.2014, 12:15   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Сможешь показать ввод массива?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.03.2014, 12:35   #3
darwin1
 
Регистрация: 15.03.2014
Сообщений: 7
По умолчанию

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

Жаль... Ладно. Держи:
Код:
program Project1;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this };
const n=6;m=6;
Type

  { TArray }

  TArray=class
    private
      X:Array[1..n,1..m] of integer;
      chn:Array[1..m] of boolean;
    public
      procedure Fill;
  end;

  { TVector }

  TVector=class
    Private
      Vec:Array of integer;
      Procedure Assign(Arr:TArray);
      Procedure aWrite;
  end;

{ TVector }

procedure TVector.Assign(Arr: TArray);
var i,j:integer;
begin
 with Arr do begin
  j:=0;
  for i:=Low(chn) to High(chn) do if chn[i] then inc(j);
  SetLength(Vec,j);
  j:=0;
  for i:=Low(chn) to High(chn) do if chn[i] then begin Vec[j]:=i; inc(j);end;
 end;
end;

procedure TVector.aWrite;
var i:integer;
begin      writeln;writeln;writeln;writeln;
  for i:=Low(Vec) to High(Vec) do   write(Vec[i]:5); writeln;
end;

{ TArray }

procedure TArray.Fill;
var i,j:integer;
begin    Randomize;
 for i:=Low(chn) to High(chn) do chn[i]:=true;
 for i:=Low(x) to High(x) do begin
   for j:=Low(x[i]) to High(x[i]) do begin
     x[i,j]:=Random(200)*2; Write(x[i,j]:5);
     if ((x[i,j] mod 2)<>0) then chn[j]:=false;
   end; writeln;
 end;
end;

var a:TArray; v:TVector;
begin
 a:=TArray.Create; a.Fill;
 v:=TVector.Create; v.Assign(a); v.aWrite;
 a.Free; v.Free;;
 readln;
end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан одномерный массив элементов. Необходимо вывести все не повторяющиеся элементы filimoncc Помощь студентам 3 01.03.2014 13:20
Сформировать одномерный массив, элементами которого являются все отрицательные элементы двумерного массива, после 1-го полож-го sev48fire Фриланс 5 23.06.2012 19:07
Сформировать одномерный массив, элементами которого являются все положительные элементы исходного массива... sev48fire Помощь студентам 11 07.06.2012 11:06
Для матрицы и массива (заданы номера столбцов) найти минимальные элементы, поместить в массив, найти сред. ариф.(Delphi) nucweapon Помощь студентам 5 26.10.2011 09:37
Дан массив размерности, определить номера строк элементы которых образуют последовательность С++ Lera Помощь студентам 2 18.12.2009 17:17