Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 12.01.2014, 16:56   #1 (permalink)
ASANNA
Новичок
 
Регистрация: 12.01.2014
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Составить блок схему

Добрый день!! Очень прошу помощи!!(( составить блок схему по коду Delphi. Завтра зачет, сдавать надо!!(( ничего не понимаю!!!!
unit Unit1;

interface

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

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

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var n,i,j,imax,jmax:integer;
a:array of array of real;
max:real;
begin
n:=strtoint(edit1.text);
StringGrid1.ColCount:=n;
StringGrid1.RowCount:=n;
StringGrid2.ColCount:=n-1;
StringGrid2.RowCount:=n-1;
Setlength(a,n,n);
randomize;
for i:=0 to n-1 do
begin
for j:=0 to n-1 do
begin
a[i,j]:=10*random-5;
StringGrid1.Cells[j,i]:=floattostrf(a[i,j],fffixed,5,2);
end;
end;
//ïðèñâàèâàåì ïåðâîìó ýëåìåíòó ìàòðèöû çíà÷åíèå ìàêñèìóìà, ñòîðîêå è ñòîëáöó - 1;
max:=abs(a[0,0]);imax:=0;jmax:=0;
for i:=0 to n-1 do
for j:=0 to n-1 do
if (a[i,j])>max then
begin
max:=a[i,j]; //ìàêñèìàëüíûé ýëåìåíò
imax:=i; //ñòðîêà, ãäå îí íàõîäèòñÿ
jmax:=j; //ñòîëáåö, ãäå îí íàõîäèòñÿ
end;
//âûâîäèì äàííûå î ìàêñèìàëüíîì ýëåìåíòå
edit2.Text:='Ìàêñèìàëüíûé ýëåìåíò='+floattostrf(max,fffixed,5,2)+
' â ñòðîêå ¹ '+inttostr(imax+1)+' â ñòîëáöå ¹ '+ inttostr(jmax+1);
//ñìåùàåì âñå ýëåìåíòû â ñòðîêàõ îò êîíöà ñòðîêè äî íóæíîãî
//ñòîëáöà íà îäèí âëåâî (óäàëÿåì ñòîëáåö)
for i:=0 to n-1 do
for j:=jmax to n-2 do
begin
a[i,j]:=a[i,j+1];
end;
//ñìåùàåì âñå ýëåìåíòû â ñòîëáöàõ îò êîíöà ñòîëáöà äî íóæíîé
//ñòðîêè íà îäèí ââåðõ (óäàëÿåì ñòðîêó)
for j:=0 to n-1 do
for i:=imax to n-2 do
begin
a[i,j]:=a[i+1,j];
end;
//çàíîñèì ðåçóëüòàò âî âòîðóþ òàáëèöó
for i:=0 to n-2 do
begin
for j:=0 to n-2 do
begin
StringGrid2.Cells[j,i]:=floattostrf(a[i,j],fffixed,5,2);
end;
end;
end;

end.
ASANNA вне форума   Ответить с цитированием

Старый 12.01.2014, 16:56
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Это схожие темы, в них вы можете поискать информативные ответы

Составить блок-схему
Помогите составить блок-схему

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


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

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




Часовой пояс GMT +4, время: 21:53.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.