- •С ередовище програмування Delphi
- •1 Структура розгалуження
- •2 Аналіз завдання та розробка методу вирішення задач
- •3 Опис структури программного проекту
- •4 Реалізація проекту в середовищі Borland Delphi
- •5 Аналіз результатів комп’ютерної реалізації програми
- •Висновок
- •Використана література:
- •Додаток
3 Опис структури программного проекту
procedure TForm1.N31Click(Sender: TObject);
begin
for i:=1 to n do
for j:=1 to n do
if(a[i,j]<0) and (max<abs(a[i,j]))then max:=abs(a[i,j]); ]); //Знаходження максимального по модулю елемента серед відємних.
edit1.Text:='Максимальний по модулю елемент серед відємних -'+IntToStr(max);
label3.caption:='В двовимірному масиві,що відповідає матриці A,'
+#13+ 'Максимальний по модулю елемент серед відємних'
end;
procedure TForm1.N41Click(Sender: TObject);
var
s:integer;
begin
for j:=1 to n do
begin
s:=1;
for i:=1 to n do
if A[i,j] mod 2=0 then
s:=s*A[i,j];
b[j]:=s;
StringGrid2.Cells[j-1,0]:=IntToStr(b[j]); //Виведення відсортоваго масиву
label3.caption:='З масиву, що відповідає матриці А утворити одновимірний масив В '
+#13+'B[i] є добутком парних елементів і-го стовпців:';
end;
end;
procedure TForm1.N51Click(Sender: TObject);
var
t:integer;
m_in:integer;
begin
for i:=1 to n do
c[i]:=b[i];
for i:=1 to n-1 do// Сортування масиву С
begin
Сортування масиву С
m_in:=i;
for j:=i+1 to n do
if c[j]<c[m_in] then m_in:=j;
t:=c[i];
c[i]:=c[m_in];
c[m_in]:=t;
end;
for i:=1 to n do
StringGrid3.Cells[i-1,0]:=IntToStr(c[i]); //Виведення відсортоваго масиву
Label3.Caption:='Відсортувати одновимірний масив В за методом вибору.'
+#13+'Результатом сортування - масив С.';
end;
procedure TForm1.N21Click(Sender: TObject);
begin
for i:=1 to n do
for j:=1 to n do
begin
A[i,j]:=RandomRange(-10,10*k);
StringGrid1.Cells[j-1,i-1]:=IntToStr(a[i,j]);
label3.caption:='Задано квадратну матрицю А розміром n*n, де n=(k+g) mod 3+6,'
+#13+'(k-номер студента в журналі групи, g-номер групи (1 або 2)).'
+#13+'матрицz заповнюються випадковим чином з проміжку [-10g,10k]';
end;
end;
procedure TForm1.N61Click(Sender: TObject);
var
S:real;
begin
S:=0;
for i:=1 to n do
begin
S:=S+cos(C[n-i+1]-B[i]);
edit2.text:=FloatToStr(S);
label3.caption:='Використовуючи елементи масивів В та С, виконати обчислення '
+#13+'';
image1.Visible:=true;
end;
end;
procedure TForm1.N71Click(Sender: TObject);
var
s,min,t,k:integer;
begin
//Обчислюємо характеристику стовпців матриці а
for i:=1 to n do
begin
s:=0;
for j:=1 to n do
if a[i,j] mod 2 <> 0 then
begin
s:=s+a[i,j];
x[i]:=s;
StringGrid4.Cells[0,i-1]:=IntToStr(x[i]);
end;
image1.Visible:=false;
end;
for i:=1 to n do
begin
//копія массиву x
y[i]:=x[i];
StringGrid6.Cells[0,i-1]:=IntToStr(x[i]);
end;
for i:=1 to n do
for j:=1 to n do
begin
d[i,j]:=a[i,j]; //копія массиву A
StringGrid5.Cells[j-1,i-1]:=IntToStr(d[i,j]);
label3.caption:='Відсортувати матрицю методом бульбашок'
end;
begin
for k:=1 to n do// Сортування масиву методом "Обміного сортування"
for i:=1 to n-1 do
if Y[i]>Y[i+1]then
begin
t:=Y[i];
Y[i]:=Y[i+1];
Y[i+1]:=t;
for j:=1 to n do
begin
t:=D[i,j];
D[i,j]:=D[i+1,j];
D[i+1,j]:=t;
end;
end;
for i:=1 to n do
StringGrid6.Cells[0,i-1]:=IntToStr(y[i]); //Виведення відсортованої характеристики
for i:=1 to n do
for j:=1 to n do
StringGrid5.Cells[j-1,i-1]:=IntToStr(d[i,j]); //Виведення відсортованого масиву
Label2.Caption:=('Завдання 6.'+#13+'Сортування масиву методом "Обміного сортування".');
end;
end;
procedure TForm1.N1Click(Sender: TObject);
begin
close;
end;
procedure TForm1.N72Click(Sender: TObject);
begin
for i:=1 to n do
begin
St:=' ';
for j:=1 to n do
St:=St+#9+IntToStr(A[i,j]); //Виведення матриці А в поле memo1.
Memo1.lines.add(st)
end;
Memo1.Lines.SaveToFile('A.txt'); //Виведення матриці А з поля memo в текстовий документ.
for i:=1 to n do
begin
St:=' ';
St:=St+#9+IntToStr(B[i]);
Memo2.lines.add(st)
end;
Memo2.Lines.SaveToFile('B.txt');
for i:=1 to n do
begin
St:=' ';
St:=St+#9+IntToStr(C[i]);
Memo3.lines.add(st)
end;
Memo3.Lines.SaveToFile('C.txt');
for i:=1 to n do
begin
St:=' ';
St:=St+#9+IntToStr(X[i]);
Memo4.lines.add(st)
end;
Memo4.Lines.SaveToFile('X.txt');
for i:=1 to n do
begin
St:=' ';
for j:=1 to n do
St:=St+#9+IntToStr(d[i,j]);
Memo5.lines.add(st)
end;
Memo5.Lines.SaveToFile('d.txt');
label3.caption:='Збереження масивів';
end;
end.
