Delphi. Учимся на примерах | страница 54



>end;


>procedure TForm1.question_seleсt();

>label ran; //метка ran для быстрого перехода

>begin

> Randomize;

>ran:

> a:=Random(n); //выбираем случайный вопрос из базы

> //проверяем: не задавали ли мы этот вопрос ранее

> for i:=1 to n do

>  if mass[i] = a then goto ran;

> for i:=1 to n do

>  if mass[i] = 0 then begin

>   mass[i]:= а; {записываем номер вопроса, чтобы не задавать его больше }

>   Break;

>  end;

> //сбрасываем флажки со всех вариантов ответов

> an1.Checked:= False;

> an2.Checked:= False;

> an3.Checked:= False;

> an4.Checked:= False;

>end;


>procedure TForm1.verno();

>begin

> if an1.Checked then

>  if yes = an1.Caption then balls:= balls + 1;

> if an2.Checked then

>  if yes = an2.Caption then balls:= balls + 1;

> if an3.Checked then

>  if yes = an3.Caption then balls:= balls + 1;

> if an4.Checked then

>  if yes = an4.Caption then balls:= balls + 1;

>end;


>procedure TForm1.N2Click(Sender: TObject);

>begin

> Randomize;

> //начинаем обзор с текущего каталога

> Open1.InitialDir:= GetCurrentDir;

> if not Open1.Execute then ShowMessage('Вы не выбрали файл!')

> else begin

>  ss:= Open1.FileName; //открываем выбранный файл

>  zz:= ss; //запоминаем путь к базе

>  start(); //начинаем тест

> end;

>end;


>procedure TForm1.FormCreate(Sender: TObject);

>begin

> Randomize;

> //получаем каталог, в котором находится наша программа

> dir:= GetCurrentDir;

> ss:= dir + '\comp.ini'; //путь к базе вопросов

> zz:= ss;

> start(); //начинаем тест

>end;


>procedure TForm1.p1Click(Sender: TObject);

>begin

> Label1.Caption:= 'Второй вопрос:';

> verno(); //принимаем вариант ответа

> p1.Visible:= False; //убираем первую панель

> р2.Visible:=True; //активизируем вторую панель

> vopr:= Random(4) +1; //выбираем случайный вариант ответа

> vars(vopr); //задаем вопрос

>end;


>procedure TForm1.p2Click(Sender: TObject);

>begin

> Label1.Caption:= 'Третий вопрос:';

> verno();

> p2.Visible:= False;

> p3.Visible:= True;

> vopr:= Random(4) + 1;

> vars(vopr);

>end;


>procedure TForm1.p3Click(Sender: TObject);

>begin

> Label1.Caption:= 'Четвертый вопрос:';

> verno();

> р3.Visible:= False;

> p4.Visible:= True;

> vopr:= Random(4) + 1;

> vars(vopr);

>end;

>procedure TForm1.p4Click(Sender: TObject);

>begin

> Label1.Caption:= 'Пятый вопрос:';

> verno();

> p4.Visible:= False;

> p5.Visible:= True;

> vopr:= Random(4) + 1;

> vars(vopr);

>end;


>procedure TForm1.p5Click(Sender: TObject);

>begin

> //проверяем правильность ответа на последний вопрос

> verno() ;

> //узнаем, сколько баллов набрал пользователь

> ss:= IntToStr(balls);

> //делаем почти все компоненты невидимыми

> Memo1.Visible:= False;