![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
378(б). Даны действительные числа x(1),..., x(n).
Получить действительную квадратную матрицу п орядка n: - - | 1... 1 | | | | x(1)... x(n) | |. . | |. . | |. . | | n-1 n-1| | x(1)... x(n) | - - 394(в). Дана целочислен ная квадратная матрица порядка n. Найти номера строк, элементы каждой из которых образуют монотонную последовательность (убывающую или возрастающую ). |
|
#2
|
|||
|
|||
|
Пиши обсудим
ICQ: 410691984 |
|
#3
|
|||
|
|||
|
Вывести на форму элементы матрицы А(5,5), находящиеся ниже главной и побочной диагонали одновременно. Элементы матрицы А формируются по правилу:
ai,j = 1/(i + j) - COS(i). Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
BitBtn1: TBitBtn;
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Cells[0,1]:='1';
StringGrid1.Cells[0,2]:='2';
StringGrid1.Cells[0,3]:='3';
StringGrid1.Cells[0,4]:='4';
StringGrid1.Cells[0,5]:='5';
StringGrid1.Cells[1,0]:='1';
StringGrid1.Cells[2,0]:='2';
StringGrid1.Cells[3,0]:='3';
StringGrid1.Cells[4,0]:='4';
StringGrid1.Cells[5,0]:='5';
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
a:array[1..5,1..5] of real;
begin
for i:=1 to 5 do
for j:=1 to 5 do begin
a[i,j]:=(1/(i+j))-cos(i);
end;
for i:=1 to 5 do
for j:=1 to 5 do begin
if (i<j) then
StringGrid1.Cells[i,j]:=FloatToStr(a[i,j]);
end;
while i<=5 do begin
while j<=5 do begin
if (i>j) then StringGrid1.Cells[i,j]:=FloatToStr(a[i,j]);
i:=i+1;j:=j+2;
end;end;
end;
end.что то тут не получаеться(((((( |
|
#4
|
|||
|
|||
|
перед вайлом обнули счётчики инкремент i делай после цикла j, а не в нём, так же там обнуляй счётчик j. и вообще условие (i>j) не правильное.
|
|
#5
|
|||
|
|||
|
забыл. в стрингирде номерация ячеек с нуля начинается, так что тебе ещё нужно делать .Cells[i-1,j-1]. всё.
![]() |
|
#6
|
||||
|
||||
|
stervochka :
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
i,j,l,k:integer;
a: array[1..5,1..5] of real;
begin
for i:=1 to 5 do
for j:=1 to 5 do
a[i,j]:=1/(i+j)-COS(i);
l:=2; k:=4;
for i:=5 downto 1 do
begin
if l<=k then
for j:=l to k do
StringGrid1.Cells[j,i]:=floattostr(a[j,i]);
inc(l); dec(k);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var i:integer;
begin
for i:=1 to 5 do
begin
StringGrid1.Cells[0,i]:=inttostr(i);
StringGrid1.Cells[i,0]:=inttostr(i);
end;
end; |