Транслятор на языке Си для перевода текста программы с языка Паскаль на язык Си (операторы real, case, записи, указатель (на запись))
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение
высшего профессионального образования
Северо-Кавказский государственный технический университет
КУРСОВОЙ ПРОЕКТ
по диiиплине Программирование на языке высокого уровня
Вариант 13
Исполнитель:
Студент: Мишустина Юлия
группа АСОУ-091
Руководитель: Братченко Н.Ю.
Ставрополь
Содержание:
Введение
. Цели и задачи курсового проекта
. Постановка задачи
. Внешняя спецификация
. Описание алгоритма программы
. Описание констант, переменных и функций программы
. Листинг программы
. Распечатка тестов и результатов
Выводы
Список используемой литературы
Введение
Объектно-ориентированное программирование - это новый способ подхода к программированию. Такое программирование, взяв лучшие черты структурного программирования, дополняет его новыми идеями, которые переводят в новое качество подход к созданию программ.
Концепция объектно-ориентированного программирования подразумевает, что основой управления процессом реализации программы является передача сообщений объектам. Поэтому объекты должны определяться совместно с сообщениями, на которые они должны реагировать при выполнении программы. В этом состоит главное отличие ООП от процедурного программирования, где отдельно определённые структуры данных передаются в процедуры (функции) в качестве параметров. Таким образом, объектно-ориентированная программа состоит из объектов - отдельных фрагментов кода, обрабатывающего данные, которые взаимодействуют друг с другом через определённые интерфейсы.
Объектно-ориентированный язык программирования должен обладать следующими свойствами:
-абстракции - формальное о качествах или свойствах предмета путем мысленного удаления некоторых частностей или материальных объектов;
-инкапсуляции - механизма, связывающего вмести код и данные, которыми он манипулирует, и защищающего их от внешних помех и некорректного использования;
-наследования - процесса, с помощью которого один объект приобретает свойства другого, т.е. поддерживается иерархической классификации;
-полиморфизма - свойства, позволяющего использовать один и тот же интерфейс для общего класса действий.
Разработка объектно-ориентированных программ состоит из следующих последовательных работ:
.определение основных объектов, необходимых для решения данной задачи;
.определение закрытых данных (данных состояния) для выбранных объектов;
.определение второстепенных объектов и их закрытых данных;
.определение иерархической системы классов, представляющих выбранные объекты;
.определение ключевых сообщений, которые должны обрабатывать объекты каждого класса;
.разработка последовательности выражений, которые позволяют решить поставленную задачу;
.разработка методов, обрабатывающих каждое сообщение;
.очистка проекта, то есть устранение всех вспомогательных промежуточных материалов, использовавшихся при проектировании;
.кодирование, отладка, компоновка и тестирование.
Объектно-ориентированное программирование позволяет программисту моделировать объекты определённой предметной области путем программирования их содержания и поведения в пределах класса. Конструкция класс обеспечивает механизм инкапсуляции для реализации абстрактных типов данных. Инкапсуляция как бы скрывает и подробности внутренней реализации типов, и внешние операции и функции, допустимые для выполнения над объектами этого типа.
1. Цели и задачи курсового проекта
Цель данной курсовой работы: выработка у студентов практических навыков по проектированию программ, их отладке и документированию. Выполнение курсового проекта позволяет студенту закрепить полученные знания по диiиплине Программирование на языке высокого уровня. Написание курсового проекта начинается с разработки технического задания (ТЗ) и завершается составлением отчета, в котором должно содержаться описание всей работы в целом.
. Постановка задачи
Необходимо написать транслятор на языке Си для перевода текста программы с языка Паскаль на язык Си. Рассмотреть операторы real, case, записи, указатель (на запись).
Критерии:
-максимальная устойчивость от ошибок,
-учет некорректность вводимых данных.
-Вывод сведений о трансляции.
-максимальна эффективность
-Программа должна транслировать ранее набранный текст на языке Паскаль в текст на языке Си. При этом ввод имени файла производится через программу. При введении неверного имени предоставить возможность повторного ввода.
В программе нам так же необходимо использовать:
Арифметическое выражение ae2
3. Внешняя спецификация
При запуске программа спросит имя исходного файла (без расширения), если файл не найден, то запрос будет выполняться до тех пор, пока не будет введено имя существующего файла или до прекращения работы программы. Затем программа выполнит запрос об имени выходного файла и при наличии ошибок в тексте при трансляции выведет на экран номер исходящей стро