Урок 15 Задача 13

Урок 15 Задача 13

Напишите программу, которая будет заполнять массив из 10 элементов случайными числами из диапазона от 0 до 20, при этом в полученном массиве не должно быть одинаковых значений.

Решение:

program u15z13;
type newArr = array [1..10] of integer;
var i,j,k,n:integer;
  a:newArr;

procedure writeArr(arr:newArr);
begin
  for i:=low(arr) to high(arr) do
    write(arr[i],'|');
end;

procedure rndArr(arr:newArr);
begin
  randomize;
  for i:=1 to high(a) do
  begin
    a[i]:=random(21);
    j:=0;
      while j<i do
      begin
        if a[i]=a[j] then
        begin
          a[i]:=random(21);
          j:=0;
        end
        else
          j:=j+1;
      end;
  end;
end;

begin
  rndArr(a);
  writeArr(a);
  readln();
end.

Консоль:

7|0|5|4|9|2|12|6|10|16|