Смекни!
smekni.com

Разработка информационно-обучающей системы на тему “Атомно-молекулярная теория. Доказательство существования атомов и молекул (стр. 3 из 7)

– пользователь набрал меньше 3 баллов – уровень подготовки «Плохо»;

– от 3 до 6 баллов – уровень подготовки «Удовлетворительно»;

– больше 6 баллов – уровень знаний «Хорошо»;

– 10 баллов – «Отлично».


3. ОБОСНОВАНИЕ ВЫБОРА ЯЗЫКА ПРОГРАММИРОВАНИЯ

Первая версия языка С была разработана в 1972 г. сотрудником фирмы Bell Laboratories Денисом Ритчи, когда он и Кен Томпсон занимались созданием операционной системы UNIX. Важным моментом является то, что язык С был создан в качестве инструмента для программистов – практиков, поэтому главная цель разработки этого языка заключалась в том, чтобы сделать его полезным при создании различных прикладных программ.

За истекшие три десятилетия С превратился в один из наиболее важных и популярных языков программирования. Правда в течении последнего десятилетия многие программисты перешли на более популярный сегодня С++. Однако С по – прежнему остается важным языком программирования и как сам по себе, и как промежуточная ступень при переходе на С++. С обладает множеством преимуществ. Он является современным языком программирования, включающим в себя управляющие структуры, наличие которых в языке считается желательным с точки зрения теории и практики программирования. Этот язык построен так, что позволяет естественным образом применять планирование сверху – вниз, структурный подход к программированию, модульное проектирование программ. В результате на С получаются более надежные и “прозрачные программы”.

Для языка С характерна достаточно высокая эффективность. Здесь сполна применяются возможности современных компьютеров. Программы на С получаются компактными и быстро выполняемыми.

Языку С присуща высокая степень переносимости. Это означает, что программы на языке С, написанные для одной операционной системы, могут выполняться в других системах с небольшими изменениями. Кроме того язык С является достаточно мощным и гибким. На нем написана большая часть операционной системы UNIX.

Важным является то, что язык С является языком программирования, ориентированным на удовлетворение потребностей программистов. Он предоставляет доступ к аппаратным средствам и позволяет оперировать отдельными битами оперативной памяти. Он включает в себя набор операторов, позволяющих программисту выражать свои идеи в компактном виде. Язык программирования С менее строгий, чем, скажем, язык Pascal, в смысле ограничения свободы действий программиста. С одной стороны это является несомненным достоинством, но с другой – таит в себе определенную опасность. Достоинства заключается в том, что многие задачи, например преобразование форм данных, С позволяет решать гораздо проще, чем другие языки программирования. Опасность же заключается в том, что язык С позволяет совершать такие ошибки, которые не возможны в других языках.

Язык С обеспечивает программисту большую степень свободы, но и накладывает большую степень ответственности.

Вот почему именно язык С был выбран автором для реализации данного программного продукта.


4 ОПИСАНИЕ ПРОГРАММНОГО ПРОДУКТА

4.1 Входные данные

Входными данными являются: данные справочного материала (вводятся из файла справки), данные теории (вводятся из файла теории), тестовые данные (вводятся из тестовых файлов).

Файлы справки и теории – это два текстовых файла, длина строк которых не превышает шестидесяти – семидесяти четырех символов. Файлы организованы так, что каждые двадцать строк составляют одну страницу. Для таких файлов используется расширение «*.txt».

Файлы тестов – это текстовые файлы, содержащие тестовые задания, предназначенные для тестирования и оценки уровня знаний, полученных пользователем в процессе обучения. Длинна строк этих файлов не превышает тридцати – сорока символов. Для таких файлов так же используется расширение «*.txt». Для файла правильных ответов используется расширение «*.dat».

4.2 Контроль входных данных

Система осуществляет контроль входных данных, и адекватно реагирует на некорректные данные. Перед открытием файла справки, теории, тестовых заданий и фала правильных ответов система проверяет их наличие в текущем каталоге. В случае отсутствия файла, система сообщает об этом пользователю.


4.3 Выходные данные

Выходными данными информационно-обучающей системы являются результаты тестирования пользователя полученные в результате выполнения пользователем всех тестовых заданий.

4.4 Модульная структура программного продукта

4.4.1 Перечень модулей

Программный продукт включает в себя следующие одиннадцать основных модулей:

