//Pascal ABC.NET Версия 2.2 Сборка 790 var ar:array[1..20] of integer; N,i:integer; begin; randomize; writeln('Array:'); for i:=1 to 20 do begin; ar[i]:=random(-30,30); //или Random(61)-30 в иных реализациях write(ar[i]:4); end; writeln; writeln('Combinations:'); for i:=1 to 19 do begin; write(ar[i]*ar[i+1]:6); if ar[i]*ar[i+1]<0 then inc(N); end; writeln; write('Result N:',N); end.
// PascalABC.NET 3.0, сборка 1088 const m=20; var a:array[1..m] of integer; i,n,p:integer; begin Randomize; Writeln('Элементы массива'); for i := 1 to m do begin a[i]:=Random(61)-30; Write(a[i],' ') end; Writeln(#13#10,'Попарные произведения'); n:=0; for i:=1 to m-1 do begin p:=a[i]*a[i+1]; Write(p,' '); if p<0 then Inc(n) end; Writeln(#13#10,'Количество произведений равно ',n) end.
Тестовое решение: Элементы массива 8 0 25 -17 14 -13 -5 -3 1 29 0 2 1 27 -6 -20 -19 -28 -7 -16 Попарные произведения 0 0 -425 -238 -182 65 15 -3 29 0 0 2 27 -162 120 380 532 196 112 Количество произведений равно 5
local password = ""
math.randomseed(os.time())
local sum = {"a", "b", "c", "d", "s", "w", "#", "S", "P", "R", "E", "q", "m"} --Тут символы которые будут встречаться в пароле
local countSum = 8 --длина пароля
for i = 1, countSum do
password = password..sum[math.random(1, #sum)]
end
print("Пароль: "..password)
Алгоритм таков:
Подбирается случайный символ из массива и складывается с другими символами, которые были уже сгенерированы.