ОИ
Ольга Ильина

Random отрицательного числа в паскале

Сначала хочу напомнить, что random отрицательного числа дает числа в диапозоне от (заданного+1) до -1. Например: random(-5) от -4 до -1.
Но почему random(-2147483648) дает ещё отрицательные значения. -2147483648 это low(Longint ). А если уменьшить на 1, то уже положительные:
random(-2147483649), и так до самой low(int64)????

Для справки: random(0)=0
random(-1)=0
random(-2)=-1
random(-3)=от -2 до -1 и так далее.

Сергей
Сергей

я не знаток паскакаля, но скорее всего у тебя переполнение числа случается

Aza Yuldashev
Aza Yuldashev

А почему ты к отрицательному числу ПРИБАВИЛА 1 и получила еще МЕНьШЕЕ число, ась?

ОК
Оксана Кляницкая

integer overflow - используйте функцию с int64

PS. И, судя по всему, вы используете random не по делу.
Раз воткнулись в ограничение.

Похожие вопросы
объясните как найти факториал числа в паскале!
Паскаль! .В числовом файле выбрать отрицательные числа, найти их сумму и записать в конец файла.
отрицательная степень в паскале
решить задачу в паскале случайным числом!
Паскаль (нахождение цыфр в числе)
Как работает random в програмировании. Расскажите алгоритм, каким образом он подбирает числа.
Паскаль. Даны четыре целых числа. Найти произведение положительных и отрицательных чисел.
Delphi. Как сделать, чтобы random(...) генерировал не случайные числа из диапазона...
Паскаль Как обозначить число>=x>число в паскале?
Turbo Pascal, как узнать какое число выбрал random(100);