Составьте программу ,которая заполняет массив b[1..15 ] случайными целыми числами в...

0 голосов
50 просмотров

Составьте программу ,которая заполняет массив b[1..15 ] случайными целыми числами в диапозоне от 1 до 20 и выводит все тройки элементов , упорядоченные строго по возрастанию.


Информатика (360 баллов) | 50 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
PascalABC.NET 3.2, сборка 1374 от 10.01.2017
Внимание! Если программа не работает, обновите версию!

begin
  var n:=15;
  var a:=ArrRandom(n,1,20); a.Println;
  var i:=0;
  repeat
    for var j:=i+1 to n-2 do begin
      if (a[j]>a[i]) and (a[j+1]>a[j]) then begin
        Println(a[i],a[j],a[j+1]);
        i+=1
        end
      else begin i+=1; break end
      end
  until i>=n-3
end.

Пример
2 8 17 11 16 13 15 7 12 9 3 10 15 19 20
2 8 17
3 10 15
10 15 19
15 19 20
(150k баллов)
0 голосов

Program triples;
const
RAND_F = 1;
RAND_T = 20;
var
b: array[1..15] of integer;
t: array[1..3] of integer;
i, j, max, max_i, tmp: integer;
begin
randomize;
for i := 1 to 15 do
b[i] := random(RAND_T) + RAND_F;
i := 1;
while i < 15 do
begin
t[1] := b[i];
t[2] := b[i+1];
t[3] := b[i+2];
max := t[1];
for j := 2 to 3 do
if t[j] > max then
begin
max := t[j];
max_i := j;
end;
tmp := t[3];
t[3] := max;
t[max_i] := tmp;
if t[2] < t[1] then
begin
tmp := t[2];
t[2] := t[1];
t[1] := tmp;
end;
write('Числа ', i, '-', i + 2, ': ');
writeln(t[1], ' ', t[2], ' ', t[3]);
i := i + 3;
end;
end.

(7.2k баллов)