Pascal процедура Randomize
Нужно что бы при генерировании были как положительные так и отрицательные числа, подскажите как это сделать. Заранее спасибо.
Нужно что бы при генерировании были как положительные так и отрицательные числа, подскажите как это сделать. Заранее спасибо.
random(101) - 50; -- псевдослучайные числа от -50 до 50, все, больше ничего не надо
В общем случае, псевдослучайные числа от min, до max:
random(max - min + 1) + min;
> Можно вторым рэндомом генерировать знак
> // Если случайное число в диапазоне до 10 меньше либо равно 5, то умножаем на
> // -1 - получаем отрицательное число.
Видно грибы в лесах поспели.
надо написать так:
uses Crt;
begin
Randomize;
repeat
{ Выводим текст случайными цветами }
TextAttr := Random(256);
Write('!');
until KeyPressed;
end.
Можно вторым рэндомом генерировать знак
function Randomi(const aMax : Integer) : Integer;
begin
Randomize();
Result := Random(aMax);
// Если случайное число в диапазоне до 10 меньше либо равно 5, то умножаем на
// -1 - получаем отрицательное число.
if ( Random(10) <= 5 ) then
Result := Result * (-1);
end;
2 Randomize: 1 - выбирает число, а второй (0-4)например если >2 то множ 1 рандом на минус 1, ну возможно сильно намудрено описал ))
Можно добавить цикл с рандом еще один. Например, от 1 до 3. Если четное, то домножать на -1. Или еще как искусственно...
randomize;
x:= randome(10) - 5;
х будет лежать от -5 до 4