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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2014, 14:50   #1
ToRN-12
Новичок
Джуниор
 
Регистрация: 03.06.2012
Сообщений: 2
По умолчанию Дан массив размерности nxn .

Ребята, буду рад помощи.

------

Дан массив размерности nxn . Элементы строк, находящиеся выше главной диагонали (не включая главную диагональ), расположить в порядке возрастания, а затем переписать их в виде вектора (по строкам) в одномерный массив Y , начиная с левого верхнего угла. (Определить размерность массива Y в зависимости от размерности массива X ).
ToRN-12 вне форума Ответить с цитированием
Старый 25.11.2014, 15:36   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Свои попытки были?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.11.2014, 12:56   #3
ToRN-12
Новичок
Джуниор
 
Регистрация: 03.06.2012
Сообщений: 2
По умолчанию

Да, были. Но не совсем удачные.
ToRN-12 вне форума Ответить с цитированием
Старый 26.11.2014, 14:12   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Что ж. Подкину идею:
Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs;

type

  { TForm1 }

  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
const n=5;
var a:array[1..n,1..n] of integer;v,k,i,j:integer;
  y:array[1..n] of integer;
begin
 //Вводим матрицу
 for i:=Low(a) to high(a) do for j:=Low(a[i]) to high(a[i]) do a[i]:=i*j;
 //Сортируем верхний треугольник
 for i:=Low(a) to high(a) do
   for j:=i+1 to high(a[i]) do
     for k:=j to high(a[i]) do
       if a[j]<a[k] then begin v:=a[k]; a[k]:=a[j]; a[j]:=v; end;
 //Заполняем вектор
 k:=Low(y);
 for i:=Low(a) to high(a) do for j:=i+1 to high(a[i]) do begin y[k]:=a[i,j];inc(k);end;
end;

end.
к - кол-во элементов в векторе.
Не копипастить! - не поможет.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан двумерный массив размерности mxn. необходимо найти все трёхзначные числа и заменить их на произведение его цифр.(VBA) oquank Помощь студентам 2 29.05.2014 14:18
Дан квадратный числовой массив размером NxN... (Delphi) Radius100 Помощь студентам 0 15.02.2012 17:24
Дан квадратный числовой массив размером NxN... Radius100 Общие вопросы Delphi 0 15.02.2012 00:45
Дан массив размерности, определить номера строк элементы которых образуют последовательность С++ Lera Помощь студентам 2 18.12.2009 17:17