Я писал программу в Паскале ABC для произвольного промежутка [a:b] и для произвольного количества случайных чисел. В качестве примера я взял промежуток [1:3] , в данном интервале могут быть только числа 1,2 и 3, но когда я проверял мне даже выдавало 0.
Посмотрите, может в мою программу закралась ошибка
program m_1;
var n, k1, x, max, min: integer;
begin
randomize;
writeln ('Случайные числа из интервала [a;b]');
write ('Введи минимальное значение интервала - ');
read (min);
write ('Введи максимальное значение интервала - ');
read (max);
write ('Введи кол-во случайных чисел - ');
read (n);
k1:=0;
repeat
if (n>=0) then k1:=k1+1;
x:=random((max-min+1)+min);
writeln (x);
until k1=n;
end.