Разработка программного приложения для решения информационнотАУлогических задач

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



nbsp;

Алгоритм решения программы разделен на несколько частей первая часть выполняет функцию решения задачи арифметического анализа и приведена в приложение А. Вторая функция алгоритма задачи синтаксического анализа и приведена в приложение Б.

2.4 Разработка программы решения задачи

.4.1 Выбор инструментальных средств

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

2.4.2 Разработка структуры программы

Основными функциями программы является синтаксический и арифметический анализ текста. Программа состоит из частей:

-вывод на экран пользователя меню, для выбора проверки СКНФ или проверки синтаксиса программы;

-при выборе пункта меню проверка СКНФ пользователем вводится функция для проверки. Программой производится посимвольный разбор введенной функции, после чего выводится сообщение с ответом, является или нет введенная функция СКНФ, и выводит подменю с возможностью повторного ввода функции или перехода в главное меню;

-при выборе пункта меню проверка синтаксиса программы, пользователю необходимо будет указать место хранения проверяемого файла (d:\programma.txt), после чего программа будет часть программы проверять посимвольно, а часть построчно, после чего на экран пользователя выведется сообщение об ошибке, либо если в случае правильности написания программы будет выдано сообщение о правильности проверяемой программы, затем будет выведено подменю с возможностью повторной проверки программы, либо переход в главное меню.

2.4.3 Проектирование программных модулей

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

-для первой части необходимо считать введенную функцию и проверить;

-для второй части необходимо считать путь к файлу и обработать;

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

2.4.4Проектирование программного интерфейса

Диалог с пользователем будет интерактивным и осуществляется следующим образом:

-введение функции для проверки с клавиатуры пользователем, вывод результата;

-запуск программы пользователя с указанием имени файла, обработка и вывод результата;

-выход из программы.

Программа будет всегда выводит пользователю отформатированные данные:

-Данная функция является СКНФ;

-Данная функция не является СКНФ из-за неверного количества скобок;

-Данная функция не является СКНФ из-за неверно введенной конъюнкции;

-Данная функция не является СКНФ из-за неверно введенной дизъюнкции;

-Данная функция не является СКНФ из-за несоответствия элементов функции;

-Ошибок нет!;

-Ошибка: коментарии - /* */;

-Ошибка: фигурные скобки - { };

-Ошибка: с оператором - do while;

-Ошибка: в вункциях оператора...;

-Ошибка: Break;

-Ошибка: с оператором Switch.

2.4.5Обеспечение надежности программы

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

2.5Определение конфигурации технических средств

-устройства ввода и вывода информации, такие как клавиатура и монитор;

-процессор класса Pentium 3 и выше;

-объем оперативной памяти не менее 128 Мб;

-от 500 Мб свободного места на жестком диске, для обеспечения запуска и работы программы;

-встроенный графический чип или видеоплата.

2.6 Тестирование программы

2.6.1 Общие сведения

Контрольными данными является файл с информацией, который обладает следующими свойствами:

-описание переменных типа int;

-арифметические операции (a|b|c)&(!a|!b|c)&(a|!b|c);

-операторы: if.. goto, do..while, switch;

-комментарии;

2.6.2 Процесс тестирования программы

Для тестирования программы можно применить следующий алгоритм:

-создать файл на носителе;

-заполнить его данными;

-запустить программу, указав путь к файлу;

-подождать вывода программы;

-ввести функцию СКНФ;

-подождать вывода программы;

-сравнить полученные результаты с теоретическими.

2.6.3 Оценка надежности

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

Заключение

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

-синтаксический анализ простой программы на языке С;

-форматирование текста программы на языке С.

Ввод функции СКНФ для ее проверки осуществляется вручную, загрузка текста программы для проверки осуществляется из файла. Предварительной подготовкой является:

-создание файла с текстом простой программы;

-размещение файла на носителе;

Программа должна работать в пакетном режиме. Выходные данные будут выводиться на экран пользователя.