Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Ответ
 
Опции темы
Старый 21.04.2017, 15:47   #1
ceccu9l
Новичок
 
Регистрация: 20.04.2017
Сообщений: 5
Репутация: 10
По умолчанию [Delphi] Сортировка массива в порядке возрастания

Delphi.Дополните программу пожалуйста
Отсортировать полученный одномерный массив в порядке возрастания (кнопка1). Вывести одномерный массив где будут удалены повторяющиеся элементы (кнопка2).
Код:

unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;
 
type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    StringGrid2: TStringGrid;
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit1: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
  a:array[1..15,1..15] of integer;
  n,m:integer;
implementation
 
{$R *.dfm}
             //кнопка создания матрицы
procedure TForm1.Button1Click(Sender: TObject);
var k:integer;
begin
val(Edit1.Text,n,k);
//размеры таблицы 1
n:=2*n+1;
StringGrid1.RowCount:=n; //количество строк таблицы 1
StringGrid1.ColCount:=n; //количество столбцов таблицы 1
m:=4*(n-1)+1;
StringGrid2.ColCount:=m; //количество столбцов таблицы 2
StringGrid1.Options:=StringGrid1.Options+[goEditing,goTabs];//разрешим редактирование ячеек
ShowMessage('Введите в таблицу 1 элементы матрицы, целые числа ');
end;
//кнопка для формирование нового массива
procedure TForm1.Button2Click(Sender: TObject);
var i,j,k:integer;
begin
for i:=1 to n do
for j:=1 to n do
 begin
  val(StringGrid1.Cells[j-1,i-1],a[i,j],k);
  if k<>0 then ShowMessage('В ячейке ['+inttostr(i)+','+inttostr(j)+'] неверно введено число, поправьте'); //защита
 end;
for i:=1 to n-1 do
 begin
  StringGrid2.Cells[i-1,0]:=inttostr(a[1,i]);      //первая строка
  StringGrid2.Cells[n+i-2,0]:=inttostr(a[i,n]);    //последний столбец
  StringGrid2.Cells[2*n+i-3,0]:=inttostr(a[n,n-i+1]); //последняя строка с конца
  StringGrid2.Cells[3*n+i-4,0]:=inttostr(a[n-i+1,1]);//первый столбец снизу-вверх
 end;
StringGrid2.Cells[m-1,0]:=inttostr(a[n div 2+1,n div 2+1]);  //центральный элемент
end;

ceccu9l вне форума   Ответить с цитированием
Старый 21.04.2017, 15:48   #2
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 13,186
Репутация: 2575

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от ceccu9l Посмотреть сообщение
Дополните программу пожалуйста
А вы что будете делать?
Alex11223 вне форума   Ответить с цитированием
Старый 21.04.2017, 15:53   #3
ceccu9l
Новичок
 
Регистрация: 20.04.2017
Сообщений: 5
Репутация: 10
Печаль

Пытаться понять и написать решение данной задачи
ceccu9l вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана последовательность чисел a1, a2 , ., an. Представить в порядке возрастания. Сортировка обменом. Кодер2 C# (си шарп) 1 02.11.2016 23:17
Сортировка чисел в строке в порядке возрастания (Си) Dionisius Помощь студентам 1 28.01.2016 11:00
Сортировка чисел в строке в порядке возрастания) Dionisius Общие вопросы C/C++ 0 27.01.2016 02:58
Расположе элементов строки массива в порядке возрастания londoncold Помощь студентам 1 21.12.2011 21:04
Расположить элементы массива в порядке возрастания Klik_1602 Помощь студентам 2 04.01.2011 15:59




09:23.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru