Var dat:DateTime; myForm:Form; myButton:Button; myTextBox:TextBox;
procedure MyButtonClick(sender:Object;e:EventArgs); begin {при каждом нажатии на кнопку значение dat обновляется и выводится в текстовое поле} dat:=datetime.Now; myTextBox.Text:=dat.ToString; end; begin myForm:=new Form; //создание объекта - формы myform.Left:=500; myform.top:=500; myform.AutoSize:=true; myform.Width:=300; myform.Height:=100; myTextBox:=new TextBox; //создание объекта - текстового поля myTextBox.Left:=80; myTextBox.Top:=40; myTextBox.Enabled:=true; myTextBox.Width:=105; myTextBox.Height:=100; myTextBox.MaxLength:=16; myTextBox.ReadOnly:=false; myTextBox.Visible:=true; myButton:=new Button; //создание объекта - кнопки myButton.Text:='Now'; myButton.Left:=80; myButton.top:=80; myButton.AutoSize:=true; myForm.Controls.Add(myButton); //вешаем на форму кнопку и поле myForm.Controls.Add(myTextBox); myButton.click+=MyButtonClick; //присваиваем событие при нажатии на кнопку Application.Run(myForm); end.
// PascalABC.NET 3.0, сборка 1156 от 30.01.2016 function Avg(a:array[,] of integer):real; begin var s:=0; var k:=0; foreach var e:integer in a do if e>0 then begin s+=e; Inc(k) end; if k>0 then Result:=s/k else Result:=1e-100; end;
begin var A:=MatrixRandom(4,4,-50,50); Writeln(A); Writeln('Среднее арифметическое положительных равно ',Avg(A):0:3); var B:=MatrixRandom(5,5,-30,30); Writeln(B); Writeln('Среднее арифметическое положительных равно ',Avg(B):0:3); var C:=MatrixRandom(4,5,-25,38); Writeln(C); Writeln('Среднее арифметическое положительных равно ',Avg(C):0:3); end.
Тестовое решение: [[35,35,5,-47],[14,34,35,-13],[25,-5,35,-29],[-7,10,-12,12]] Среднее арифметическое положительных равно 24.000 [[-12,-17,-10,19,14],[20,17,-27,-2,16],[-3,-21,30,2,10],[5,-3,-17,-3,18],[0,-26,29,1,-22]] Среднее арифметическое положительных равно 15.083 [[-5,-11,17,-4,15],[15,17,-24,36,15],[-8,-3,-22,28,-25],[-21,6,12,31,-1]] Среднее арифметическое положительных равно 19.200
uses
system,system.Windows.Forms;
Var
dat:DateTime;
myForm:Form;
myButton:Button;
myTextBox:TextBox;
procedure MyButtonClick(sender:Object;e:EventArgs);
begin {при каждом нажатии на кнопку значение dat обновляется и выводится в текстовое поле}
dat:=datetime.Now;
myTextBox.Text:=dat.ToString;
end;
begin
myForm:=new Form; //создание объекта - формы
myform.Left:=500;
myform.top:=500;
myform.AutoSize:=true;
myform.Width:=300;
myform.Height:=100;
myTextBox:=new TextBox; //создание объекта - текстового поля
myTextBox.Left:=80;
myTextBox.Top:=40;
myTextBox.Enabled:=true;
myTextBox.Width:=105;
myTextBox.Height:=100;
myTextBox.MaxLength:=16;
myTextBox.ReadOnly:=false;
myTextBox.Visible:=true;
myButton:=new Button; //создание объекта - кнопки
myButton.Text:='Now';
myButton.Left:=80;
myButton.top:=80;
myButton.AutoSize:=true;
myForm.Controls.Add(myButton); //вешаем на форму кнопку и поле
myForm.Controls.Add(myTextBox);
myButton.click+=MyButtonClick; //присваиваем событие при нажатии на кнопку
Application.Run(myForm);
end.
function Avg(a:array[,] of integer):real;
begin
var s:=0; var k:=0;
foreach var e:integer in a do
if e>0 then begin s+=e; Inc(k) end;
if k>0 then Result:=s/k else Result:=1e-100;
end;
begin
var A:=MatrixRandom(4,4,-50,50); Writeln(A);
Writeln('Среднее арифметическое положительных равно ',Avg(A):0:3);
var B:=MatrixRandom(5,5,-30,30); Writeln(B);
Writeln('Среднее арифметическое положительных равно ',Avg(B):0:3);
var C:=MatrixRandom(4,5,-25,38); Writeln(C);
Writeln('Среднее арифметическое положительных равно ',Avg(C):0:3);
end.
Тестовое решение:
[[35,35,5,-47],[14,34,35,-13],[25,-5,35,-29],[-7,10,-12,12]]
Среднее арифметическое положительных равно 24.000
[[-12,-17,-10,19,14],[20,17,-27,-2,16],[-3,-21,30,2,10],[5,-3,-17,-3,18],[0,-26,29,1,-22]]
Среднее арифметическое положительных равно 15.083
[[-5,-11,17,-4,15],[15,17,-24,36,15],[-8,-3,-22,28,-25],[-21,6,12,31,-1]]
Среднее арифметическое положительных равно 19.200