// Скрипт для зачётного класса Академии первого урока (01zadd02.htm)
// Задания

// Постановки задач
var SetTasks = new Array(
'Разделяемая среда:',                                             // 1
'Среда с коммутацией пакетов:',                                   // 2
'Устройства, сохраняющие единую разделяемую среду:',              // 3
'Устройства, разделяющие сеть на домены коллизий:',               // 4
'Диаметр сети Ethernet:',                                         // 5
'Каковы причины ограничения диаметра сети Ethernet:',             // 6
'Что влияет на вычисление допустимого диаметра сети Ethernet:',   // 7
'Чем коммутатор отличается от хаба:',                             // 8
'Сколько в этой сети доменов коллизий:',
'Сколько в этой сети доменов коллизий:',
'Сколько в этой сети доменов коллизий:',
'Сколько в этой сети доменов коллизий:',
'Сколько в этой сети доменов коллизий:',
'Сколько в этой сети доменов коллизий:'
                     );

// Варианты
var Variants = new Array(   // 1
  new Array(
'сообщение разделяется на пакеты',
'пакеты транслируются на все станции сети',
'пакеты продвигаются шаг за шагом к станции назначения',
'передача пакета повторяется через случайное время после коллизии',
'диаметр сети не ограничен',
'диаметр сети ограничен'
           ),

  new Array(                // 2
'сообщение разделяется на пакеты',
'пакеты транслируются на все станции сети',
'пакеты продвигаются шаг за шагом к станции назначения',
'передача пакета повторяется через случайное время после коллизии',
'диаметр сети не ограничен',
'диаметр сети ограничен'
           ),

  new Array(                // 3
'терминатор',
'трансивер',
'повторитель',
'хаб',
'коммутатор',
'маршрутизатор'
           ),

  new Array(                // 4
'терминатор',
'трансивер',
'повторитель',
'хаб',
'коммутатор',
'маршрутизатор'
           ),

  new Array(                // 5
'максимальная суммарная длина кабеля соединяющего две станции',
'суммарная длина кабеля соединяющего все станции',
'минимальная длина кабеля соединяющего две станции',
'максимальный отрезок кабеля, соединяющий две соседние станции'
           ),

  new Array(                // 6
'не допускать в среде поздние коллизии',
'не допускать в среде ранние коллизии',
'не допускать в среде коллизии',
'не допускать монополизацию среды'
           ),

  new Array(                // 7
'скорость передачи данных в среде',
'скорости распространения сигнала в среде',
'минимальная длина пакета',
'максимальная длина пакета',
'число станций в сети'
           ),


  new Array(                // 8
'у коммутатора больше портов',
'у коммутатора есть программное обеспечение, у хаба&nbsp;&#151; нет',
'коммутатор маршрутизирует пакеты, а хаб&nbsp;&#151; нет',
'коммутатор делит сеть на домены коллизий, а хаб&nbsp;&#151; нет',
'коммутатор проверяет контрольную сумму пакета, а хаб&nbsp;&#151; нет'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           ),

  new Array(
'?',
'1',
'2',
'3',
'4'
           )

                        );

// Ответы
var Answers =  new Array(
  new Array(
true, true, false, true, false, true
           ),

  new Array(
true, false, true, false, true, false
           ),

  new Array(
true, true, true, true, false, false
           ),

  new Array(
false, false, false, false, true, true
           ),


  new Array(
true, false, false, false

           ),


  new Array(
true, false, false, false
           ),


  new Array(
true, true, true, false, false

           ),


  new Array(
false, true, true, true, false

           ),

1, 1, 1, 2, 2, 4

               );

var picRU = new Array(
'./pic/01zadd06.gif',
'./pic/01zadd07.gif',
'./pic/01zadd08.gif',
'./pic/01zadd09.gif',
'./pic/01zadd10.gif',
'./pic/01zadd11.gif'
                     );



//-----------------------------
// Построение зачетного класса
//-----------------------------
function ShowZRU(teach)
{
  var i;
  var str = '<P>Нажмите кнопку <SPAN class=mark>Сброс</SPAN>, затем приступайте к решению.';
  str += '<P><FORM name=exam><P><IMG src=../pic/clear.gif';
  str += ' width=113 height=41 border=0 alt=Сброс';
  str += ' onmouseup   ="room.Ini()"';
  str += ' onmousedown ="this.src=\'../pic/clear2.gif\'"';
  str += ' onmouseover ="this.src=\'../pic/clear1.gif\'"';
  str += ' onmouseout  ="this.src=\'../pic/clear.gif\'">';

  // Построение заданий
  // Флажки
  for (i=0; i<8; i++)
    str += ZFlagRU(teach, i, SetTasks[i], Variants[i], Answers[i]);

  // Выбор ответа к картинке из меню
  for (i=0; i<6; i++)
    str += ZPicMenuRU(teach, i+8, SetTasks[i+8], Variants[i+8], Answers[i+8],picRU[i]);

  str +='<P>Чтобы увидеть результат работы, нажмите кнопку <SPAN class=mark>Оценка</SPAN>.';
  str +='<P><IMG src=../pic/bonus.gif width=113 height=41';
  str +=' border=0 alt=Оценка';
  str +=' onmouseup   ="room.Bonus()"';
  str +=' onmousedown ="this.src=\'../pic/bonus2.gif\'"';
  str +=' onmouseover ="this.src=\'../pic/bonus1.gif\'"';
  str +=' onmouseout  ="this.src=\'../pic/bonus.gif\'">';
  str +='</FORM>';

  document.write(str);
  room = new CheckTasks(SetTasks.length,exam);
  //room = new CheckTasks(SetTasks.length,exam);
}
