// PascalABC.NET 3.1, сборка 1239 от 08.05.2016 begin var a:=ArrRandom(31,-20,20); a.Println; Writeln('Средняя температура в оттепели: ', a.Where(x->x>0).Average:0:1,' град.') end.
Тестовое решение 7 -9 -18 -8 14 -2 12 13 4 -18 13 -6 -8 6 -10 -8 20 -15 15 -2 17 20 19 -1 16 10 -7 9 -15 20 -20 Средняя температура в оттепели: 13.4 град.
Задача №2
// PascalABC.NET 3.1, сборка 1239 от 08.05.2016 // Также проверено в WDE: http://pascalabc.net/WDE begin var x:=ArrRandom(ReadInteger('m='),1,99); x.Println; var sn:=x.Where((x,i)->i.IsEven).Sum; var i:=1; while i<x.Length do begin x[i]:=sn; Inc(i,2) end; x.Println end.
1) const n=31; var a:array[1..n] of integer; i,s,k:integer; begin Randomize; for i:=1 to n do begin a[i]:=random(41)-20; write(a[i]:4); end; writeln; s:=0; k:=0; for i:=1 to n do if a[i]>0 then begin s:=s+a[i]; k:=k+1; end; writeln('Средняя температура дней с оттепелью = ',s/k:4:2); end.
Пример: -7 4 17-13 20 -8 12 11 15-17 -5 15-17 -4 14-12 3-20 6 -8-14 -8 18 17 6 -9 16 10 17 20-15 Средняя температура дней с оттепелью = 13.00
2) const m=10; var a:array[1..m] of integer; i,s:integer; begin Randomize; for i:=1 to m do begin a[i]:=random(21); write(a[i]:4); end; writeln; s:=0; for i:=1 to m do if i mod 2 = 1 then s:=s+a[i]; writeln('s = ',s); for i:=1 to m do if i mod 2 = 0 then a[i]:=s; for i:=1 to m do write(a[i]:4); writeln; end.
// PascalABC.NET 3.1, сборка 1239 от 08.05.2016
begin
var a:=ArrRandom(31,-20,20); a.Println;
Writeln('Средняя температура в оттепели: ',
a.Where(x->x>0).Average:0:1,' град.')
end.
Тестовое решение
7 -9 -18 -8 14 -2 12 13 4 -18 13 -6 -8 6 -10 -8 20 -15 15 -2 17 20 19 -1 16 10 -7 9 -15 20 -20
Средняя температура в оттепели: 13.4 град.
Задача №2
// PascalABC.NET 3.1, сборка 1239 от 08.05.2016
// Также проверено в WDE: http://pascalabc.net/WDE
begin
var x:=ArrRandom(ReadInteger('m='),1,99); x.Println;
var sn:=x.Where((x,i)->i.IsEven).Sum;
var i:=1;
while i<x.Length do begin x[i]:=sn; Inc(i,2) end;
x.Println
end.
Тестовое решение
m= 15
26 31 19 99 3 93 64 31 97 14 88 88 81 49 43
26 421 19 421 3 421 64 421 97 421 88 421 81 421 43
const n=31;
var a:array[1..n] of integer;
i,s,k:integer;
begin
Randomize;
for i:=1 to n do
begin
a[i]:=random(41)-20;
write(a[i]:4);
end;
writeln;
s:=0; k:=0;
for i:=1 to n do
if a[i]>0 then begin s:=s+a[i]; k:=k+1; end;
writeln('Средняя температура дней с оттепелью = ',s/k:4:2);
end.
Пример:
-7 4 17-13 20 -8 12 11 15-17 -5 15-17 -4 14-12 3-20 6 -8-14 -8 18 17 6 -9 16 10 17 20-15
Средняя температура дней с оттепелью = 13.00
2)
const m=10;
var a:array[1..m] of integer;
i,s:integer;
begin
Randomize;
for i:=1 to m do
begin
a[i]:=random(21);
write(a[i]:4);
end;
writeln;
s:=0;
for i:=1 to m do
if i mod 2 = 1 then s:=s+a[i];
writeln('s = ',s);
for i:=1 to m do
if i mod 2 = 0 then a[i]:=s;
for i:=1 to m do write(a[i]:4);
writeln;
end.
Пример:
14 9 0 8 6 2 2 16 1 16
s = 23
14 23 0 23 6 23 2 23 1 23