Задача 12 урок 15
Primary tabs
Задача 12 урок 15
Напишите программу, которая будет заполнять массив из 10 элементов случайными числами из диапазона от 0 до 20, при этом в полученном массиве не должно быть одинаковых значений.
type myArr = array[1..10] of integer;
var a: myArr;
i, h, c, s, f, z: integer;
begin
z:=0; //счетчик попыток
f:=0; //счетчик совпадений
c:=0; //промежуточная
s:=1; // счетчик заполненых элементов массива
randomize();
for i:=low(a) to high(a) do //заполняем массив
begin
if i = 1 then
a[i]:= random(20) //первое без проверки
else
begin
repeat
f:=0;
c := random(20);
for h:=1 to s do
if c = a[h] then
f := f+1; //если от 1 до s итераций
z:=z+1; //есть совпадения, крутим
until (f=0) ; //снова пока НЕ подберем
a[i]:=c;
s:=s+1;
end;
end;
for i:=low(a) to high(a) do //цикл вывода результата
write('| ',a[i]);
writeln('|');
writeln(z, 'iterac'); //сколько потребовалось циклов
readln();
end.- Log in to post comments
- 1047 reads