Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Тест, проблема с RENDOMIZE [D6, XP]


REvAN ©   (2006-01-04 16:40:00) 

Помогите!!! Все вроди получилось, считывает, сравнивает,считает... Но хотелось бы что бы вопросы появлялись в хаотичном порядке, т.е. каждый раз по разному, незнаю как это сделать, наверное что-то связанное с RENDOMIZE :(
Вот код:

var Form1: TForm1; a: string; i,j,s :byte; k: integer;implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);begink:=0;Memo1.Lines.LoadFromFile('1.txt');   // Загружаем вопросы, отв,, прав. отв.Memo2.Lines.LoadFromFile('2.txt');Memo3.Lines.LoadFromFile('3.txt');end;
procedure TForm1.Button1Click(Sender: TObject);  /// выбрать и ответить
begin//проверяем какой вариант был выбран
if RadioButton1.Checked=true then a:=radiobutton1.caption;
if RadioButton2.Checked=true then a:=radiobutton2.caption;
if RadioButton3.Checked=true then a:=radiobutton3.caption;
if RadioButton4.Checked=true then a:=radiobutton4.caption;
for s:=1 to 10 do beginif a=memo3.Lines[s] then begin
inc(k);
end;
end;
Label1.Caption:=Memo1.Lines[j+1];
RadioButton1.Caption:=Memo2.Lines[1+(4*i)];
RadioButton2.Caption:=Memo2.Lines[2+(4*i)];
RadioButton3.Caption:=Memo2.Lines[3+(4*i)];
RadioButton4.Caption:=Memo2.Lines[4+(4*i)];
edit1.Text:=IntToStr(k);inc(j);inc(i);end;
procedure TForm1.Button2Click(Sender: TObject);  //// кнопка начать тест
beginLabel1.Caption:=Memo1.Lines[j+1];
RadioButton1.Caption:=Memo2.Lines[1+(4*i)];
RadioButton2.Caption:=Memo2.Lines[2+(4*i)];
RadioButton3.Caption:=Memo2.Lines[3+(4*i)];
RadioButton4.Caption:=Memo2.Lines[4+(4*i)];
edit1.Text:=IntToStr(k);
inc(j);
inc(i);
end;
end.


КиТаЯц   (2006-01-05 10:14:00) [1]

Не уверен, что правильно понял вопрос, но, все таки, попытаюсь...


var SkolkoVoprosov: array of boolean;
...
procedure TForm1.LoadTest(Sender: TObject);
 var i, j, Vse: integer;
begin
 Randomize;
 I:= количество вопросов всего;
 Vse:= 0;
 SetLength(SkolkoVoprosov, i);
   for i:= 0 to Length(SkolkoVoprosov) // на всякий случай (повторная загрузка)
     do SkolkoVoprosov[i]:= False;
   repeat // крутимся в цикле пока не загрузим все вопросы
     j:= Random(Length(SkolkoVoprosov)); // ВОТ ТА САМАЯ R ENDOMIZE ))
     if not (SkolkoVoprosov[j] = True) // если вопрос еще НЕ грузили
       then begin
         SkolkoVoprosov[j]:= True; // отмечаем, что вопрос загружен
         inc(Vse); // счетчик количества загруженных
         Zagruzit; //и здесь загружаем вопрос;
       end;
   until Vse = Length(SkolkoVoprosov); // загрузили столько сколько было надо выходим из цикла
end;

procedure Zagruzit;
begin
...
end;


Код не проверял, но надеюсь поможет...
Очень надеюсь... ;)


Кефир87   (2006-01-05 01:19:00) [2]

В отличии от остальных, хочу выяснить что такое Rendomize 8))


Алхимик   (2006-01-05 00:50:00) [3]


> мне нужно сделать появление вопросов с помощью Rendomize,

As you wish, так сказать...
procedure R endomize;
begin
  R andomize;
end;


Zeqfreed   (2006-01-05 00:47:00) [4]

Revan   (05.01.06 0:37) [7]

> нужно сделать появление вопросов с помощью Rendomize


procedure DisplayQuestion();
begin
// <-- Здесь Ваш код.
end;

procedure Rendomize();
begin
DisplayQuestion();
end;


Использовать так:

Rendomize();

или так:

Rendomize;

в некоторых случаях допустим такой вариант:

Rendomize

P.S. O:-)


Revan   (2006-01-05 00:37:00) [5]

Просто скопировал код с форума, он нормально отформатирован, после копирования так получилось :(, я его уже выбрасывал раньше на форум. Да и дело не в форматировании, мне нужно сделать появление вопросов с помощью Rendomize, вот я и спрашиваю как это осуществить.


Кефир87   (2006-01-04 21:40:00) [6]

Надеюсь с этим человеком не буду работать в команде или над одним прэктом 8)


Virgo_Style   (2006-01-04 21:27:00) [7]

Кефир87 ©   (04.01.06 19:24) [3]

Думаешь, можно так с самого начала писать? Я б не смог. Хотя кто знает...


begin...end   (2006-01-04 19:28:00) [8]

> REvAN   (04.01.06 16:40)

"У меня от Вас появляются седые волосы" (с) моя школьная учительница физики


Кефир87   (2006-01-04 19:24:00) [9]


> Virgo_Style ©   (04.01.06 18:53) [1]
>
> Если мне скажут, что можно форматировать код еще хуже, я
> едва ли

Где сдесь форматирование?! 8))
А про R andomize тут ваще нет 8)


Gero   (2006-01-04 19:23:00) [10]

Этот код не скомпилируется.

> считывает, сравнивает,считает

Что она считывает, сравнивает, считает?

> Тест, проблема с RENDOMIZE

Я только не понял в каком месте «проблема с RENDOMIZE».


Virgo_Style   (2006-01-04 18:53:00) [11]

Если мне скажут, что можно форматировать код еще хуже, я едва ли поверю


Наверх

Титульная страница Поиск, карта сайта Написать письмо