Как можно её решить? Вот целый код, полностью если что:
Код:
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Button9: TButton;
CheckGroup1: TCheckGroup;
CheckGroup2: TCheckGroup;
CheckGroup3: TCheckGroup;
CheckGroup4: TCheckGroup;
Label10: TLabel;
Label12: TLabel;
Label14: TLabel;
Label2: TLabel;
Label4: TLabel;
Label6: TLabel;
Label8: TLabel;
Memo1: TMemo;
RadioGroup1: TRadioGroup;
RadioGroup2: TRadioGroup;
RadioGroup3: TRadioGroup;
procedure Button1Click(Sender: TObject);
procedure result(k:integer);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
k,j:integer;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
var
Filename:string;
begin
Filename:=Application.ExeName;
Close;
WinExec(PChar(FileName),SW_SHOW);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Close;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Button3.Enabled:= False;
if (CheckGroup1.Checked[3])or (checkGroup1.checked[1])
and not (CheckGroup1.Checked[0])
and not (CheckGroup1.Checked[2])
and not (CheckGroup1.Checked [4])
then begin
label2.visible:=true;
label2.caption:='Подумай ещё.' + #10#13 +'Ты на верном пути';
end
else
If (CheckGroup1.Checked[0]) or
Not(CheckGroup1.Checked[1]) or
(CheckGroup1.Checked[2])or
not (CheckGroup1.Checked[3])or
(CheckGroup1.Checked[4])
then
begin
Label2.vISIBLE:=True;
Label2.Caption:='Неправильно!';
end
else
if (CheckGroup1.Checked[3])and(CheckGroup1.Checked[1])
then
begin
Label2.Visible:=True;
Label2.CAPtion:='Верно!';
k:=k+1;
j:=j+1;
if j=7 then memo1.visible:=true;
end;
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
Button4.Enabled:=False;
If RadioGroup1.ItemIndex=0
then Begin
Label4.Visible:=True ;
Label4.Caption:='Правильно';
k:=k+1;
j:=j+1;
if j=7 then memo1.visible:=true;
end
else
Begin
Label4.Visible:=True ;
Label4.Caption:='Неправильно';
end;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
Button5.Enabled:=False;
If RadioGroup3.ItemIndex=1
then Begin
Label6.Visible:=True ;
Label6.Caption:='Правильно';
k:=k+1;
j:=j+1;
if j=7 then memo1.visible:=true;
end
else
Begin
Label6.Visible:=True ;
Label6.Caption:='Неправльно';
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
Button6.Enabled:=False;
If (CheckGroup2.Checked[0])or
(CheckGroup2.Checked[1])
and not (CheckGroup2.Checked[2])
and not (CheckGroup2.Checked[3])
then
begin
Label8.Visible:=True;
Label8.Caption:= 'Подумай ещё' + #10#13 + 'Ты на правильном пути';
end
else
if (CheckGroup2.Checked[2])
or not (CheckGroup2.Checked[0])
or not (CheckGroup2.Checked[1])
or (CheckGroup2.Checked[3])
then
begin
Label8.Visible:=True;
Label8.Caption:='Неправильно';
end
else
If (CheckGroup2.Checked[0])and(CheckGroup3.Checked[1])
then
begin
Label8.Visible:=True;
Label8.Caption:='Верно';
k:=k+1;
j:=j+1;
if j=7 then memo1.visible:=true;
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
begin
Button7.enabled:=false;
If RadioGroup2.ItemIndex= 0
then begin
Label10.Visible:=True;
Label10.Caption:='Правильно';
k:=k+1;
j:=j+1;
if j=7 then memo1.visible:=true;
end
else
begin
Label10.Visible:=True;
Label10.Caption:='Неправильно';
end;
end;
procedure TForm1.Button8Click(Sender: TObject);
begin
Button8.Enabled:=False;
If (CheckGroup3.Checked[1])or
(CheckGroup3.Checked[2])
and not (CheckGroup3.Checked[0])
and not (CheckGroup3.Checked[3])
then
begin
Label12.Visible:=True;
Label12.Caption:='Подумай ещё!' + #10#13 + 'Ты на верном пути!';
end
else
if (CheckGroup3.Checked[0])
or not (CheckGroup3.Checked[1])
or not (CheckGroup3.Checked[2])
or (CheckGroup3.Checked[3])
then
begin
Label12.Visible:=True;
Label12.Caption:='Неправильно';
end
else
If (CheckGroup3.Checked[1])and(CheckGroup3.Checked[2])
then
begin
Label12.Visible:=True;
Label12.Caption:='Верно';
k:=k+1; j:=j+1;
if j=7 then memo1.visible:=true;
end;
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
Button9.Enabled:=False;
If (CheckGroup4.Checked[0])
or (CheckGroup4.Checked[3])
and not (CheckGroup4.Checked[1])
and not (CheckGroup4.Checked[2])
then
begin
Label14.Visible:=True;
Label14.Caption:='Подумай ещё.Ты на верном пути!';
end
else if (CheckGroup4.Checked[1])or not
(CheckGroup4.Checked[0])
or not(CheckGroup4.Checked[3])
or (CheckGroup4.Checked[2])
then
begin
Label14.Visible:=True;
Label14.Caption:='Неправильно';
end
else if
(CheckGroup4.Checked[0])and(CheckGroup4.Checked[3])
then
begin
Label14.Visible:=True;
Label14.Caption:='Верно';
k:=k+1;j:=j+1;
if j=7 then memo1.visible:=true;
end;
end;
procedure TForm1.result(k);
begin
Memo1.text:= 'Всего вопросов - 5'+#10#13+'Правильных ответов - '+inttostr(k)
+ #10#13 +'Процент правильных ответов - '+strtofloat(k/7*100) +#10#13+'Оценка - '
+ case k of
0..2: '1';
3: '2';
4: '3';
5,6:'4';
7:'5';
end;
end;
end.