<u>PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
begin
Writeln('*** Исходный массив ***');
var k:=4;
var a:=MatrRandom(k+1,k+1,-99,99);
for var i:=0 to k do a[i,i]:=-1;
a.Println(4); Writeln(4*k*'-');
var s:=a.ElementsByRow; // последовательность, памяти не занимает
Writeln('Количество элементов, оканчивающихся на ноль: ',
s.Where(t->t mod 10=0).Count);
Writeln('Количество отрицательных элементов: ',
s.Where(t->t<0).Count);
Writeln('Количество нулевых элементов: ',
s.Where(t->t=0).Count);
Write('Сумма элементов побочной лиагонали: ');
var sum:=0;
for var i:=0 to k do sum+=a[i,4-i];
Writeln(sum)
end.
Вступление:
1) trunc- получает целое из числа
2) round - округляет до ближайшего целого(банковское округление, если число стоит посредине между двумя целыми 2.5=2; 3.5=4, то есть до ближайшего четного)
3) a div b - делит a/b и возвращает целую часть
4) a mod b - делит a/b и возвращает остаток
5) sin - синус числа
Теперь к заданиям:
trunc(6.9)=6
trunc(6.2)=6
20 div 6=3
2 div 5=0
round(6.9)=7
round(6.2)=6
20 mod 6=2
2 mod 5=2
3*7 div 2 mod 7/3-trunc(sin(1))=1
1)3*7=21
2)21 div 2=10
3)10 mod 7=3
4)3/3=1
5)sin(1)=0,с мелочью
6)trunc(0,...)=0
7)1-0=1
Открыть,изменить,копировать,вставить ,удалить