Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2009, 19:31   #1
Seran4ek
Пользователь
 
Регистрация: 14.10.2009
Сообщений: 94
По умолчанию Random. отрицательные и положительные числа

Пожалуйста, подскажите, как генерировать случайные положительные и отрицательные числа?
RandomRange конечно хорош, но он генерит целые числа. да, могу я и с ним поработать через коэфициенты, но есть ли способы полегче?
Seran4ek вне форума Ответить с цитированием
Старый 12.12.2009, 19:39   #2
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Вот пример:
Код:
procedure TForm1.Button3Click(Sender: TObject);
var
 b: boolean;
begin
 b := boolean(random(2)); //Случайно выбираем, добавится положительное или отрицательное число
 if b then memo1.Lines.Add(IntToStr(random(1000)))
 else memo1.Lines.Add(IntToStr(-random(1000)));
end;
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 12.12.2009, 19:40   #3
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Генерите два числа и делите друг на друга - получите вещественные...
mihali4 вне форума Ответить с цитированием
Старый 12.12.2009, 19:45   #4
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Ну, насколько я помню паскаль, существует еще и Random - даст 0<X<1 и еще Random*X - Даст вещественное число от 0 до 55.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 12.12.2009, 19:47   #5
Seran4ek
Пользователь
 
Регистрация: 14.10.2009
Сообщений: 94
По умолчанию

Neeter
очень интересный метод.
я вот хотел создать массив со знаком + и минус и через рандомрэндж выбирать позицию элемента в массиве.
но у вас чуть по проще будет.

но тут меня осинило.
RandomRange(-100,100)/100;
впринципе это тот же рандом от 0 до 1, ток генерит и отрицательные))

всем спасибо)
Seran4ek вне форума Ответить с цитированием
Старый 26.03.2011, 17:28   #6
kornei
Новичок
Джуниор
 
Регистрация: 26.03.2011
Сообщений: 1
По умолчанию

Seran4ek
а не легче через (random(a)-a/2) где вместо а числа?
kornei вне форума Ответить с цитированием
Старый 17.03.2014, 22:45   #7
Tanushangel
 
Регистрация: 17.03.2014
Сообщений: 3
По умолчанию Random не выводит отрицательные числа.

Я завожу в код:
A[i]:=random(100)-50+random(10000)/10000;
А оно закрывает экзешник и говорит что так и было, что делать?
Tanushangel вне форума Ответить с цитированием
Старый 17.03.2014, 22:56   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

что значит - "закрывает экзешник"?! Вообще никаких ошибок не выдаёт?
А не должна закрывать?
Давайте полностью код вашей программы, будет повод для разговора!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 18.03.2014, 17:35   #9
Tanushangel
 
Регистрация: 17.03.2014
Сообщений: 3
По умолчанию

К сожалению, того кода уже нет( Я поговорила с преподавателем и узнала, что мне рандом вообще не нужен)
Tanushangel вне форума Ответить с цитированием
Старый 18.03.2014, 17:55   #10
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,499
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Генерите два числа и делите друг на друга - получите вещественные...
Если X, Y - независимые равномерно распределенные случайные числа, то Z = X/Y - тоже случайное, но распределение совсем не равномерное.
type_Oleg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему не отбрасывает отрицательные ??? pavel42 Помощь студентам 3 29.04.2009 17:48
Отсортировать отрицательные элементы Cdevelop Общие вопросы C/C++ 5 18.03.2009 22:31
Составить программу которая будет сортировать все положительные элементы Wast Паскаль, Turbo Pascal, PascalABC.NET 1 22.12.2008 15:56
ДАНЫ 4 ЧИСЛА X Y Z W составит программу найти произведение все положительные нечетные числа Woland-itn Паскаль, Turbo Pascal, PascalABC.NET 3 23.03.2008 21:49
в начале все отрицательные, затем все положительные элементы в матрице motaro Паскаль, Turbo Pascal, PascalABC.NET 2 07.03.2008 19:16