Сформировать массив случайных чисел (язык Паскаль)
Будем получать случайное целое число функцией random из промежутка [-30, 70].
В цикле for для счетчика k от 1 до N будем получать случайное число и присваивать его ячейке массива a[k], значение ячейки будем выводить на экран оператором write(a[k],' ')
Программа решения на языке Паскаль
var a:array[1..100] of integer;
k,N:integer;
begin
write('Введите количество элементов массива N=');
readln(N);
for k:=1 to N do
begin
a[k]:=random(-30,70);
write(a[k],' ');
end;
end.
Результат выполнения программы
А как сформировать массив из 5 случайных неповторяющихся чисел?
Напишите программу в комментариях.
label vvod;
ОтветитьУдалитьvar a:array[1..100] of integer; k:integer;
begin
a[1]:=0;
a[2]:=0;
a[3]:=0;
a[4]:=0;
a[5]:=0;
for k:=6 to 10 do
begin
vvod:a[k]:=random(7);
if ((a[k]=a[k-1]) or (a[k]=a[k-2]) or (a[k]=a[k-3]) or (a[k]=a[k-4]) or (a[k]=a[k-5])) then goto vvod;
end;
for k:=6 to 10 do
begin
write (a[k],' ');
end;
end.
Можно ли так сделать?
А если, элементов массива более 5 ?
УдалитьРешить задачу помогут множества
Удалитьhttps://reshupascal.blogspot.com/2022/02/mnozhestva-v-yazyke-paskal-opisanie-hranenie-operacii-vyvod-ispolzovanie.html