G
enby!

Delphi. Программа "Тест".

Допустим у вас есть файл in.txt лежащий в папке с проектом со следующей структурой: Вопрос1 Ответ 1 Ответ 2 Ответ 3 Ответ 4 Ответ 1, эта строка нужна для определения правильного варианта ответа Вопрос 2 Ответ 1 Ответ 2 Ответ 3 Ответ 4 Ответ 3, .... и т.д. сколько хотите вопросов столько и забивайте.... далее следует разработка формы в Delphi - на форме помещаете из закладки Standart : Label1, RadioButon1, ... RadioButton 4 (в зависимости от количества варианта ответов в одном вопросе количество RadiButton может меняться) и конечно Button. Программирование: У формы как у компонента есть события. Следует выбрать событие FormCreate (нужное для того чтобы загрузить 1 вопрос и ответы при запуске программы). var t:textfile; s:string; i:integer; .... Итак procedure TForm...Form..Create.... begin assignfile (f, 'in.txt'); reset(f); readln(f,s); Label1.caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton1.Caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton2.Caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton3.Caption:=s; readln(f,s); // считываем следующую строку из файла если количество вариантов ответа 4 то тут и останавливаемся RadioButton1.Caption:=s; Далее. На форме есть Button (кнопка). У нее как у компонента есть событие OnClick - щелчок левой кнопкой мыши Итак procedure TForm...Button..Click if eof(f) then showmessage(inttostr(i)+'Правильных ответов') else readln(f,s); // если достигнут конец файла тогда выводим результат иначе считываем следующую строку, а эта строка - правильный ответ if (RadioButton1.Checked) and (RadioButton1.Caption=s) then inc(i); // если пользователем выбрана Radio и надпись на ней является такой же как считанная строка из файла тогда в переменную i c использованием функции inc добавляем + 1 if (RadioButton2.Checked) and (RadioButton2.Caption=s) then inc(i); if (RadioButton3.Checked) and (RadioButton3.Caption=s) then inc(i); if (RadioButton4.Checked) and (RadioButton4.Caption=s) then inc(i); // проверяем все возможные комбинации так как radiobutton у нас 4 штуки {далее следует продолжение чтения из файла} Label1.caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton1.Caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton2.Caption:=s; readln(f,s); // считываем следующую строку из файла RadioButton3.Caption:=s; readln(f,s); // считываем следующую строку из файла если количество вариантов ответа 4 то тут и останавливаемся RadioButton1.Caption:=s; end...

Смотрите также