Форум: "Начинающим";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
ВнизТест, проблема с RENDOMIZE Найти похожие ветки
← →
REvAN (2006-01-04 16:40) [0]Помогите!!! Все вроди получилось, считывает, сравнивает,считает... Но хотелось бы что бы вопросы появлялись в хаотичном порядке, т.е. каждый раз по разному, незнаю как это сделать, наверное что-то связанное с 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.
← →
Virgo_Style © (2006-01-04 18:53) [1]Если мне скажут, что можно форматировать код еще хуже, я едва ли поверю
← →
Gero © (2006-01-04 19:23) [2]Этот код не скомпилируется.
> считывает, сравнивает,считает
Что она считывает, сравнивает, считает?
> Тест, проблема с RENDOMIZE
Я только не понял в каком месте «проблема с RENDOMIZE».
← →
Кефир87 © (2006-01-04 19:24) [3]
> Virgo_Style © (04.01.06 18:53) [1]
>
> Если мне скажут, что можно форматировать код еще хуже, я
> едва ли
Где сдесь форматирование?! 8))
А про Randomize тут ваще нет 8)
← →
begin...end © (2006-01-04 19:28) [4]> REvAN (04.01.06 16:40)
"У меня от Вас появляются седые волосы" (с) моя школьная учительница физики
← →
Virgo_Style © (2006-01-04 21:27) [5]Кефир87 © (04.01.06 19:24) [3]
Думаешь, можно так с самого начала писать? Я б не смог. Хотя кто знает...
← →
Кефир87 © (2006-01-04 21:40) [6]Надеюсь с этим человеком не буду работать в команде или над одним прэктом 8)
← →
Revan (2006-01-05 00:37) [7]Просто скопировал код с форума, он нормально отформатирован, после копирования так получилось :(, я его уже выбрасывал раньше на форум. Да и дело не в форматировании, мне нужно сделать появление вопросов с помощью Rendomize, вот я и спрашиваю как это осуществить.
← →
Zeqfreed © (2006-01-05 00:47) [8]Revan (05.01.06 0:37) [7]
> нужно сделать появление вопросов с помощью Rendomizeprocedure DisplayQuestion();
begin
// <-- Здесь Ваш код.
end;
procedure Rendomize();
begin
DisplayQuestion();
end;
Использовать так:Rendomize();
или так:Rendomize;
в некоторых случаях допустим такой вариант:Rendomize
P.S. O:-)
← →
Алхимик © (2006-01-05 00:50) [9]
> мне нужно сделать появление вопросов с помощью Rendomize,
As you wish, так сказать...procedure Rendomize;
begin
Randomize;
end;
← →
Кефир87 © (2006-01-05 01:19) [10]В отличии от остальных, хочу выяснить что такое Rendomize 8))
← →
КиТаЯц © (2006-01-05 10:14) [11]Не уверен, что правильно понял вопрос, но, все таки, попытаюсь...
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)); // ВОТ ТА САМАЯ RENDOMIZE ))
if not (SkolkoVoprosov[j] = True) // если вопрос еще НЕ грузили
then begin
SkolkoVoprosov[j]:= True; // отмечаем, что вопрос загружен
inc(Vse); // счетчик количества загруженных
Zagruzit; //и здесь загружаем вопрос;
end;
until Vse = Length(SkolkoVoprosov); // загрузили столько сколько было надо выходим из цикла
end;
procedure Zagruzit;
begin
...
end;
Код не проверял, но надеюсь поможет...
Очень надеюсь... ;)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.05 c