BIB.c – основной модуль, вызывающий все стандартные модули языка С, такие как: STRING.h, STDIO.h, CONIO.h, GRAPHICS.h, STDLIB.h.

RAMKA.c – модуль, который занимается прорисовкой графического интерфейса (рамки по боковым краям экрана).

MENU.c – графический модуль. Отвечает за прорисовку основных графических элементов системы (главное меню, тестовое меню, курсор, передвижение курсора по меню), а так же за вывод заставки при запуске программы и прорисовки активной подсказки.

ZASTAVKA.c - модуль, отвечающий за вывод на экран заставки при запуске программы.

– модуль, отвечающий за вывод на экран текстов теории и справки, а также за возможность их постраничного скроллирования.

POISK.c – модуль, отвечающий за возможность поиска информации в тексте теории в зависимости о контекста введенных пользователем лексем. Осуществляет поиск, вывод на экран и дальнейшее возобновление поиска.

FILE_OP.c – модуль, отвечающий за возможность открытия файлов теории, вывод теории на экран, скроллинг, прорисовка меню пункта «Теория», навигация по этому меню.

TEST.c – модуль, отвечающий за возможность тестирования и оценки уровня знаний пользователя, осуществляет чтение и вывод на экран вопросов из тестовых файлов, а также вывод на экран результатов, полученных в результате тестирования.

HELP.c – модуль, отвечающий за возможность открытия файлов справки, вывод справки на экран.

EXIT.c – модуль, отвечающий за возможность выхода из программы, при выходе выводит реквизиты разработчика.

OSHIBKA.c – модуль, осуществляющий проверку наличия необходимых файлов системы, выводит соответствующее сообщение об ошибке при отсутствии этих файлов.

MODULI.c – основной модуль программы, содержащий в себе все перечисленные выше модули.

4.4.2 Схема связи модулей

На рисунке 4.1 отображена схема связи между основными модулями системы. Стрелка от одного модуля к другому означает, что функции первого модуля вызываются вторым.


OSHIBKA.c


Рисунок 4.1 – Схема связей основных модулей системы

4.5 Функциональная структура программного продукта

4.5.1 Перечень основных функций

Программный продукт содержит более девяти функций, состоящих во взаимосвязях друг с другом.

Ниже приводится краткое описание основных из них:

Функции модуля BIB.c:

– Данный модуль содержит только стандартные модули языка С.

Функции модуля RAMKA.c:

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

Функции модуля MENU.c

menu (). Функция, занимающаяся прорисовкой главного меню, курсора в главном меню, его навигацию.

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

Функции модуля ZASTAVKA.c:

zastavka (). Функция, которая осуществляет вывод заставки перед появлением главного меню.

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

Функции модуля POISK.c:

search (). Функция, которая осуществляет поиск искомого слова, прорисовку поискового окна.

Функции модуля FILE_OP.c:

search (). Функция, которая осуществляет поиск искомого слова, прорисовку поискового окна.

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

show_file (). Функция, которая занимается открытием файлов теории, выводом информации на экран скроллингом, прорисовкой меню «Теории», навигацией по этому меню.

Функции модуля TEST.c:

menu (). Функция, занимающаяся прорисовкой главного меню, курсора в главном меню, его навигацию .

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

test (). Осуществляет открытие файлов с правильными ответами, с тестовыми вопросами, осуществляет вывод этих вопросов на экран, подводит итог набранным пользователем баллам, выводит на экран результат тестирования.

Основные функции модуля HELP.c:

help (). Открывает файл со справочной информацией. Отображает оперативную подсказку.

ramka (). Данная функция занимается прорисовкой рамки по боковым краям экрана.

Основные функции модуля EXIT.c:

help (). Открывает файл со справочной информацией. Отображает оперативную подсказку.

exit (). Осуществляет завершение программы (выход), при выходе выводит реквизиты разработчика.

Основные функции модуля OSHIBKA.c:

oshibka (). Осуществляет проверку наличия необходимых файлов системы, выводит соответствующее сообщение об ошибке при отсутствии этих файлов.

exit (). Осуществляет завершение программы (выход), при выходе выводит реквизиты разработчика.

Основные функции модуля MODULI.c:

– Не содержит функций. Осуществляет взаимодействие между всеми модулями программы.

4.5.2 Функциональная схема