Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55

Тест по делфи не сверяет ответ пользователя и правильный ответ из ini файла

17.05.2020, 18:40. Показов 3103. Ответов 31
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
уважаемые знатоки подскажите в чем вопрос программа не сверяет ответ пользователя и правильный ответ из ini файла



Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
var
  Form3: TForm3;
  Quest: TIniFile;
  IntNext,pravil,nepravil: integer;
  otvetpolz, pravotv: string;
 
implementation
 
uses Unit2;
 
{$R *.dfm}
 
procedure TForm3.Button3Click(Sender: TObject);
begin
form3.Close;
end;
 
 
 
procedure TForm3.ButtonNextClick(Sender: TObject);
begin
if pravotv=otvetpolz then
inc(pravil)
else
inc(nepravil);
 
if Radiobutton1.Checked= true then otvetpolz:='A';
if Radiobutton2.Checked= true then otvetpolz:='B';
if Radiobutton3.Checked= true then otvetpolz:='C';
if Radiobutton4.Checked= true then otvetpolz:='D';
inc(IntNext);
memo1.Lines.Clear;
quest:=TInifile.create(extractfilepath(application.ExeName)+'obsh.ini');
memo1.Lines.Add(quest.readstring('q'+InttoStr(IntNext),'q',тест окончен'));
pravotv:=(quest.readstring('q'+InttoStr(IntNext),'o','тест окончен'));
 
 
 
if memo1.lines[0]= 'тест окончен'  then
begin
 buttonnext.Enabled:=false;
 showmessage('правильно'+inttostr(pravil)+'непавильно' + inttostr(nepravil));
 
end;
 
end;
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.05.2020, 18:40
Ответы с готовыми решениями:

Indy: программа не получает правильный ответ от сервера, но сниффер показывает правильный ответ
Всем привет. Моя программа должна сделать гет запрос на определенный сайт. Я включаю программу и снифферю. В сниффере показывается...

Сравнить правильный ответ с ответом пользователя
Моя задача, составить - тест. Изначально вопросы и ответы хранятся в .ini файле. Максимальный порог ответов = 7. Если в ini файле...

В случае неверного ответа пользователя программа должна выводить правильный ответ.
Написать программу проверки знания даты основания Санкт-Петербурга(1703г). В случае неверного ответа пользователя программа должна...

31
Модератор
4138 / 2351 / 809
Регистрация: 15.11.2015
Сообщений: 9,396
17.05.2020, 18:45
Chanli, оно компилируется вообще? Здесь в 34 строке не хватает одинарной кавычки (начало строки) перед "тест окончен".
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
17.05.2020, 18:50  [ТС]
AzAtom, работает, это тут упустил когда вставлял
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
17.05.2020, 18:54
Работает?
А что делает? Можете прокомментировать строку 22?
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
17.05.2020, 19:00  [ТС]
Цитата Сообщение от Chanli Посмотреть сообщение
if pravotv=otvetpolz then
Цитата Сообщение от northener Посмотреть сообщение
А что делает? Можете прокомментировать строку 22?
northener, в этом то и вся суть должна была быть, по моим расчетам он должен был сверять правильный ответ из файла с тем что выбрал пользователь
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
17.05.2020, 19:05
Цитата Сообщение от Chanli Посмотреть сообщение
по моим расчетам он должен был сверять правильный ответ из файла с тем что выбрал пользователь
Ага. Но какой ответ выбран пользователь вы определяете после этой проверки. И правильный ответ вы читаете из ини-файла тоже после проверки. Так чего же вы проверяете?
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
17.05.2020, 19:08  [ТС]
northener, и как это решить
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
17.05.2020, 19:20
Я что зря выделял слово после жирным шрифтом? Неужели ничего в мозгах не шевельнулось?
1
Модератор
4138 / 2351 / 809
Регистрация: 15.11.2015
Сообщений: 9,396
17.05.2020, 20:50
Chanli, команды выполняются по порядку написания, слева направо, сверху вниз. Значит, надо сначала загрузить правильный ответ, определить, что выбрал пользователь и уже потом сверять.
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 01:15  [ТС]
northener, выделяй как хочешь, все равно не работает

Добавлено через 1 минуту
AzAtom, если я тебя правильно понял то должно быть так
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure TForm3.ButtonNextClick(Sender: TObject);
begin
inc(IntNext);
memo1.Lines.Clear;
quest:=TInifile.create(extractfilepath(application.ExeName)+'obsh.ini');
memo1.Lines.Add(quest.readstring('q'+InttoStr(IntNext),'q','тест окончен'));
pravotv:=(quest.readstring('q'+InttoStr(IntNext),'o','тест окончен'));
 
if Radiobutton1.Checked= true then otvetpolz:='A';
if Radiobutton2.Checked= true then otvetpolz:='B';
if Radiobutton3.Checked= true then otvetpolz:='C';
if Radiobutton4.Checked= true then otvetpolz:='D';
 
if pravotv=otvetpolz then
inc(pravil)
else
inc(nepravil);
 
if memo1.lines[0]= 'тест окончен'  then
begin
 buttonnext.Enabled:=false;
 showmessage('правильно'+inttostr(pravil)+'неправильно' + inttostr(nepravil));
 
end;
если так то не работает
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
18.05.2020, 01:29
Цитата Сообщение от Chanli Посмотреть сообщение
northener, выделяй как хочешь, все равно не работает
А вы думали что у вас только одна ошибка?
Я вот думаю что у вас делает эта строка?
Цитата Сообщение от Chanli Посмотреть сообщение
inc(IntNext);
В том ли месте процедуры она стоит? (Или лежит)
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 08:21  [ТС]
northener,
Цитата Сообщение от northener Посмотреть сообщение
inc(IntNext);
она позволяет переключиться на след вопрос.
все остальное работает, она просто не сверяет ответы
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
18.05.2020, 09:54
Цитата Сообщение от Chanli Посмотреть сообщение
она позволяет переключиться на след вопрос.
все остальное работает, она просто не сверяет ответы
выложи архив с проектом (напоминаю, что это dpr, pas, dfm файлы) и INI файл с вопросами, я посмотрю, что ты там творишь.
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 10:00  [ТС]
mr-Crocodile,
Вложения
Тип файла: rar Диплом.rar (350.5 Кб, 10 просмотров)
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 10:08  [ТС]
Цитата Сообщение от Chanli Посмотреть сообщение
она позволяет переключиться на след вопрос.
все остальное работает, она просто не сверяет ответы
mr-Crocodile, если что этот вопрос решился
0
Модератор
4138 / 2351 / 809
Регистрация: 15.11.2015
Сообщений: 9,396
18.05.2020, 10:12
Интересный тест, конечно. Нажимаешь "Начать тестирование" и он сразу пишет "тест окончен".

Добавлено через 1 минуту
При каждом нажатии кнопок создаётся объект TInifile и далее не уничтожается, остаётся висеть в памяти.
0
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
18.05.2020, 10:12
Цитата Сообщение от Chanli Посмотреть сообщение
если что этот вопрос решился
ok.

а с какой целью у тебя остался Unit2 с datamodule, где ты пытаешься открыть соединение с БД ?
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 10:13  [ТС]
mr-Crocodile, я о нем еще не думал, потом удалю
0
Модератор
4138 / 2351 / 809
Регистрация: 15.11.2015
Сообщений: 9,396
18.05.2020, 10:17
После каждого ответа нужно сбрасывать радиокнопку. А если ничего не выбрано, то не проверять ответ и не переходить на следующий вопрос, а вывести сообщение, чтобы выбрали нужный вариант ответа.
0
0 / 0 / 0
Регистрация: 06.07.2019
Сообщений: 55
18.05.2020, 10:21  [ТС]
AzAtom, это не так уж и важно, у меня в приоритете чтобы он правильно работал
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.05.2020, 10:21
Помогаю со студенческими работами здесь

Правильный ответ?
Помогите, пожалуйста ответить на такой вопрос: Предположим grade - массив 10 целых чисел, какое из следующих уверждений является...

правильный ли ответ
я сам попробовал решить ЛНДУ с постоянными коэффициентами и найти общий вид ДУ вот эту___ y'+4*y=1/cos(2*x)___ и нашел общий вид...

Правильный ответ?
Доброго всем времени суток! Возникли вопросы, помогитеб пожалуйста: 1) Возможно ли, что member функция класса to activate (call)...

Правильный ответ
Помогите найти правильный ответ: 1) What will I see as output if I were to execute the following statements: PriorityQueue...

Правильный ли ответ?
Добрый день. Подскажите, правильно ли решено: Необходимо упросить СДНФ: \bar x \bar y \bar z w \vee \bar x yz \bar w \vee x \bar y z...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru