Помогите найти ошибки в коде программы
unit Unit19;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IniFiles, ExtCtrls, Math;
type
TForm19 = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
GroupBox2: TGroupBox;
RadioGroup1: TRadioGroup;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Image1: TImage;
Memo1: TMemo;
Timer1: TTimer;
Panel1: TPanel;
Label13: TLabel;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Button2: TButton;
Button3: TButton;
ListBox1: TListBox;
SaveDialog1: TSaveDialog;
procedure FormShow(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form19: TForm19;
testname:TIniFile;
implementation
uses unit18, unit10;
var vo,tm,tv,kvo,kno:longint;
ocenka:real;
{vo - кол-во вариантов ответов
tm - время на тест
tv - Номер текущего вопроса
kvo - количество верных ответов
kno - Количество не верных ответов
ocenka - Оценка за тест}
po:string;
{$R *.dfm}
procedure TForm19.FormShow(Sender: TObject);
var i:integer;
begin
{Предварительная очистка}
testname:=TIniFile.Create(nametest);
Memo1.Clear;
RadioGroup1.Items.Clear;
memo1.Color:=Color;
tv:=1;
ListBox1.Clear;
ListBox1.Items.Add('
Стасистика неверных ответов в тесте '+testname.ReadString('TEST','name','1')+'');
Label2.Caption:=testname.ReadString('TEST','name','1');
Label4.Caption:=testname.ReadString('TEST','klv','0');
Label6.Caption:=testname.ReadString('TEST','pb','0');
Label8.Caption:=testname.ReadString('TEST','ko','1');
Label10.Caption:=testname.ReadString('TEST','time','1')+' сек. ';
Caption:=nametest;
GroupBox2.Caption:='Вопрос №1';
vo:=testname.ReadInteger('1','vo',0);
memo1.Clear;
memo1.Lines.Add(testname.ReadString('1','vopros','ошибка Е63-21'));
tm:=testname.ReadInteger('TEST','time',0);
Timer1.Enabled:=true;
for i:=1 to vo do
RadioGroup1.Items.Add(testname.ReadString('1',inttostr(i),'ошибка'));
end;
procedure TForm19.Timer1Timer(Sender: TObject);
begin
tm:=tm-1;
Label12.Caption:=IntToStr(tm)+' сек. ';
If tm=0 then begin
MessageDlg('Время теста истекло, все вопросы на которые вы не успели ответить не будут учтены как неверные, но на оценку будут влиять толь верные ответы',mtInformation,[mbOk],0);
Timer1.Enabled:=false;
Panel1.Visible:=true;
Label17.Caption:=IntToStr(kvo)+ ' вопросов';
Label19.Caption:=IntToStr(kno)+ ' вопросов';
ocenka:=kvo/(testname.ReadInteger('TEST','klv',0)/5);
Label15.Caption:=FloatToStr(RoundTo(ocenka, -1));
if kvo>=testname.ReadInteger('TEST','pb',0) then
Label21.Caption:='ТЕСТ ПРОЙДЕН'
else
Label21.Caption:='ТЕСТ ПРОВАЛЕН';
end;
end;
procedure TForm19.RadioGroup1Click(Sender: TObject);
var vern,tvo:string;
j:integer;
begin
j:=0;
vern:=testname.ReadString(IntToStr(tv),'vno','ошибка');
tvo:=RadioGroup1.Items[RadioGroup1.ItemIndex];
If tvo=vern then begin
kvo:=kvo+1;
end else begin
kno:=kno+1;
ListBox1.Items.Add(' Вопрос: '+Memo1.Text+'');
ListBox1.Items.Add('Вы ответили: '+RadioGroup1.Items[RadioGroup1.ItemIndex]+' ЭТО НЕВЕРНЫЙ ОТВЕТ');
end;
//RadioGroup1.CleanupInstance;
{Загрузка нового вопроса при условии что это не последний вопрос}
If tv