unit Unit8;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, LMDCustomButton, LMDButton, ComCtrls,
  LMDCustomButtonGroup, LMDCustomRadioGroup, LMDRadioGroup,
  LMDCustomControl, LMDCustomPanel, LMDCustomBevelPanel,
  LMDCustomParentPanel, LMDCustomGroupBox, LMDGroupBox, RzLabel, LMDControl;

type
  TForm8 = class(TForm)
    LMDGroupBox1: TLMDGroupBox;
    LMDRadioGroup1: TLMDRadioGroup;
    RichEdit1: TRichEdit;
    LMDButton1: TLMDButton;
    RzURLLabel2: TRzURLLabel;
    Panel1: TPanel;
    Image1: TImage;
    Edit1: TEdit;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label7: TLabel;
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure LMDButton1Click(Sender: TObject);
    procedure LMDRadioGroup1Click(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form8: TForm8;
  Err1,Err2,Err3,Err4,Err5,Err6,Err7,Err8,Err9,Err10:Integer;
  NumVopr,NumOtv:Integer;
  Num1,Num2:Integer;
  NumErrors:Integer;
  ss1:string;

implementation

uses Unit1, Unit7;

{$R *.dfm}





procedure TForm8.FormShow(Sender: TObject);
var
N:Integer;
begin
ss1:='';
NumVopr:=0;
NumVopr:=NumVopr+1;
randomize;
Num1:=8+random(6);

for N:=0 to 100 do
begin
randomize;
Num2:=8+random(6);
if Num2<>Num1 then
break;
end;

Form8.Edit1.Visible:=false;
form8.LMDButton1.Visible:=true;
Form8.LMDRadioGroup1.Items.Clear;
Form8.RichEdit1.Clear;
Form8.Edit1.Clear;
Form8.Label4.Visible:=false;
Form8.Label5.Visible:=false;
Form8.Label6.Visible:=false;
Form8.Label7.Visible:=false;
Form8.Label1.Visible:=false;
Form8.Label2.Visible:=false;
Form8.Label3.Visible:=false;
Form8.RzURLLabel2.Visible:=false;
Form8.Panel1.Visible:=false;
Form8.LMDGroupBox1.Visible:=true;
Form8.LMDRadioGroup1.Visible:=true;
Err1:=0;
Err2:=0;
Err3:=0;
Err4:=0;
Err5:=0;
Err6:=0;
Err7:=0;
Err8:=0;
Err9:=0;
Err10:=0;

Form8.LMDGroupBox1.Caption:='Вопрос 1';

if Num1=8 then
begin
Form8.RichEdit1.Text:='Блок в котором происходит потактовое сравнение UАИМ-2гр с набором эталонных напряжений по алгоритму нелинейного кодирования? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=8 //

if Num1=9 then
begin
Form8.RichEdit1.Text:='Блок вырабатывающий 11 эталонов с номиналами от 1 delta до 1024 delta отрицательной или положительной полярности? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=9 //

if Num1=10 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого происходит подключение или отключение основных и дополнительных эталонов соответствующих сегменту, в котором происходит кодирование амплитуды UАИМ-2гр? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=10 //

if Num1=11 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого определяется основной эталон в сегменте и набор дополнительных эталонов? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=11 //

if Num1=12 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого происходит потактовая реализация процедуры нелинейного кодирования и формируется 8-ми разрядная канальная кодовая комбинация в параллельном коде? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=12 //

if Num1=13 then
begin
Form8.RichEdit1.Text:='Блок осуществляющий преобразование сигнала в параллельном коде в последовательный во времени код? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num1=13 //

end;


procedure TForm8.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Form1.Close;
application.Terminate;
end;

procedure TForm8.LMDButton1Click(Sender: TObject);
var
N1,N2,N3,N:Integer;
begin
NumVopr:=NumVopr+1;

if NumVopr=2 then
begin
if Num1=8 then
begin
if Form8.Edit1.Text='компаратор' then
Err1:=0
else
Err1:=1;
end;

if Num1=9 then
begin
if Form8.Edit1.Text='генератор эталонных напряжений' then
Err1:=0
else
Err1:=1;
end;

if Num1=10 then
begin
if Form8.Edit1.Text='блок коммутации эталонов' then
Err1:=0
else
Err1:=1;
end;

if Num1=11 then
begin
if Form8.Edit1.Text='блок выбора сегмента' then
Err1:=0
else
Err1:=1;
end;

if Num1=12 then
begin
if Form8.Edit1.Text='цифровой регистр' then
Err1:=0
else
Err1:=1;
end;

if Num1=13 then
begin
if Form8.Edit1.Text='преобразователь кода' then
Err1:=0
else
Err1:=1;
end;

Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 2';

if Num2=8 then
begin
Form8.RichEdit1.Text:='Блок в котором происходит потактовое сравнение UАИМ-2гр с набором эталонных напряжений по алгоритму нелинейного кодирования? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=8 //

if Num2=9 then
begin
Form8.RichEdit1.Text:='Блок вырабатывающий 11 эталонов с номиналами от 1 delta до 1024 delta отрицательной или положительной полярности? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=9 //

if Num2=10 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого происходит подключение или отключение основных и дополнительных эталонов соответствующих сегменту, в котором происходит кодирование амплитуды UАИМ-2гр? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=10 //

if Num2=11 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого определяется основной эталон в сегменте и набор дополнительных эталонов? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=11 //

if Num2=12 then
begin
Form8.RichEdit1.Text:='Блок при помощи которого происходит потактовая реализация процедуры нелинейного кодирования и формируется 8-ми разрядная канальная кодовая комбинация в параллельном коде? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=12 //

if Num2=13 then
begin
Form8.RichEdit1.Text:='Блок осуществляющий преобразование сигнала в параллельном коде в последовательный во времени код? (прописью)';
Form8.Edit1.Width:=185;
Form8.Edit1.Visible:=true;
end; // Конец if Num2=13 //
end; //Конец if NumVopr=2 //



if NumVopr=3 then
begin
if Num2=8 then
begin
if Form8.Edit1.Text='компаратор' then
Err2:=0
else
Err2:=1;
end;

if Num2=9 then
begin
if Form8.Edit1.Text='генератор эталонных напряжений' then
Err2:=0
else
Err2:=1;
end;

if Num2=10 then
begin
if Form8.Edit1.Text='блок коммутации эталонов' then
Err2:=0
else
Err2:=1;
end;

if Num2=11 then
begin
if Form8.Edit1.Text='блок выбора сегмента' then
Err2:=0
else
Err2:=1;
end;

if Num2=12 then
begin
if Form8.Edit1.Text='цифровой регистр' then
Err2:=0
else
Err2:=1;
end;

if Num2=13 then
begin
if Form8.Edit1.Text='преобразователь кода' then
Err2:=0
else
Err2:=1;
end;

Form8.Edit1.Clear;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;

Form8.LMDGroupBox1.Caption:='Вопрос 3';
Form8.Panel1.Visible:=true;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(5);
if NumOtv=1 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 10101111. Какова амплитуда отсчета на входе(UАИМ),В?';
if NumOtv=2 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 11000101. Какова амплитуда отсчета на входе(UАИМ),В?';
if NumOtv=3 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 11110011. Какова амплитуда отсчета на входе(UАИМ),В?';
if NumOtv=4 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 10111111. Какова амплитуда отсчета на входе(UАИМ),В?';
if NumOtv=5 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 10001111. Какова амплитуда отсчета на входе(UАИМ),В?';
end; //Конец if NumVopr=3 //



if NumVopr=4 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='62' then
Err3:=0
else
Err3:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='168' then
Err3:=0
else
Err3:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='1216' then
Err3:=0
else
Err3:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='124' then
Err3:=0
else
Err3:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='15' then
Err3:=0
else
Err3:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 4';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(5);
if NumOtv=1 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна 654 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=2 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна 322 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=3 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна 488 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=4 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна 47 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=5 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна 92 В. Указать комбинацию на выходе нелинейного кодера.';
end; //Конец if NumVopr=4 //



if NumVopr=5 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='11100100' then
Err4:=0
else
Err4:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='11010100' then
Err4:=0
else
Err4:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='11011110' then
Err4:=0
else
Err4:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='10100111' then
Err4:=0
else
Err4:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='10110111' then
Err4:=0
else
Err4:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 5';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(5);
if NumOtv=1 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 01011001. Какова амплитуда отсчета на входе(UАИМ)?';
if NumOtv=2 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 01110011. Какова амплитуда отсчета на входе(UАИМ)?';
if NumOtv=3 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 00011100. Какова амплитуда отсчета на входе(UАИМ)?';
if NumOtv=4 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 01011100. Какова амплитуда отсчета на входе(UАИМ)?';
if NumOtv=5 then
Form8.RichEdit1.Text:='Комбинация на выходе нелинейного кодера 00111000. Какова амплитуда отсчета на входе(UАИМ)?';
end; //Конец if NumVopr=5 //



if NumVopr=6 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='-400' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='-1216' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='-28' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='-448' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='-96' then
Err5:=0
else
Err5:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 6';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(5);
if NumOtv=1 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна -567 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=2 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна -434 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=3 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна -54 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=4 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна -981 В. Указать комбинацию на выходе нелинейного кодера.';
if NumOtv=5 then
Form8.RichEdit1.Text:='Амплитуда отсчета (UАИМ) равна -37 В. Указать комбинацию на выходе нелинейного кодера.';
end; //Конец if NumVopr=6 //



if NumVopr=7 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='01100001' then
Err6:=0
else
Err6:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='01011011' then
Err6:=0
else
Err6:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='00101011' then
Err6:=0
else
Err6:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='01101110' then
Err6:=0
else
Err6:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='00100010' then
Err6:=0
else
Err6:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 7';
Form8.RichEdit1.Text:='Выберите последовательность блоков нелинейного кодера используемых в процессе кодирования на 1 такте.';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=false;
Form8.LMDRadioGroup1.Items.Clear;

randomize;
N1:=1+random(3);
for N:=0 to 10000 do
begin
randomize;
N2:=1+random(3);
if N2<>N1 then
break;
end;
for N:=0 to 100000 do
begin
randomize;
N3:=1+random(3);
if (N3<>N1) and (N3<>N2) then
break;
end;
if N1=1 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N1=2 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N1=3 then
Form8.LMDRadioGroup1.Items.Add('Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N2=1 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N2=2 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N2=3 then
Form8.LMDRadioGroup1.Items.Add('Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N3=1 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N3=2 then
Form8.LMDRadioGroup1.Items.Add('Компаратор; Цифровой регистр; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
if N3=3 then
Form8.LMDRadioGroup1.Items.Add('Цифровой регистр; Блок выбора сегмента; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …');
end; //Конец if NumVopr=7 //



if NumVopr=8 then
begin
if Form8.LMDRadioGroup1.Items.Strings[Form8.LMDRadioGroup1.ItemIndex]='Компаратор; Цифровой регистр; Блок коммутации эталонов; Генератор эталонных напряжений; Компаратор …' then
Err7:=0
else
Err7:=1;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;
Form8.LMDRadioGroup1.Items.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 8';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(6);
if NumOtv=1 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=430мВ, если Umax =2048мВ, delta=1 мВ:';
if NumOtv=2 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=312мВ, если Umax =2048мВ, delta=1 мВ:';
if NumOtv=3 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=90мВ, если Umax =2048мВ, delta=1 мВ:';
if NumOtv=4 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=-900мВ, если Umax =2048мВ, delta=1 мВ:';
if NumOtv=5 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=-390мВ, если Umax =2048мВ, delta=1 мВ:';
if NumOtv=6 then
Form8.RichEdit1.Text:='Кодовая группа на выходе нелинейного кодера для Uаим=-1456мВ, если Umax =2048мВ, delta=1 мВ:';
end; //Конец if NumVopr=8 //



if NumVopr=9 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='11011010' then
Err8:=0
else
Err8:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='11010011' then
Err8:=0
else
Err8:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='10110110' then
Err8:=0
else
Err8:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='01101100' then
Err8:=0
else
Err8:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='01011000' then
Err8:=0
else
Err8:=1;
end;

if NumOtv=6 then
begin
if Form8.Edit1.Text='01110110' then
Err8:=0
else
Err8:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 9';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(5);
if NumOtv=1 then
Form8.RichEdit1.Text:='Амплитуда сигнала на выходе нелинейного декодера для кодовой группы 11101010, если Uаим max =Uогр = 4096мВ(с учетом коррекции):';
if NumOtv=2 then
Form8.RichEdit1.Text:='Амплитуда сигнала на выходе нелинейного декодера для кодовой группы 11011010, если Uаим max =Uогр = 4096мВ(с учетом коррекции):';
if NumOtv=3 then
Form8.RichEdit1.Text:='Амплитуда сигнала на выходе нелинейного декодера для кодовой группы 10110110, если Uаим max =Uогр = 4096мВ(с учетом коррекции):';
if NumOtv=4 then
Form8.RichEdit1.Text:='Амплитуда сигнала на выходе нелинейного декодера для кодовой группы 01011000, если Uаим max =Uогр = 4096мВ(с учетом коррекции):';
if NumOtv=5 then
Form8.RichEdit1.Text:='Амплитуда сигнала на выходе нелинейного декодера для кодовой группы 00110110, если Uаим max =Uогр = 4096мВ(с учетом коррекции):';
end; //Конец if NumVopr=9 //




if NumVopr=10 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='1728' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='876' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='184' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='-796' then
Err5:=0
else
Err5:=1;
end;

if NumOtv=5 then
begin
if Form8.Edit1.Text='-184' then
Err5:=0
else
Err5:=1;
end;

Form8.Panel1.Visible:=false;
Form8.Edit1.Visible:=false;
Form8.RichEdit1.Clear;
Form8.LMDButton1.Enabled:=false;
Form8.Edit1.Clear;

Form8.LMDGroupBox1.Caption:='Вопрос 10';
Form8.Panel1.Visible:=false;
Form8.Edit1.Width:=73;
Form8.Edit1.Visible:=true;
randomize;
NumOtv:=1+random(4);
if NumOtv=1 then
Form8.RichEdit1.Text:='Определить структуру 8-ми разрядной кодовой группы на выходе нелинейного кодера, соответствующей передаваемому сигналу U0(t)=31,2 мВ; delta=0,4 мВ';
if NumOtv=2 then
Form8.RichEdit1.Text:='Определить структуру 8-ми разрядной кодовой группы на выходе нелинейного кодера, соответствующей передаваемому сигналу U0(t)=62,4 мВ; delta=0,8 мВ';
if NumOtv=3 then
Form8.RichEdit1.Text:='Определить структуру 8-ми разрядной кодовой группы на выходе нелинейного кодера, соответствующей передаваемому сигналу U0(t)=15,6 мВ; delta=0,2 мВ';
if NumOtv=4 then
Form8.RichEdit1.Text:='Определить структуру 8-ми разрядной кодовой группы на выходе нелинейного кодера, соответствующей передаваемому сигналу U0(t)=124,8 мВ; delta=1,6 мВ';
end; //Конец if NumVopr=10 //


if NumVopr=11 then
begin
try
StrToInt(Form8.Edit1.Text);
except
on EConvertError do
begin
NumVopr:=NumVopr-1;
Application.MessageBox('Пишите только цифры','Ошибка ввода',MB_OK + MB_ICONERROR);
exit;
end;
end;

if NumOtv=1 then
begin
if Form8.Edit1.Text='10110011' then
Err10:=0
else
Err10:=1;
end;

if NumOtv=2 then
begin
if Form8.Edit1.Text='10110011' then
Err10:=0
else
Err10:=1;
end;

if NumOtv=3 then
begin
if Form8.Edit1.Text='10110011' then
Err10:=0
else
Err10:=1;
end;

if NumOtv=4 then
begin
if Form8.Edit1.Text='10110011' then
Err10:=0
else
Err10:=1;
end;


NumErrors:=0;
Form8.LMDGroupBox1.Visible:=false;
Form8.LMDRadioGroup1.Visible:=false;
Form8.Label4.Visible:=true;
Form8.Label7.Visible:=true;
Form8.Label5.Visible:=true;
Form8.Label6.Visible:=true;
Form8.Label1.Visible:=true;
Form8.Label2.Visible:=true;
//Form8.Label3.Visible:=true;
Form8.LMDButton1.Visible:=false;
Form8.Edit1.Visible:=false;


if Err1=1 then
NumErrors:=NumErrors+1;
if Err2=1 then
NumErrors:=NumErrors+1;
if Err3=1 then
NumErrors:=NumErrors+1;
if Err4=1 then
NumErrors:=NumErrors+1;
if Err5=1 then
NumErrors:=NumErrors+1;
if Err6=1 then
NumErrors:=NumErrors+1;
if Err7=1 then
NumErrors:=NumErrors+1;
if Err8=1 then
NumErrors:=NumErrors+1;
if Err9=1 then
NumErrors:=NumErrors+1;
if Err10=1 then
NumErrors:=NumErrors+1;

if Err1=1 then
ss1:=ss1+' 1';
if Err2=1 then
ss1:=ss1+' 2';
if Err3=1 then
ss1:=ss1+' 3';
if Err4=1 then
ss1:=ss1+' 4';
if Err5=1 then
ss1:=ss1+' 5';
if Err6=1 then
ss1:=ss1+' 6';
if Err7=1 then
ss1:=ss1+' 7';
if Err8=1 then
ss1:=ss1+' 8';
if Err9=1 then
ss1:=ss1+' 9';
if Err10=1 then
ss1:=ss1+' 10';

Form8.Label5.Caption:='Правильных ответов: '+IntToStr(10-NumErrors);
Form8.Label6.Caption:='Неправильных ответов: '+IntToStr(NumErrors);
Form8.Label7.Caption:='Ошибки в вопросах:'+ss1;
Form8.Label2.Caption:=form7.Edit1.Text;


if Form7.Edit2.Text<>'' then
begin
Form8.Label3.Visible:=true;
Form8.Label3.Caption:=Form7.Edit2.Text;
Form8.Label1.Caption:='Студенты, выполнившие работу:'
end;

if NumErrors=0 then
begin
Form8.RzURLLabel2.Visible:=true;
//Form4.RzURLLabel3.Visible:=true;
end
else
begin
Form8.RzURLLabel2.Visible:=true;
//Form4.RzURLLabel3.Visible:=false;
end;

end;







end;

procedure TForm8.LMDRadioGroup1Click(Sender: TObject);
begin
if Form8.LMDRadioGroup1.ItemIndex<>-1 then
Form8.LMDButton1.Enabled:=true
else
Form8.LMDButton1.Enabled:=false;
end;

procedure TForm8.Edit1Change(Sender: TObject);
begin
if Form8.Edit1.Text<>'' then
Form8.LMDButton1.Enabled:=true
else
Form8.LMDButton1.Enabled:=false;
end;

end.
