|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Лабораторна робота №2. Упорядкування і пошук данихУпорядкування і пошук даних Задана матриця , . Розробити програму, яка будує логічний вектор за правилом: якщо -ий стовпчик утворює незростаючу послідовність, інакше . Код програми: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, Menus, Grids; type TForm1 = class(TForm) StringGrid1: TStringGrid; MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; Exit1: TMenuItem; TrackBar1: TTrackBar; Button1: TButton; procedure Exit1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure TrackBar1Change(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; n,m,i,j:integer; a,res:array[1..20,1..20] of integer; b:array[1..20] of integer; implementation {$R *.dfm} procedure TForm1.Exit1Click(Sender: TObject); begin close; end; procedure TForm1.N2Click(Sender: TObject); begin for i:=0 to n do for j:=0 to n-1 do stringgrid1.Cells[j,i]:=''; end; procedure TForm1.N1Click(Sender: TObject); begin randomize; for i:=0 to n-1 do for j:=0 to n-1 do stringgrid1.Cells[j,i]:=inttostr(random(10)-5); end; procedure TForm1.TrackBar1Change(Sender: TObject); begin n:=trackbar1.position; stringgrid1.colcount:=n; stringgrid1.rowcount:=n+1; end; procedure TForm1.Button1Click(Sender: TObject); begin for i:=1 to n do for j:=1 to n do a[i,j]:=strtoint(stringgrid1.Cells[j-1,i-1]); for j:=1 to n do begin b[j]:=0; for i:=1 to n-1 do if a[i,j]<=a[i+1,j] then b[j]:=b[j]+1; end; for j:=1 to n do begin if b[j]=n-1 then stringgrid1.Cells[j-1,n]:='true' else stringgrid1.Cells[j-1,n]:='false'; end; end; end.
Лабораторна робота №3 Множини Задана матриця , . Розробити програму, яка будує і друкує множину із номерів рядків матриці, в яких знаходяться максимальні елементи матриці. (Максимальних елементів може бути декілька). Код програми: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, Menus, Grids; type nb=set of 1..9; TForm1 = class(TForm) StringGrid1: TStringGrid; MainMenu1: TMainMenu; N1: TMenuItem; N2: TMenuItem; Exit1: TMenuItem; TrackBar1: TTrackBar; Button1: TButton; Edit1: TEdit; Label1: TLabel; procedure Exit1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N1Click(Sender: TObject); procedure TrackBar1Change(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; n,m,i,j:integer; a:array[1..15,1..15] of integer; mn:nb; implementation {$R *.dfm} procedure TForm1.Exit1Click(Sender: TObject); begin close; end; procedure TForm1.N2Click(Sender: TObject); begin for i:=0 to n do for j:=0 to n-1 do stringgrid1.Cells[j,i]:=''; end; procedure TForm1.N1Click(Sender: TObject); begin randomize; for i:=0 to n-1 do for j:=0 to n-1 do stringgrid1.Cells[j,i]:=inttostr(random(10)-5); end; procedure TForm1.TrackBar1Change(Sender: TObject); begin n:=trackbar1.position; stringgrid1.colcount:=n; stringgrid1.rowcount:=n; end; procedure TForm1.Button1Click(Sender: TObject); var max:integer; begin for i:=1 to n do for j:=1 to n do a[i,j]:=strtoint(stringgrid1.Cells[j-1,i-1]); max:=a[1,1]; mn:=[]; for i:=1 to n do for j:=1 to n do if a[i,j]>max then max:=a[i,j]; for i:=1 to n do for j:=1 to n do if a[i,j]=max then mn:=mn+[i]; for i:=1 to 9 do if i in mn then edit1.Text:=edit1.text+inttostr(i)+', '; end; end. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.009 сек.) |