Не работает скомпилированная программа VB
Формулировка задачи:
Программка VB в режиме интерпретатора работает, откомпилированная выдает ошибку 13. Ошибку не нахожу. Ума не приложу как решить данную проблему.Помогите кто может, плиз
Решение задачи: «Не работает скомпилированная программа VB»
textual
Листинг программы
Dim Familiya As String Dim spisok(80) As String Dim p(5) As String Dim otvet(20) As String Dim otmetka As String Dim var(20, 120) As String Dim shablon(20, 20) As String Dim k As Long Dim rezalt As Long Private Sub Command1_Click() 'шаблоны ответов shablon(1, 1) = "11100" shablon(1, 2) = "11110" ‘далее идет ввод всех шаблонов. 'блок нахождения правильных ответов For i = 0 To 4 If Check1(i).Value = tru Then p(i) = "0" Else p(i) = "1" otvet(1) = otvet(1) & p(i) Next i For i = 0 To 4 If Check2(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(2) = otvet(2) & p(i) Next i For i = 0 To 4 If Check3(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(3) = otvet(3) & p(i) Next i For i = 0 To 4 If Check4(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(4) = otvet(4) & p(i) Next i For i = 0 To 4 If Check5(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(5) = otvet(5) & p(i) Next i For i = 0 To 4 If Check6(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(6) = otvet(6) & p(i) Next i For i = 0 To 4 If Check7(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(7) = otvet(7) & p(i) Next i For i = 0 To 4 If Check8(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(8) = otvet(8) & p(i) Next i For i = 0 To 4 If Check9(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(9) = otvet(9) & p(i) Next i For i = 0 To 4 If Check10(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(10) = otvet(10) & p(i) Next i For i = 0 To 4 If Check11(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(11) = otvet(11) & p(i) Next i For i = 0 To 4 If Check12(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(12) = otvet(12) & p(i) Next i For i = 0 To 4 If Check13(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(13) = otvet(13) & p(i) Next i For i = 0 To 4 If Check14(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(14) = otvet(14) & p(i) Next i For i = 0 To 4 If Check15(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(15) = otvet(15) & p(i) Next i For i = 0 To 4 If Check16(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(16) = otvet(16) & p(i) Next i For i = 0 To 4 If Check17(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(17) = otvet(17) & p(i) Next i For i = 0 To 4 If Check18(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(18) = otvet(18) & p(i) Next i For i = 0 To 4 If Check19(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(19) = otvet(19) & p(i) Next i For i = 0 To 4 If Check20(i).Value = tru Then p(i) = 0 Else p(i) = 1 otvet(20) = otvet(20) & p(i) Next i ' Окончание блока 'Определение результата For j = 1 To 20 If otvet(j) = shablon(k, j) Then rezalt = rezalt + 1 Next j If rezalt ; 13 And rezalt 17 Then otmetka = 3 If rezalt 14 Then otmetka = 2 If rezalt ; 16 And rezalt 19 Then otmetka = 4 If rezalt ; 18 Then otmetka = 5 Label13.Caption = "Правильных ответов-" Label15.Caption = "Оценка-" Label14.Caption = rezalt Label16.Caption = otmetka Open "c:\Ведомость.txt" For Append As #1 Print #1, Familiya; Tab(40); rezalt; Tab(50); otmetka Close #1 Stop End Sub Private Sub Form_Load() spisok(1) = "Иванов" spisok(2) = "Петров" spisok(3) = "Иванова" ‘ идет ввод списка фамилий тестируемых 10 Familiya = InputBox("Введите свою Фамилию в именительном падеже") If Familiya = "" Then Pushbuttom = MsgBox("Вы не авторизованы!" & Chr(13) & "Повторите попытку и будьте внимательны", 0 + 48): GoTo 10 For i = 1 To 80 If Familiya = spisok(i) Then GoTo 20 Next i 'Pushbuttom = MsgBox("Указанной фамилии нет в списке группы!" & Chr(13) & " Будьте внимательны. Пишите фамилию с большой буквы." & Chr(13) & "Повторите попытку", 0 + 48): GoTo 10 20 Label7.Caption = Familiya Label2.Caption = 19 Label3.Caption = 60 Timer1.Enabled = True Label5.Caption = Familiya 'определение номера варианта Randomize q1 = Int(Rnd * 10) + 1 Randomize q2 = Int(Rnd * 10) + 10 q3 = q2 / 2 If q3 = Int(q3) Then q = q1 Else q = q2 Label10.Caption = q 'заполнение варианта var(1, 1) = "1. Информационная технология - это:" var(1, 2) = " а) процесс, направленный на получение информации, обеспечивающей достижение поставленных целей;" ‘ вводятся варианты заданий. Вручную, а не программно с помощью файлов доступа, это делается для того, чтобы «спрятать» в теле скомпилированного кода вопросы и ответы 'k-первое значение дв массива k = q For j = 1 To 110 Text1.Text = Text1.Text & var(k, j) & vbCrLf Next j End Sub Private Sub Timer1_Timer() Timer1.Enabled = True Label3.Caption = Label3.Caption - 1 If Label3.Caption = 0 Then Label2.Caption = Label2.Caption - 1: Label3.Caption = 60 If Label2.Caption = 0 Then Timer1.Enabled = Fals: Label3.BackColor = HighLight End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д