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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2015, 17:23   #1
manchester_alan
Форумчанин
 
Регистрация: 07.01.2015
Сообщений: 231
Радость Тест Delphi

Сделал тест на Delphi, но все делается только лишь однообразно 10 вопросов и по порядку каждый раз... А как мне сделать, чтобы эти вопросы наугад выводились, да и варианты ответов чтоб наугад выводились..? Помогите пожалуйста
Код:
procedure TForm1.Button2Click(Sender: TObject);
begin
  Inc(QuestionNum);
  Button2.Caption:='Далее';
  case QuestionNum of
   1:
   begin
     k:=0;
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
     GroupBox1.Caption:='Вопрос №1';
   if GroupBox1.Caption='Вопрос №1' then
   begin
     memo1.Text:='Как называтся икона (1411 или 1427), которую написал Андрей Рублев?';
     RadioButton1.Caption:='Четверка';
     RadioButton2.Caption:='Тройца';
     RadioButton3.Caption:='Двойка';
   end;
   end;
   2:
   begin
   RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №2';
    if GroupBox1.Caption='Вопрос №2' then
   begin
     memo1.Text:='Rартина Сандро Боттичелли (1486) называется:';
     RadioButton1.Caption:='Рождение Венера';
     RadioButton2.Caption:='Жизнь Юпитера';
     RadioButton3.Caption:='Смерть Плутона';
   end;
  end;
   3:
   begin
      RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №3';
    if GroupBox1.Caption='Вопрос №3' then
   begin
     memo1.Text:='Картина Ивана Крамского (1883) называется:';
     RadioButton1.Caption:='Знаменитая';
     RadioButton2.Caption:='Потерянная';
     RadioButton3.Caption:='Неизвестная';
   end;
  end;
  4:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
    GroupBox1.Caption:='Вопрос №4';
    if GroupBox1.Caption='Вопрос №4' then
   begin
     memo1.Text:='Карл Брюллов является автором картины (1833):';
     RadioButton1.Caption:='Первый день Рима';
     RadioButton2.Caption:='Последний день Помпеи';
     RadioButton3.Caption:='Месяц в Египте';
   end;
  end;
  5:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №5';
    if GroupBox1.Caption='Вопрос №5' then
   begin
     memo1.Text:='Картина Виктора Васнецова (1898) называется:';
     RadioButton1.Caption:='Богатыри';
     RadioButton2.Caption:='Рыцари';
     RadioButton3.Caption:='Хищники';
   end;
  end;
  6:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №6';
    if GroupBox1.Caption='Вопрос №6' then
   begin
     memo1.Text:='Какую картину (1893) написал Эдвард Мунк?';
     RadioButton1.Caption:='Бормотание';
     RadioButton2.Caption:='Шепот';
     RadioButton3.Caption:='Крик';
   end;
  end;
  7:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №7';
    if GroupBox1.Caption='Вопрос №7' then
   begin
     memo1.Text:='Какую картину (1899) написал Клод Моне?';
     RadioButton1.Caption:='Пруд с лилиями';
     RadioButton2.Caption:='Озеро с розами';
     RadioButton3.Caption:='Океан с тюльпанами';
   end;
  end;
  8:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №8';
    if GroupBox1.Caption='Вопрос №8' then
   begin
     memo1.Text:='Пабло Пикассо является автором этой картины (1937) :';
     RadioButton1.Caption:='Сарагоса';
     RadioButton2.Caption:='Герника';
     RadioButton3.Caption:='Гранада';
   end;
  end;
  9:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №9';
    if GroupBox1.Caption='Вопрос №9' then
   begin
     memo1.Text:='Картину под каким названием (1889) написал Винсент Ван Гог?';
     RadioButton1.Caption:='Звездная ночь';
     RadioButton2.Caption:='Облачное утро';
     RadioButton3.Caption:='Дождливый вечер';
   end;
  end;
  10:
  begin
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
   GroupBox1.Caption:='Вопрос №10';
    if GroupBox1.Caption='Вопрос №10' then
   begin
     memo1.Text:='Какую картину написал Казимир Малевич?';
     RadioButton1.Caption:='Красный шестиугольник';
     RadioButton2.Caption:='Оранжевый треугольник';
     RadioButton3.Caption:='Чёрный квадрат';
     Button2.Caption:='Конец теста';
   end;
  end;
  11:
  begin
     Button2.Caption:='Конец теста';
     RadioButton1.Checked:=False; RadioButton2.Checked:=False; RadioButton3.Checked:=False;
     MessageDlg('Количество правильных ответов:  '+inttostr(k),mtInformation,[mbOK],0);
      Button2.Caption:='Начать тест';
     if Button2.Caption='Начать тест' then begin QuestionNum := 0; end;
  end;
