Есть готовый тест | Код | Option Explicit Dim i As Integer Const Kol As Integer = 10 'Общее количество вопросов Dim Ver(1 To 10) As Byte 'Массив правильных ответов Dim q(1 To 10) As String 'массив текстов вопросов Dim Otv(1 To 10, 1 To 3) As String 'массив ответов на вопросы Public a, Tek As Byte 'переменна, суммирующая правильные ответы 'номер текущего вопроса
Private Sub Form_Load()
q(1) = "1. Äëÿ ÷åãî ñëóæèò øèíà óïðàâëåíèÿ:" q(2) = "2. Ðàçðÿäíîñòü øèíû äàííûõ îïðåäåëÿåòñÿ:" q(3) = "3. Àäðåñ ïåðåäà¸òñÿ ïî àäðåñíîé øèíå â íàïðàâëåíèè:" q(4) = "4.  êàêîé èç ïåðå÷èñëåííûõ ðàçú¸ìîâ íåëüçÿ ïîäêëþ÷èòü ìûøü:" q(5) = "5. Öåíòðàëüíûé ýëåìåíò, õàðàêòåðèçóþùèé âû÷èñëèòåëüíûå âîçìîæíîñòè êîìïüþòåðà - ýòî:" q(6) = "6. Øèíà PCI îáåñïå÷èâàåò:" q(7) = "7. Þæíûé ìîñò îáåñïå÷èâàåò:" q(8) = "8. Ðàçú¸ì ñîêåò(soket) ñëóæèò äëÿ:" q(9) = "9. Ñïåöèàëüíûå ïëàòû, íà êîòîðûõ ìîíòèðóþòñÿ îòäåëüíûå ìèêðîñõåìû ÎÇÓ - ýòî:" q(10) = "10. Celeron - ýòî ïðîöåññîðû êîðïîðàöèè:"
Ver(1) = 2 Ver(2) = 1 Ver(3) = 1 Ver(4) = 3 Ver(5) = 2 Ver(6) = 2 Ver(7) = 3 Ver(8) = 2 Ver(9) = 1 Ver(10) = 3 Ver(10) = 3
Otv(1, 1) = "Ïî íåé ïåðåäà¸òñÿ àäðåñ óñòðîéñòâà èëè ÿ÷åéêè îïåðàòèâíîé ïàìÿòè, êóäà ïåðåñûëàþòñÿ èëè îòêóäà ñ÷èòûâàþòñÿ äàííûå." Otv(1, 2) = "Äëÿ ïåðåäà÷è ñèãíàëîâ, îïðåäåëÿþùèõ õàðàêòåð îáìåíà èíôîðìàöèåé ïî ìàãèñòðàëè." Otv(1, 3) = "Ïî ýòîé ëèíèè äàííûå ïåðåäàþòñÿ ìåæäó ðàçëè÷íûìè óñòðîéñòâàìè." Otv(2, 1) = "Ðàçðÿäíîñòüþ ïðîöåññîðà." Otv(2, 2) = "Ðàçðÿäíîñòüþ øèíû àäðåñà." Otv(2, 3) = "Ðàçðÿäíîñòüþ øèíû óïðàâëåíèÿ." Otv(3, 1) = "Îò ïðîöåññîðà ê îïåðàòèâíîé ïàìÿòè è óñòðîéñòâàì." Otv(3, 2) = "Îò îïåðàòèâíîé ïàìÿòè ê ïðîöåññîðó." Otv(3, 3) = " ëþáîì íàïðàâëåíèè." Otv(4, 1) = "Èíôðàêðàñíûé ïîðò." Otv(4, 2) = "COM." Otv(4, 3) = "LPT." Otv(5, 1) = "BIOS." Otv(5, 2) = "Ïðîöåññîð." Otv(5, 3) = "Îïåðàòèâíàÿ ïàìÿòü." Otv(6, 1) = "Îáìåí èíôîðìàöèåé ìåæäó ñåâåðíûì ìîñòîì è ïîðòàìè äëÿ ïîäêëþ÷åíèÿ ïåðèôåðèéíîãî îáîðóäîâàíèÿ." Otv(6, 2) = "Îáìåí èíôîðìàöèåé ñ êîíòðîëëåðàìè ïåðèôåðèéíûõ óñòðîéñòâ." Otv(6, 3) = "Îáìåí èíôîðìàöèåé ìåæäó ïðîöåññîðîì è îïåðàòèâíîé ïàìÿòüþ." Otv(7, 1) = "Îáìåí èíôîðìàöèåé ñ êîíòðîëëåðàìè ïåðèôåðèéíûõ óñòðîéñòâ." Otv(7, 2) = "Îáìåí èíôîðìàöèåé ìåæäó ïðîöåññîðîì è îïåðàòèâíîé ïàìÿòüþ." Otv(7, 3) = "Îáìåí èíôîðìàöèåé ìåæäó ñåâåðíûì ìîñòîì è ïîðòàìè äëÿ ïîäêëþ÷åíèÿ ïåðèôåðèéíîãî îáîðóäîâàíèÿ." Otv(8, 1) = "Ïîäêëþ÷åíèÿ ïðèíòåðà." Otv(8, 2) = "Ïîäêëþ÷åíèÿ ïðîöåññîðà ê ìàòåðèíñêîé ïëàòå." Otv(8, 3) = "Ïîäêëþ÷åíèÿ âèäåîêàðòû." Otv(9, 1) = "Ìîäóëè ïàìÿòè." Otv(9, 2) = "Øèíû ïàìÿòè." Otv(9, 3) = "×èïñåòû." Otv(10, 1) = "AMD." Otv(10, 2) = "Rise." Otv(10, 3) = "Intel."
Tek = 1
a = 0 Call ReQuest End Sub Private Sub Command1_Click()
If Tek < Kol Then For i = 1 To 3 If Option1(i - 1).Value = True And i = Ver(Tek) Then a = a + 1 Next i Tek = Tek + 1
Call ReQuest Else MsgBox ("Тест закончен") Command1.Visible = False Label1.Caption = "Ваш результат " & Str(a) & " баллов" For i = 0 To 2 Option1(i).Visible = False Next i
End If
End Sub Private Sub ReQuest() Dim i As Integer Label1.Caption = q(Tek) For i = 0 To 2 Option1(i).Caption = Otv(Tek, i + 1) Option1(i).Value = False
Next i End Sub
|
Правильные ответы подсчитываются, но максимум - 9 правильных ответов, при том что отвечаешь правильно на все 10 вопросов. Наверное проблема в этой записи If Tek < Kol Then, но я не понимаю как надо записать (если написать <= или = получается что-то не то). Подскажите пожалуйста!
|