Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.01.2014, 14:44   #1
storm16112
 
Регистрация: 18.01.2014
Сообщений: 5
Вопрос Создание программы-теста в паскале.

Доброго времени суток.Стоит задача:написать программу,которая работает как тест по информатике.При запуске должно появляться окно,в котором стоит вопрос и 4 варианта ответов.Внизу должны находиться 4 кнопки(варианта ответов:а,б,в,г).По нажатию на определенную кнопку(с правильным ответом) должно появляться сообщение о том,что был дан верный ответ,после должен появляться другой вопрос.Всего подобных вопросов должно быть минимум 10.
Если кому не составит труда,прошу помощи с написанием самой программы или хотя бы объяснить принцип работы алгоритма,отвечающего за то,чтобы появлялся сдедущий вопрос при правильном нажатие.
P.S.Также буду рад и самой программе с исходником.
P.S.S.Можно также предложить вариант решения на делфи.

Последний раз редактировалось storm16112; 18.01.2014 в 17:11. Причина: дополнить
storm16112 вне форума Ответить с цитированием
Старый 18.01.2014, 16:46   #2
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Все же на Pascal`e, т.е. в консоли, или Delphi потянет?

В чем проблема то? С выводом вопроса на экран?
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 18.01.2014, 17:03   #3
storm16112
 
Регистрация: 18.01.2014
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Vanta11a Посмотреть сообщение
Все же на Pascal`e, т.е. в консоли, или Delphi потянет?

В чем проблема то? С выводом вопроса на экран?
Можно,даже нужно в делфи,изначально неправильно выразился.
storm16112 вне форума Ответить с цитированием
Старый 18.01.2014, 17:26   #4
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

У меня есть тест на Delphi, грузящий базу вопросов, выбирающий 30 из них и собирающий ответы. Переход возможен, правда на любой вопрос, но не суть.

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

Как вариант - можете заплатить денежку, чтобы Вам тест написали.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 18.01.2014, 18:11   #5
storm16112
 
Регистрация: 18.01.2014
Сообщений: 5
По умолчанию

Сам интерфейс по сути значения не имеет,он просто должен состоять из 2 частей:1)вопросы и варианты ответов,2)4 кнопки,с помощью которых стоит отвечать.
Хотя я был бы не против,если бы мне подкинули исходники подобно,даже без графического интерфейса(консольный вариант),чтобы я ознакомился.
storm16112 вне форума Ответить с цитированием
Старый 18.01.2014, 18:52   #6
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию


Ну вот интерфейс. Кнопки через RadioButtonGroup реализованы. Переход на вопросы - через PushButton`ы.
Внутри крутится массив, в который сохраняются ответы.
После окончания теста массив полученных ответов сравнивается с эталонным, после чего вывод результата.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 18.01.2014, 19:04   #7
storm16112
 
Регистрация: 18.01.2014
Сообщений: 5
По умолчанию

Часть кода,которая отвечает за 1 и 2 страницы не могли бы сбросить,я немного переработаю?(даже сам алгоритм,позволяющий сделать данного вида программу)

Последний раз редактировалось storm16112; 18.01.2014 в 19:18.
storm16112 вне форума Ответить с цитированием
Старый 18.01.2014, 19:26   #8
Vanta11a
Lawful Evil
Участник клуба
 
Аватар для Vanta11a
 
Регистрация: 13.05.2008
Сообщений: 1,208
По умолчанию

Какие 2 страницы? Вы о чем? Тут одна единственная форма.
Алгоритм:
1) Считать из базы все вопросы (в общий массив)
2) Выбрать N случайных (в новый массив)
3) Перемешать выбранные вопросы (в новом массиве)
4) Запустить тест с первого вопроса (новый_массив[1])

Вывод вопроса:
1) Определить номер нужного вопроса (исходя из имени PushButton`a в моем случае)
2) Очистить на форме элементы вывода
3) Вывести вопрос и варианты ответов, с учетом проверки массива ответов (отвечали на этот вопрос или нет, если отвечали - выделить ранее выбранный ответ)

Нажатие на кнопку с номером вопроса:
1) Сохранить в массив полученных ответов выбранный для предыдущего вопроса ответ
2) Вызвать функцию вывода вопроса

Нажатие кнопки окончания теста:
1) Сравнить массив введенных ответов с эталонными ответами

Все. Вперед, на баррикады.

p.s. в качестве спонсорской помощи код выборки 30 вопросов из N:
Код:
procedure FormQuestions();
var iterator,temp_int : integer;
    tmp_array : array [1..30] of integer;
    number_array : array of integer;
    tmp_len,tmp_index1,tmp_index2,tmp_item : integer;
begin
  SetLength(number_array,Length(allQuestionsArray));
  for iterator := 0 to Length(allQuestionsArray) do
    number_array[iterator] := iterator;
  tmp_len := Length(number_array);
  for iterator := 0 to 1000 do
  begin
    tmp_index1 := random(tmp_len);
    tmp_index2 := random(tmp_len);
    tmp_item := number_array[tmp_index1];
    number_array[tmp_index1] := number_array[tmp_index2];
    number_array[tmp_index2] := tmp_item;
  end;
  for iterator := 1 to 30 do
  begin
    questionsArray[iterator] := allQuestionsArray[number_array[iterator - 1]];
  end;
end;
Весь исходник стоит 500 рублей.
Алгоритм - бесплатен. Поиск багов - бесплатен. Реализация алгоритма - за отдельную плату.
На форуме помогают советами и объясняют, а не пишут на халяву программы, лабы, курсачи и т.д. (c)
Vanta11a вне форума Ответить с цитированием
Старый 18.01.2014, 20:01   #9
storm16112
 
Регистрация: 18.01.2014
Сообщений: 5
По умолчанию

Спасибо за помощь
storm16112 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание программы для теста Ravings Свободное общение 10 23.02.2013 18:18
Создание теста Nikkolay Помощь студентам 10 27.11.2011 14:11
Создание программы теста в Delphi Blandinka Помощь студентам 0 31.05.2010 16:54
Создание теста Chaser C++ Builder 12 07.04.2010 22:14
Создание теста VeraN Помощь студентам 0 23.11.2009 18:03