//Задача 1
begin
var a := ArrRandom(20, -20, 20).Println;
Println(a.Min, ' ', a.Max);
end.
//Задача 2
begin
var a := ReadArrInteger(10);
a.Where(p -> p.IsOdd).Count.Println;
end.
//Задача 3
begin
SeqGen(90, 10, x -> x + 1).Where(x -> x mod 3 = 0).Println;
end.
//Задача 4
begin
ArrRandom(10,-20,20).Println;
end.
//Задача 5
begin
var (a, b) := ReadInteger2;
Range(a, b).Product.Println
end.
//Задача 4
var
n, i, sum, count: integer;
begin
Writeln('Введите число: ');
Readln(n);
count := 0;
while n <> 0 do
begin
i := n mod 10;
sum += i;
count += 1;
n := n div 10;
end;
Writeln('Сумма цифр: ', sum);
Writeln('Количество: ', count);
end.
//Задача 7
var
n, i, sum, count: integer;
begin
Writeln('Введите число: ');
Readln(n);
count := 0;
while n <> 0 do
begin
i := n mod 10;
if not Odd(i) then count += 1;
n := n div 10;
end;
if count <> 0 then Writeln('True')
else Writeln('False');
end.
Задача 8
begin
var n := ReadInteger;
for var i := 1 to n do
begin
Println('Я НЕ учусь программировать');
end;
end.
//Задача 1
begin
var a := ArrRandom(20, -20, 20).Println;
Println(a.Min, ' ', a.Max);
end.
//Задача 2
begin
var a := ReadArrInteger(10);
a.Where(p -> p.IsOdd).Count.Println;
end.
//Задача 3
begin
SeqGen(90, 10, x -> x + 1).Where(x -> x mod 3 = 0).Println;
end.
//Задача 4
begin
ArrRandom(10,-20,20).Println;
end.
//Задача 5
begin
var (a, b) := ReadInteger2;
Range(a, b).Product.Println
end.
//Задача 4
var
n, i, sum, count: integer;
begin
Writeln('Введите число: ');
Readln(n);
count := 0;
while n <> 0 do
begin
i := n mod 10;
sum += i;
count += 1;
n := n div 10;
end;
Writeln('Сумма цифр: ', sum);
Writeln('Количество: ', count);
end.
//Задача 7
var
n, i, sum, count: integer;
begin
Writeln('Введите число: ');
Readln(n);
count := 0;
while n <> 0 do
begin
i := n mod 10;
if not Odd(i) then count += 1;
n := n div 10;
end;
if count <> 0 then Writeln('True')
else Writeln('False');
end.
Задача 8
begin
var n := ReadInteger;
for var i := 1 to n do
begin
Println('Я НЕ учусь программировать');
end;
end.
uses
System.Text.RegularExpressions;
begin
var s:=' - 32 / - 21 ';
s:=RegEx.Replace(s,'\s','');
var a:=RegEx.Matches(s,'(-{0,1}\d+)|[\+\-\*/]');
var n:=a.Count;
var x,y:integer;
var c:char;
case n of
3:begin
x:=StrToInt(a[0].ToString); y:=StrToInt(a[2].ToString);
c:=a[1].ToString[1]
end;
2:begin
x:=StrToInt(a[0].ToString); var s1:=a[1].ToString;
c:=s1[1]; s1[1]:='0'; y:=StrToInt(s1)
end;
else
begin Writeln('Недопустимое выражение'); exit end
end;
WriteFormat('{0} {1} {2} = ',x,c,y);
case c of
'+':Writeln(x+y);
'-':Writeln(x-y);
'*':Writeln(x*y);
'/':Writeln(x/y)
end
end.
Тестовое решение:
-32 / -21 = 1.52380952380952
// PascalABC.NET 3.0, сборка 1128
begin
var s:='4km-549_ffb)5)6';
var t:=s.Where(x->x in ['0'..'9']).JoinIntoString('');
var n:int64;
if TryStrToInt64(t,n) then Writeln(2*n)
else Writeln('Не удалось выделить число')
end.
Тестовое решение:
909912