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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2011, 05:38   #1
mactepmac
Пользователь
 
Регистрация: 20.06.2011
Сообщений: 31
Восклицание Случайное число

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    procedure Label1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  result: integer;

implementation

{$R *.dfm}

procedure TForm1.Label1Click(Sender: TObject);
begin
   result := random(15);
Label1.Caption:=inttostr(result);
end;

Простейшая программа. Формирует случайное число от 0 до 15. Суть проблемы в следующем. При запуске программы нажимаешь на метку и появляется случайное число, нажимаешь еще и следующее случайное число появляется. Если закрыть программу и заного ее запустить, то при последовательных кликах на метке будет появляется такая же последовательность 'случайных' чисел. В итоге получается что последовательность случайных чисел одна и таже. Как избавиться от этого эффекта?
mactepmac вне форума Ответить с цитированием
Старый 22.06.2011, 06:15   #2
ZvEr_HaCkEr
VisualC++/DirectX
Форумчанин
 
Аватар для ZvEr_HaCkEr
 
Регистрация: 16.07.2010
Сообщений: 831
По умолчанию

Randomize;
ZvEr_HaCkEr вне форума Ответить с цитированием
Старый 22.06.2011, 06:31   #3
mactepmac
Пользователь
 
Регистрация: 20.06.2011
Сообщений: 31
По умолчанию

это на каком языке? на тарабарском?
mactepmac вне форума Ответить с цитированием
Старый 22.06.2011, 06:38   #4
ZvEr_HaCkEr
VisualC++/DirectX
Форумчанин
 
Аватар для ZvEr_HaCkEr
 
Регистрация: 16.07.2010
Сообщений: 831
По умолчанию

Код:
procedure TForm1.Label1Click(Sender: TObject);
begin
Randomize;
   result := random(15);
Label1.Caption:=inttostr(result);
end;
ZvEr_HaCkEr вне форума Ответить с цитированием
Старый 22.06.2011, 08:17   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

только я бы рекомендовал всё же вызов иницилизации счётчика
Randomize;

как и рекомендуюется - производить один раз при запуске программы.

В Delphi для этого отлично подходит событие на создание формы OnCreate
(двойной щелчёк лев.кнопкой мышки по самой форме) и можно писать код...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 22.06.2011, 09:58   #6
mactepmac
Пользователь
 
Регистрация: 20.06.2011
Сообщений: 31
По умолчанию

вот теперь все понятно. спс
mactepmac вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Случайное число rommster Общие вопросы C/C++ 13 09.10.2010 15:11
Случайное число. Alex Cones Свободное общение 27 06.06.2010 09:54
случайное число Дініс Общие вопросы C/C++ 3 07.10.2009 23:03
Случайное число Altera Общие вопросы Delphi 4 05.02.2008 22:22
Как згенерировать случайное число SeRhy Помощь студентам 2 25.11.2007 20:27