Дана вещественная матрица А (6,5). Вычислить произведение всех отрицательных элементов матрицы. Вычисление произведения отрица-тельных элементов матрицы оформить в виде функции.
вот я написала программу и она не работает..
type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
type
matr=array [1..6,1..5]of integer;
var // Îïèñàíèå ïåðåìåííûõ îñíîâíîé ïðîãðàììû
i,j,code,s,n,m:integer;
number, e:string;
b:matr;
function proiz(n:integer;a:matr):integer;
var
i,j,s:integer; //îïèñàíèå ïåðåìåííûõ ôóíêöèè
sum:string;
begin
s:=1;
for i:=1 to 6 do //Âû÷èñëåíèå â öèêëå ñóììû do
begin
e:='';
for j:=1 to 5 do
begin
e:=e+' '+ IntToStr(a[i,j]);
end;
If a[i,j]<0 then s:=a[j,i] * s end;
{Âûçûâàþùàÿ ïðîãðàììà (îñíîâíàÿ)}
begin // Íà÷àëî îñíîâíîé ïðîãðàììû
val (edit1.Text,n,code);
for i:=1 to 6 do //Ââîä ýëåìåíòîâ ìàññèâà
for j:=1 to 5 do
begin
number:=inputbox('Ââîä ýëåìåíòîâ ìàññèâà','Ââåäè ÷èñëî','0');
val(number,b[i,j],code);
end;
proiz(n,b); //Îáðàùåíèå ê ôóíêöèè
end;
end.
Здравствуйте, MBo, Вы писали:
MBo>Здравствуйте, Alatiel, Вы писали:
A>>вот я написала программу и она не работает..
MBo>end перенесите на место после конца оператора if
переместила все равно все время открывается окно введите числа я ввожу и оно снова открывается ничего не посчитав
У вас комментарии не в той кодировке, ничего не понятно.
A>Дана вещественная матрица А (6,5). Вычислить произведение всех отрицательных элементов матрицы. Вычисление произведения отрица-тельных элементов матрицы оформить в виде функции. A>вот я написала программу и она не работает..
A>unit Unit1;
A>interface
A>uses A> Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, A> Dialogs, StdCtrls;
A>type A> TForm1 = class(TForm) A> Button1: TButton; A> Edit1: TEdit; A> Memo1: TMemo; A> procedure Button1Click(Sender: TObject); A> private A> { Private declarations } A> public A> { Public declarations } A> end;
A>var A> Form1: TForm1;
A>implementation
A>{$R *.dfm}
A>procedure TForm1.Button1Click(Sender: TObject); A>type A>matr=array [1..6,1..5]of integer; A>var // Îïèñàíèå ïåðåìåííûõ îñíîâíîé ïðîãðàììû A>i,j,code,s,n,m:integer; A>number, e:string; A>b:matr; A> function proiz(n:integer;a:matr):integer; A> var A>i,j,s:integer; //îïèñàíèå ïåðåìåííûõ ôóíêöèè A>sum:string; A>begin A>s:=1; A>for i:=1 to 6 do //Âû÷èñëåíèå â öèêëå ñóììû do A> begin A> e:=''; A> for j:=1 to 5 do A> begin A> e:=e+' '+ IntToStr(a[i,j]); A> end; A> If a[i,j]<0 then s:=a[j,i] * s end;
A>//str(s,sum); //Ïåðåâîä çíà÷åíèÿ ñóììû â ñòðîêîâóþ ïåðåìåííóþ A> memo1.Lines.Add (IntToSTR(s)); //âûâîä ðåçóëü-òàòà A>end;
A>{Âûçûâàþùàÿ ïðîãðàììà (îñíîâíàÿ)} A>begin // Íà÷àëî îñíîâíîé ïðîãðàììû A> val (edit1.Text,n,code); A> for i:=1 to 6 do //Ââîä ýëåìåíòîâ ìàññèâà A> for j:=1 to 5 do A> begin A> number:=inputbox('Ââîä ýëåìåíòîâ ìàññèâà','Ââåäè ÷èñëî','0'); A> val(number,b[i,j],code); A> end; A> proiz(n,b); //Îáðàùåíèå ê ôóíêöèè A>end; A> end.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать." Р.П. Уоррен
Re[3]: Помогите решить задачку,пожалуйста, по Delphi
Здравствуйте, Alatiel, Вы писали:
A>переместила все равно все время открывается окно введите числа я ввожу и оно снова открывается ничего не посчитав
Ну да, это повторяется 30 раз.
Столько чисел никто вручную вводить не будет, лучше сгенерируйте случайное заполнение матрицы вроде b[i,j] := Random(7) — 3;
Re[4]: Помогите решить задачку,пожалуйста, по Delphi
Здравствуйте, MBo, Вы писали:
MBo>Здравствуйте, Alatiel, Вы писали:
A>>переместила все равно все время открывается окно введите числа я ввожу и оно снова открывается ничего не посчитав MBo>Ну да, это повторяется 30 раз. MBo>Столько чисел никто вручную вводить не будет, лучше сгенерируйте случайное заполнение матрицы вроде b[i,j] := Random(7) — 3;
спасибо!