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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2012, 17:59   #1
Fin_un
Пользователь
 
Регистрация: 19.03.2012
Сообщений: 11
По умолчанию Delphi тест.

Всем привет!помогите пожалуйста написать тест по Делфи.Тест 5 вопросов- составляю сам конечно.Можно сказать что я по нему практически нуль.т.к. я сильно его не знаю и мы много чего не проходили то нужно сделать его простым просто 4 варианта ответа на 1 вопрос в конце оценку.Скачивал я готовые программы(тест) разбираел я его но ничего не понял.Часть тока понял.

Последний раз редактировалось Fin_un; 06.05.2012 в 18:01.
Fin_un вне форума Ответить с цитированием
Старый 06.05.2012, 18:04   #2
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Была похожая тема. Вроде бы я там подробно все рассказал.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 06.05.2012, 18:12   #3
Fin_un
Пользователь
 
Регистрация: 19.03.2012
Сообщений: 11
По умолчанию

Здравствуйте!StaticText1 - я такого чет не слышал это лэйбл?
Fin_un вне форума Ответить с цитированием
Старый 06.05.2012, 18:17   #4
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
Сообщение от Fin_un Посмотреть сообщение
Здравствуйте!StaticText1 - я такого чет не слышал это лэйбл?
В данном случае без разницы, хоть label, хоть statictext.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 06.05.2012, 18:43   #5
Fin_un
Пользователь
 
Регистрация: 19.03.2012
Сообщений: 11
По умолчанию

Цитата:
Сообщение от whatever Посмотреть сообщение
В данном случае без разницы, хоть label, хоть statictext.
Я создал 5 лэблов. 5 радиогруп и вписал в батон1:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    RadioGroup1: TRadioGroup;
    Label2: TLabel;
    RadioGroup2: TRadioGroup;
    Label3: TLabel;
    RadioGroup3: TRadioGroup;
    Label4: TLabel;
    RadioGroup4: TRadioGroup;
    RadioGroup5: TRadioGroup;
    Label5: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  answers:array[0..4]of boolean;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  count,i:integer;
begin
  if radiogroup1.ItemIndex=1 then     //обращаю внимание на то, что нумерация начинается с 0, т.е. правильный ответ во второй строчке
    answers[1]:=true
  else
    answers[1]:=false;
  if radiogroup2.ItemIndex=2 then     //обращаю внимание на то, что нумерация начинается с 0, т.е. правильный ответ во второй строчке
    answers[1]:=true
  else
    answers[1]:=false;
  if radiogroup3.ItemIndex=3 then     //обращаю внимание на то, что нумерация начинается с 0, т.е. правильный ответ во второй строчке
  answers[1]:=true
  else
    answers[1]:=false;
    if radiogroup4.ItemIndex=0 then     //обращаю внимание на то, что нумерация начинается с 0, т.е. правильный ответ во второй строчке
     answers[1]:=true
  else
    answers[1]:=false;
    if radiogroup5.ItemIndex=1 then     //обращаю внимание на то, что нумерация начинается с 0, т.е. правильный ответ во второй строчке
    answers[1]:=true
  else
    answers[1]:=false;



  count:=0;
  for i:=0 to 5 do
    if answers[i] then
      inc(count);
       showmessage('Вы ответили верно на '+inttostr(count)+' из 5 вопросов');
      end;

end.
Но чет он не считает пральные ответы.
Может быть надо было изменять и answers?

Я его изменил и все ок! Спасибо вам огромное!!!
Можно у вас спросить count - это что?
Код:
count:=0;
 for i:=0 to 5 do- от 0 до 5 делаю дальше я не понял.
 if answers[i] then
 inc(count);

Последний раз редактировалось Stilet; 06.05.2012 в 19:17.
Fin_un вне форума Ответить с цитированием
Старый 06.05.2012, 18:49   #6
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
Сообщение от Fin_un Посмотреть сообщение
Может быть надо было изменять и answers?
Я думал это очевидно.
Тем более, ты же догадался изменить
Код:
answers:array[0..4]of boolean;
answers[0] - ответ на вопрос 1,
answers[1] - ответ на вопрос 2 и так далее.

И еще:
Цитата:
Код:
for i:=0 to 4 do
 if answers[i] then
 inc(count);
 showmessage('Вы ответили верно на '+inttostr(count)+' из 4 вопросов');
 end;

