PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var (sn,pp,kp):=(0,1,0); var n:integer; repeat Read(n); if (n<0) and n.IsOdd then sn+=n else if (n>0) and (n mod 3=0) then begin pp*=n; kp+=1 end until n=0; if sn=0 then begin Writeln('Нет отрицательных нечетных чисел'); if kp=0 then Writeln('Нет положительных чисел, кратных 3') else Writeln('Произведение положительных чисел, кратных 3: ',pp) end else begin Writeln('Сумма отрицательных нечетных чисел: ',sn); if kp=0 then Writeln('Нет положительных чисел, кратных 3') else Writeln('Произведение положительных чисел, кратных 3: ',pp) end end.
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var A:=MatrGen(6,7,(i,j)->Sin(i+1)+Cos(3*(j+1))); A.Println(10,6); Writeln(70*'-'); var B:=A.ElementsWithIndexes.Where(t->t[1].IsEven and t[2].IsEven) .Select(t->t[0]).ToArray; B.Println; var m:=B.Where(t->t>0).DefaultIfEmpty.Average; Writeln('Искомое среднее равно ',m); var f:=OpenWrite('MyFile.txt'); for var i:=0 to A.RowCount-1 do begin for var j:=0 to A.ColCount-1 do Write(f,A[i,j],' '); Writeln(f); end; Writeln(f); for var i:=0 to B.Length-1 do Write(f,B[i],' '); f.Close; end.
Внимание! Если программа не работает, обновите версию!
begin
var (sn,pp,kp):=(0,1,0);
var n:integer;
repeat
Read(n);
if (n<0) and n.IsOdd then sn+=n
else
if (n>0) and (n mod 3=0) then begin pp*=n; kp+=1 end
until n=0;
if sn=0 then begin
Writeln('Нет отрицательных нечетных чисел');
if kp=0 then Writeln('Нет положительных чисел, кратных 3')
else Writeln('Произведение положительных чисел, кратных 3: ',pp)
end
else begin
Writeln('Сумма отрицательных нечетных чисел: ',sn);
if kp=0 then Writeln('Нет положительных чисел, кратных 3')
else Writeln('Произведение положительных чисел, кратных 3: ',pp)
end
end.
Пример
-367 23 62 7 12 -24 90 152 -63 0
Сумма отрицательных нечетных чисел: -430
Произведение положительных чисел, кратных 3: 1080
Внимание! Если программа не работает, обновите версию!
begin
var A:=MatrGen(6,7,(i,j)->Sin(i+1)+Cos(3*(j+1)));
A.Println(10,6); Writeln(70*'-');
var B:=A.ElementsWithIndexes.Where(t->t[1].IsEven and t[2].IsEven)
.Select(t->t[0]).ToArray;
B.Println;
var m:=B.Where(t->t>0).DefaultIfEmpty.Average;
Writeln('Искомое среднее равно ',m);
var f:=OpenWrite('MyFile.txt');
for var i:=0 to A.RowCount-1 do begin
for var j:=0 to A.ColCount-1 do
Write(f,A[i,j],' ');
Writeln(f);
end;
Writeln(f);
for var i:=0 to B.Length-1 do Write(f,B[i],' ');
f.Close;
end.