Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.22;
Скачать: CL | DM;

Вниз

Программа ТЕСТ   Найти похожие ветки 

 
Revan   (2006-01-02 20:57) [0]

Помогите пожалуйста!
Нужно сделать программу тестирования, все вопросы, ответы, правильные ответы хранятся в текстовых файлах.
придумал вот такой код, почему то не работает:


var
 Form1: TForm1;
 a: string;
 i,j,s :byte;
 k: integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
k:=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 begin
if 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);  //// кнопка начать тест
begin
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;

end.

Почему то переменная "к" всегда ровнона "0",т.е. не считает правильные ответы, алгоритм простой, но не работает. Заранее благодарю.


 
DrPass ©   (2006-01-02 23:54) [1]

for s:=1 to 10 do begin

попробуй заменить на

for s:=0 to Memo3.Lines.Count-1 do begin


 
Revan   (2006-01-03 00:46) [2]

ничего не изменилось :((((


 
kami ©   (2006-01-03 01:40) [3]

Тогда, вполне возможно, что строки в файле 3 не соответствуют строкам в файле 2 (возможно, лишние пробелы или что-то вроде этого). Я же говорю - пройдись отладчиком по этому циклу и посмотри, что представляют собой a и memo3.Lines[s] при верном ответе


 
Плохиш ©   (2006-01-03 11:23) [4]

Для начала рекомендую заменить все Memo на TStringList.


 
Revan   (2006-01-03 13:34) [5]

kami Ты прав :) Извиняюсь за свою невнимательность.



Страницы: 1 вся ветка

Текущий архив: 2006.01.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.045 c
14-1135354353
Werg
2005-12-23 19:12
2006.01.22
Преобразовать строку в отдельные слова!!


14-1135874295
ПЛОВ
2005-12-29 19:38
2006.01.22
Кто нибудь юзает xD Picture Card


3-1132810047
megaspring
2005-11-24 08:27
2006.01.22
Запросы&Access


2-1136450705
Slaga
2006-01-05 11:45
2006.01.22
Как подключиться к Firebird u не "родными" компонентами, но и BDE


2-1136301078
frEE)styler
2006-01-03 18:11
2006.01.22
Не получается вызвать процедуру!