Цитата:
Сообщение от Fin_un Посмотреть сообщение
Можно у вас спросить count - это что?
count - это
Цитата:
Сообщение от Google Translate
глагол
считать
подсчитывать
отсчитывать
пересчитывать
счесть
просчитывать
насчитывать
иметь значение
числить
полагать
принимать во внимание
сосчитывать
излагать дело
выступать с изложением дела
идти в расчет
имя существительное
подсчет
счет
отсчет
граф
пункт
Т.Е. количество верных ответов. //интересно, что гугл вариант "количество" не написал Оо

В нашем случае это переменная, которую мы увеличиваем каждый раз, когда ответ правильный. Изначально count=0.
Все тривиальное просто

Последний раз редактировалось whatever; 06.05.2012 в 18:56.
whatever вне форума Ответить с цитированием
Старый 06.05.2012, 19:13   #7
Fin_un
Пользователь
 
Регистрация: 19.03.2012
Сообщений: 11
По умолчанию

как то она у меня теперь глючит!выделю правльные ответы она их за неправльные считает и пишет всегда 1 правльный ответ
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
RadioGroup1: TRadioGroup;
Label1: TLabel;
RadioGroup2: TRadioGroup;
Label2: TLabel;
RadioGroup3: TRadioGroup;
Label3: TLabel;
RadioGroup4: TRadioGroup;
Label4: TLabel;
RadioGroup5: TRadioGroup;
Label5: TLabel;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
answers:array[0..4]of boolean;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var count,i:integer;
begin
if radiogroup1.ItemIndex=1 then
answers[1]:=true
else
answers[1]:=false;

if radiogroup2.ItemIndex=2 then
answers[2]:=true
else
answers[2]:=false;

if radiogroup3.ItemIndex=3 then
answers[3]:=true
else
answers[3]:=false;

if radiogroup4.ItemIndex=1 then
answers[1]:=true
else
answers[1]:=false;

if radiogroup5.ItemIndex=1 then
answers[1]:=true
else
answers[1]:=false;

count:=0;
for i:=0 to 4 do
if answers[i] then
inc(count);
showmessage('Вы ответили верно на '+inttostr(count)+' из 5 вопросов');
end;


end.

Последний раз редактировалось Fin_un; 06.05.2012 в 19:21.
Fin_un вне форума Ответить с цитированием
Старый 06.05.2012, 20:20   #8
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Мозг включаем, окда?
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  count,i:integer;
begin
  if radiogroup1.ItemIndex=1 then     //верный ответ в строчке 2
    answers[0]:=true
  else
    answers[0]:=false;

  if radiogroup2.ItemIndex=2 then     //верный ответ в строчке 3
    answers[1]:=true
  else
    answers[1]:=false;

  if radiogroup3.ItemIndex=3 then     //верный ответ в строчке 4
    answers[2]:=true
  else
    answers[2]:=false;

  if radiogroup4.ItemIndex=0 then      //верный ответ в строчке 1
    answers[3]:=true
  else
    answers[3]:=false;

  if radiogroup5.ItemIndex=1 then      //верный ответ в строчке 2
    answers[4]:=true
  else
    answers[4]:=false;

  count:=0;
  for i:=0 to 4 do
    if answers[i] then
      inc(count);
   showmessage('Вы ответили верно на '+inttostr(count)+' из 5 вопросов');
end;
И код оформляй нормально (кнопка #), а то я забью помогать
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 26.05.2012, 22:35   #9
Fin_un
Пользователь
 
Регистрация: 19.03.2012
Сообщений: 11
По умолчанию

Здравствуйте! Я тут долго не отвечал) Спасибо вам большое! Тест получился отличный!Вот он кстати:http://depositfiles.com/files/9staygohk
Единственный человек в классе кто его сделал)
Пароль: Arhiv.rar - с большой буквы писать

Последний раз редактировалось Fin_un; 26.05.2012 в 22:38.
Fin_un вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тест (Delphi) Эммануэль Помощь студентам 4 02.03.2011 08:31
Тест в Delphi Dran1k Общие вопросы Delphi 6 12.05.2010 17:18
тест на Delphi Джонни Помощь студентам 3 11.03.2010 00:11
Тест на delphi Серый Рыйцарь Помощь студентам 1 11.05.2009 05:58
Программа-тест в Delphi) скиньте))а то програмку здавать преподу надо,и самой хочется понять Delphi Верчик Помощь студентам 9 02.03.2009 17:46