*Начало * Ответить * Статистика * Задать вопрос * Поиск * FAQ * * |
DotFix Forum / Вопросы программирования и исследования защит / Программа для тестирования знаний |
Автор | Сообщение |
RideX Участник |
Дата: 26 Сен 2006 09:46 Попросили помочь сделать простенькую программу для тестирования знаний, написанную на VB, условия: 1) Вопрос задания - строка до 250 символов 2) Варианты ответа - строки до 200 символов, до 6 вариантов 3) Оценки вариантов - числа 4) Возможность контролировать цену вопросов, т.е. текствоые EDIT, в которых прописывается, сколько баллов будет получено в случае верного ответа, а в случае неверного - какой будет штраф. Использовать базы данных, типа связки ADO + Access + SQL, нельзя! Потому встаёт первый вопрос, как проще спроектировать пользовательскую базу для тестов и хранить в ней данные, чтобы потом было наиболее удобно и просто работать с ней? Например: Вариант I, через структуру типа: TQuestion = record strQuestion: String[250]; // вопрос strAnswer1 : String[200]; // ответ 1 strAnswer2 : String[200]; // ответ n nMark1 : BYTE; // положитнльная оценка на вопрос Вариант II, в строках через разделитель, баллы по позиции значения в строке: 1. strQuestion 2. strAnswer1#strAnswer2 3. nMark1nMark2nNegMark1nNegMark2 Вариант III, в отдельной строке каждое значение: 1. strQuestion 2. strAnswer1 3. strAnswer2 4. nMark1 5. nMark2 6. nNegMark1 7. nNegMark2 Вариант IV, в .ini файле: [Main] nCount=n [strQuestion<n>]= [strAnswer1]= [strAnswer2]= [nMark1]= [nMark2]= [strQuestion<n+1>]= [strAnswer1]= [strAnswer2]= [nMark1]= [nMark2]= |
Admin Администратор |
Дата: 26 Сен 2006 21:25 за тебя эту программу писать и разрабатывать никто не будет. Если что не понятно конкретное при программировании спрашивай, а так у всех есть свои дела и не так много свободного времени |
RideX Участник |
Дата: 27 Сен 2006 08:49 Где я просил что-то написать за меня? Я только спросил, цитата: "как проще спроектировать пользовательскую базу для тестов и хранить в ней данные, чтобы потом было наиболее удобно и просто работать с ней?", потому как с VB столкнулся впервые. Тебе если нечего сказать по данному поводу - просто помолчи. Теперь по существу вопроса. Почитав доки, думаю, построчный вариант работы с файлом самый простой, остановился на нём. |
Admin Администратор |
Дата: 27 Сен 2006 18:50 Не умничай - разработка БД - это 1/3 всей работы. Вся твоя прога пишется за вечер без напрягов. Quoting: RideX Почитав доки, думаю, построчный вариант работы с файлом самый простой, остановился на нём. Самый простой - разработать структуру которую сохранять в файл и считывать командой Get. |
RideX Участник |
Дата: 28 Сен 2006 14:59 Прошу прощения, конечно, что был резковат в предыдущем посте, просто действительно мне нужен был всего лишь совет, а не тычок мордой в грязь. Кстати, полностью согласен, что прога пишется элементарно за пару часов даже на асме, это я бы сам сделал легко без всякой помощи, но VB я не знаю абсолютно, потому хотелось начать сразу с правильного подхода. За подсказку работы со структурой и функцией Get действительно спасибо! По поводу этой ф-ции компилер выдал следующее сообщение: 'Get' statements are no longer supported. File I/O functionality is a Что в общем-то сначала привело меня к такому коду: Dim FileStream As New BinaryReader(File.Open(strFileName, FileMode.Op Но как оказалось, в VB по умолчанию эти ф-ции работают с Unicode, для работы с ANSI потребовались совсем незначительные изменения, что в конце привело к такому результату (чтение из файла): If hFile.Exists Then Dim pMemory As String = "" Dim FileStream As New BinaryReader(File.Open(strFileName, FileMode Причём эта ф-ция позволяет читать не только как массив символов (ReadChars), но и вообще как любой тип данных, даже такие как числа с плавающей точкой! Сейчас осталось разобраться с типом данных структура, это всё таки поудобнее будет чем несвязные между собой переменные |
RideX Участник |
Дата: 28 Сен 2006 16:36 Со структурой вроде всё понятно, но как оказалось BinaryWriter не может записать её всю целиком, только по полям в отдельности With BinaryWriter, you have to write primitive data type |
RideX Участник |
Дата: 28 Сен 2006 21:12 Мда.. как мне только что сообщили, я вообще не то делаю Оказывается нужно делать на VB 6 и только на нём, два дня потрачены впустую.. |
Admin Администратор |
Дата: 29 Сен 2006 19:26 Quoting: RideX По поводу этой ф-ции компилер выдал следующее сообщение: Так бы и сказал что речь идет о VB .NET а не о стандартном VB6. На .NET'е свои премудрости там и СУБД проще использовать - там под это гора встроенных средств. Quoting: RideX Мда.. как мне только что сообщили, я вообще не то делаю Оказывается нужно делать на VB 6 и только на нём, два дня потрачены впустую.. Ага Кстати он удобнее VB .NET |
RideX Участник |
Дата: 30 Сен 2006 09:03 Да, согласен на все 100%, VB 6 лучше чем .NET тем, что даёт больше контроля над своим кодом, ближе к операционной системе. Я в тот же день его поставил со своего старого диска с VisualStudio 98 Ну, я уже знал с чего начать ;) потому всё сразу нормально пошло через Get/Put. У модератора прошу прощения, если здесь на форуме запрещено постить ссылки на варез, но хочу сказать, может кому пригодится, нашел пару книг по VB 6: 1. Автор: Никита Культин Название книги: Visual Basic: освой на примерах Страниц: 288 Издат-во: БХВ-Петербург 2004 Формат: pdf Размер файла: ~ 7 Мб Скачать: http://rapidshare.de/files/9168645/Visual_Basic_osnovi_na_primerah_by_ GERZ.ru.pdf.html 2. Автор: Микаэль Хальворсон Название книги: Microsoft Visual Basic 6.0 для профессионалов. Шаг за шагом Страниц: 720 Издат-во: ЭКОМ 1999 Формат: djvu + исходники с CD Размер файла: ~ 68 Мб Скачать: http://rapidshare.de/files/19197305/Visual_Basic_6.0_SBS.rar.html P.S. GPcH, может залить эти книги тебе на сайт в раздел доки? Если что, я их уже качнул, а исходящий траф у меня бесплатно, так что могу это сделать. |
Admin Администратор |
Дата: 1 Окт 2006 23:03 Quoting: RideX У модератора прошу прощения, если здесь на форуме запрещено постить ссылки на варез, но хочу сказать, может кому пригодится, нашел пару книг по VB 6 Ссылки можно, а заливать нет, так что извини Я сам то без книг учился в свое время потому думаю VB модно освоить по статьям в разделе статьи на сайте |