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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2022, 20:20   #1
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
Восклицание Преобразование квадратной матрицы

Приветствую. Прошу помочь доделать программу. Значит. Дана действительная квадратная матрица порядка n. Преобразовать матрицу по следующему правилу: строку с номером n сделать столбцом с номером n, а столбец с номером n - строкой с номером n. Первый StringGrid я заполнил случайным образом. А второй StringGrid нужно заполнить уже преобразовав элементы из первого String. Если не получится с моим кодом, прошу написать свой вариант. Заранее спасибо.
Вложения
Тип файла: zip Преобразование квадратной матрицы.zip (3.7 Кб, 1 просмотров)
AchtungPanzer вне форума Ответить с цитированием
Старый 22.04.2022, 21:24   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Код:
for i:=1 to n do begin
 t:=mas[i,x]; mas[i,x]:=mas[x,i]; mas[x,i]:=t; end;
macomics вне форума Ответить с цитированием
Старый 22.04.2022, 21:34   #3
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
По умолчанию

Я делал так, но второй StringGrid был пустой. Может посмотрите мой код
AchtungPanzer вне форума Ответить с цитированием
Старый 22.04.2022, 21:34   #4
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
По умолчанию

После того, как я это сделал, эту часть кода я стёр
AchtungPanzer вне форума Ответить с цитированием
Старый 22.04.2022, 21:40   #5
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Так а скопировать сначала ячейки из первого во второй не догадались.
macomics вне форума Ответить с цитированием
Старый 22.04.2022, 21:42   #6
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
По умолчанию

Вы мой код видели, а то там 0 просмотров. Незнаю как скопировать
AchtungPanzer вне форума Ответить с цитированием
Старый 22.04.2022, 21:45   #7
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

в редакторе нажмите CODE и вставьте текст между тэгами
macomics вне форума Ответить с цитированием
Старый 22.04.2022, 21:48   #8
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
По умолчанию

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Label1: TLabel;
    StringGrid2: TStringGrid;
    Label2: TLabel;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
                                  {Çàïîëíåíèå ìàññèâà}
var
  i,j:integer;
begin
  Randomize;
  with StringGrid1 do {Âûâåñòè íîìåðà ñòðîê}
  begin
    I:=0; {Ñòîëáåö 0}
    for J:= 1 to RowCount - 1 do {Âûâåñòè íîìåðà ñòðîê}
       Cells[I,J] := IntToStr(J);
    j:=0;
    for I:= 1 to ColCount - 1 do {Âûâåñòè íîìåðà ñòðîê}
       Cells[I,J] := IntToStr(I);
    end;
  with StringGrid1 do {Âûâåñòè â òàáëèöå ýëåìåíòû äâóìåðíîãî ìàññèâà}
   for I := 1 to ColCount - 1 do
     for J := 1 to RowCount - 1 do
       begin
                Cells[I,J] := IntToStr(Round(Sin(Random(100))*100));
       end;
  with StringGrid2 do {Ïðåîáðàçîâàòü â òàáëèöå ýëåìåíòû äâóìåðíîãî ìàññèâà}
   for I := 1 to ColCount - 1 do
     for J := 1 to RowCount - 1 do
       begin
                Cells[J,I] := Cells[J,I];
       end;
end;

end.
AchtungPanzer вне форума Ответить с цитированием
Старый 22.04.2022, 21:48   #9
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Код:
with StringGrid2 do {Ïðåîáðàçîâàòü â òàáëèöå ýëåìåíòû äâóìåðíîãî ìàññèâà}
   for I := 1 to ColCount - 1 do
     for J := 1 to RowCount - 1 do
       begin
                {StringGrid2.}Cells[J,I] := {StringGrid2.}Cells[J,I];
       end;
это ничего не копирует

Последний раз редактировалось macomics; 22.04.2022 в 21:51.
macomics вне форума Ответить с цитированием
Старый 22.04.2022, 21:50   #10
AchtungPanzer
Пользователь
 
Регистрация: 26.03.2022
Сообщений: 13
По умолчанию

Да, а как сделать чтобы StringGrid2 заполнил преобразовав,
AchtungPanzer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[VBA] Для квадратной матрицы А найти А2 SkyGir Помощь студентам 6 25.05.2019 17:06
Диагонали квадратной матрицы A24 Помощь студентам 3 21.10.2012 20:01
определитель квадратной матрицы BloodMaX Общие вопросы C/C++ 2 02.03.2012 15:57
транспонирование квадратной матрицы 777UFO777 Общие вопросы Delphi 1 04.12.2008 19:31