end;
end;
end;
manchester_alan вне форума Ответить с цитированием
Старый 12.05.2015, 17:30   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

С базами данных работать умеешь?
Если да - запихни вопросы и ответы в базу, и выводи из нее на форму.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.05.2015, 17:33   #3
manchester_alan
Форумчанин
 
Регистрация: 07.01.2015
Сообщений: 231
По умолчанию

Цитата:
С базами данных работать умеешь?
Если да - запихни вопросы и ответы в базу, и выводи из нее на форму.
это в смысле BD Access? Ну мне лучше через обычный txt файл, там вопросы и ответы записаны и оттуда брать наугад..
manchester_alan вне форума Ответить с цитированием
Старый 12.05.2015, 18:23   #4
Должно быть имя?
Пользователь
 
Регистрация: 11.04.2015
Сообщений: 68
По умолчанию

Тогда используй ini
К примеру
Код:
[Вопрос №10]
Text = 'Какую картину написал Казимир Малевич?';
Caption1 = 'Красный шестиугольник';
Caption2 = 'Оранжевый треугольник';
Caption3 = 'Чёрный квадрат';
right = 1; - А тут к примеру индекс правильного ответа
Должно быть имя? вне форума Ответить с цитированием
Старый 12.05.2015, 18:45   #5
manchester_alan
Форумчанин
 
Регистрация: 07.01.2015
Сообщений: 231
По умолчанию

Цитата:
Код:
[Вопрос №10]
Text = 'Какую картину написал Казимир Малевич?';
Caption1 = 'Красный шестиугольник';
Caption2 = 'Оранжевый треугольник';
Caption3 = 'Чёрный квадрат';
right = 1; - А тут к примеру индекс правильного ответа
аа то есть это через тип запись??

А как реализовать наугад подскажите пожалуйста..
manchester_alan вне форума Ответить с цитированием
Старый 12.05.2015, 18:46   #6
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Закачай вопросы в StringList. Потом используя Random для индекса строки дергай вопросы из него. Случайные ответы - это как? Философ, что ли, ответы на все случаи?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.05.2015, 18:51   #7
manchester_alan
Форумчанин
 
Регистрация: 07.01.2015
Сообщений: 231
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Закачай вопросы в StringList. Потом используя Random для индекса строки дергай вопросы из него. Случайные ответы - это как? Философ, что ли, ответы на все случаи?
ну в смысле чтоб варианты ответов тоже наугад высвечивались
manchester_alan вне форума Ответить с цитированием
Старый 12.05.2015, 20:11   #8
manchester_alan
Форумчанин
 
Регистрация: 07.01.2015
Сообщений: 231
По умолчанию

через файл ini как реализовать?
manchester_alan вне форума Ответить с цитированием
Старый 12.05.2015, 21:31   #9
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,761
По умолчанию

Цитата:
Сообщение от manchester_alan Посмотреть сообщение
через файл ini как реализовать?
Используй TIniFile;
FaTaL вне форума Ответить с цитированием
Старый 13.05.2015, 04:48   #10
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,453
По умолчанию

Используй простой текстовик и сделай разделитель допустим ::: , далее вырезаешь все это дело через pos/posex/delete/copy
uberchel вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
тест в delphi !2marselo12 Общие вопросы Delphi 8 05.12.2014 12:23
Тест на Delphi DedSero Фриланс 8 20.03.2013 07:42
Тест в Delphi 7 Ербулат Общие вопросы Delphi 3 13.06.2012 13:32
Тест на delphi Серый Рыйцарь Помощь студентам 1 11.05.2009 05:58
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46