Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
1

Как сделать программу для тестирования обучаемых

16.05.2012, 23:34. Показов 1894. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Проблема состоит в том что большая часть программы написана, нужно лишь исправить некоторые ошибки и добавить некоторые элементы. Мне необходимо доделать режим контроль обучения, обратный отсчет времени я сделал, список вопросов массивом записал, сделал чтобы они отображались в случайном порядке при нажатии кнопки. Но вот как сделать чтобы нажатием на нужные элементы программа воспринимала это как ответ? Еще есть маленькая проблемка со сравнением значений меток(должно быть: при значениях 1 2 3 4 - цвет фона меток белый, любые другие варианты - красный), уровень моего владения данным языком оставляет желать лучшего, так что скорее всего я допустил кучу ошибок и после множества проверок их не замечаю.
Помогите пожалуйста по мере возможностей, а то пропаду с этим дипломом совсем..
Заранее спасибо.
Вложения
Тип файла: rar Дип проект.rar (9.6 Кб, 69 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2012, 23:34
Ответы с готовыми решениями:

Как сделать программу для нагрузочного тестирования модуля в Delphi7?
в программу должны вноситься входные данные для проверки модуля

Как сделать загрузочный диск для тестирования?
Здравствуйте,уважаемые участники форума. Представьте себе ситуацию: включаете комп,а сис- тема...

Как написать программу для тестирования?
Как написать программу для тестирования. в программе должно быть 20 вопросов по 4 варианта ответа....

Как написать программу для тестирования знаний
Система тестирования знаний. Дан текстовый файл с вопросами и верными ответами. Ввести Ф.И.О...

12
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
17.05.2012, 07:49 2
Похоже многие как и я не понимают о чём речь поэтому и молчат.
Задавал бы конкретные вопросы. Напимер:
Но вот как сделать чтобы нажатием на нужные элементы программа воспринимала это как ответ
Отвечаю: вписать соответствующую процедуру в событие "клик" элемента
есть маленькая проблемка со сравнением значений меток
Отвечаю: впиши процедуру сравнения значения и назначения цвета фона в событие "клик" метки
0
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
17.05.2012, 07:57  [ТС] 3
Я сделал с метками все что вы написали, работает не правильно, сделал мини вариант этого сравнения, там индексы и переменные другие, возможно поэтому работает, а вот в основной версии программы не работает, точнее работает, но не так как нужно. Там наверняка есть какая-то ошибка, но я никак не могу её найти.
Спасибо что откликнулись.
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
17.05.2012, 08:07 4
Я просто не понял пока смысла работы.
Что заметил:
Visual Basic
1
MsgBox ("Необходимо ввести число от 1 до 4")
Сообщает, но не исправляет и не предлагает исправить. Ставит что ввёл.
Попробуй так:
Visual Basic
1
2
3
4
5
6
7
8
Do
    t = CInt(InputBox("Введите номер выхода"))
    K1(bc).Caption = t
    MatD(b, c) = t
    If t < 1 Or t > 4 Then
        MsgBox ("Необходимо ввести число от 1 до 4")
    End If
Loop While t < 1 Or t > 4
1
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
17.05.2012, 22:51  [ТС] 5
Чуть попозже попробую, щас только к дипломному руководителю схожу.
Спасибо за совет.

Добавлено через 13 часов 44 минуты
Я почти весь день пытался найти ошибку, так и не получилось. Поэтому постараюсь внести ясность в суть проблемы.
Мне необходимо сделать так чтобы при внесении изменений в одну из меток, т. е. два значения будут одинаковы, то весь столбик меток должен стать красным. После того как в столбике меток все значения будут разными 1 2 3 4, все метки столбца станут белыми как было до внесения изменений.
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
18.05.2012, 09:55 6
Ошибка в том, что ты используешь одну глобальную переменную в разных процедурах.
В часности
Visual Basic
1
2
3
4
Private Sub K1_Click(Index As Integer) 'номер выбранного входа
bc = Index
b = bc \ 10
c = bc Mod 10
с = намер столбца.
Затем вызываешь процедуру сравнения и в ней переменная снова используется в цикле.
В результате по возвращеню в процедуру K1_Click она уже не равняется номеру столбца.

Добавлено через 6 минут
кусок процедуры клика
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Sravnenie c
If lol = 1 Then
        For m1 = 1 To 4
        K1(m1 * 10 + c).BackColor = RGB(255, 255, 255)
        Next m1
        Else
        For m1 = 1 To 4
        K1(m1 * 10 + c).BackColor = vbRed
        Next m1
        End If
End Sub
процедура сравнения
Visual Basic
1
2
3
4
5
6
7
8
9
Private Sub Sravnenie(S) ' Сравнение яйчеек КИ матрицы управления
Dim Rr, Cc
lol = 1
    For Rr = 1 To 3
        For Cc = Rr + 1 To 4
           If K1(Rr * 10 + S) = K1(Cc * 10 + S) Then lol = 0: Exit Sub
        Next Cc
    Next Rr
End Sub
1
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
19.05.2012, 11:40  [ТС] 7
Теперь мне ясно в чем была ошибка. Спасибо.
Только вот теперь не совсем понятно каким образом задавать S, потому как после запуска программы и внесения изменений кликом, попав в окной отладки, я вижу что S = Empty.
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
19.05.2012, 11:46 8
процедура вызывается с параметром:
Visual Basic
1
Sravnenie c
Добавлено через 1 минуту
передаётся номер столбца рассчитанный выше:
Visual Basic
1
c = bc Mod 10
Добавлено через 2 минуты
И проверяется не вся таблица, а лишь 1 указанный столбец
0
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
19.05.2012, 11:48  [ТС] 9
Я только что решил это иначе, над Rr= 1to 3 просто прописал For S=1 to 9 и закончил внизу Next S. Только что запустил и теперь работает как надо
Спасибо что нашли мою ошибку.
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
19.05.2012, 11:51 10
Зачем проверять всю таблицу если достаточно проверить 1 столбец?

Добавлено через 2 минуты
Sravnenie c - проверь та ли буква "с"
Если русская бедет Емпту
Должна передать номер столбца
1
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
19.05.2012, 11:52  [ТС] 11
Я об этом не задумываюсь. Моя основная задача состоит в том чтобы закончить вовремя дипломную работу, а для этого необходимо чтобы программа работала правильно и не сильно важно каким образом я это сделаю.
Теперь мне остается только второй режим доделать, во второй форме.
0
11517 / 3803 / 681
Регистрация: 13.02.2009
Сообщений: 11,223
19.05.2012, 11:54 12
Я об этом не задумываюсь
Над этим могут задуматься другие.
Знаю, что нерациональные методы не приветствуются.
За неправильно объявленные переменные снижают оценки.
Так что смотри сам.
0
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 7
19.05.2012, 12:09  [ТС] 13
Проверил, действительно работает, поставил английскую с, заработало.

Добавлено через 2 минуты
Я по профессии связист, через месяц буду лейтенантом, я не программист, Visual Basic у нас в программе обучения нет, осваивал сам под руководством своего дипломного руководителя. Да и на ГАК в комисии будут сидеть те, кто не владеет языками программирования.

Добавлено через 9 минут
У меня есть вопрос по поводу работы со временем.
Мне необходимо чтобы вёлся обратный отсчет времени начиная с 5 минут, причем чтобы отображались секунды и минуты. Я это все сделал с помощью функции Timer. Можно ли все это сделать как-то по-другому?
0
19.05.2012, 12:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.05.2012, 12:09
Помогаю со студенческими работами здесь

Программа для тестирования. Как сделать переход на следующий вопрос
//Создать программу тестирования: пользователю на форме предлагается вопрос и //4е варианта...

Как сделать запись данных из файла в массив по условию для программы тестирования?
Здравствуйте, появилась идея создать свой &quot;тестер&quot;. В связи с этим появилось несколько вопросов,...

Написать программу для тестирования
Делал тут программку - тест на С++ (консольную) и чет заморочился. Суть: существует массив стринг...

Написать программу для тестирования
народ подскажите пожалуйста как написать код!! надо чтобы прога выдавала вопрос который я захочу и...

Написать программу для тестирования с авторизацией
Всем привет, занимаюсь в VB10 сравнительно не давно, помогите пожалуйста создать тестирующее...

Составить программу для тестирования последовательного интерфейса
Составить программу для тестирования последовательного интерфейса RS232C. Номер интерфейса COM1 или...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru