Пензенский Государственный Университет Факультет вычислительной техники Кафедра «Системы автоматизации проектирования»
...
20 downloads
144 Views
172KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Пензенский Государственный Университет Факультет вычислительной техники Кафедра «Системы автоматизации проектирования»
ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ Рабочая программа учебной дисциплины по подготовке специалиста по специальности 552800 «Информатика и вычислительная техника» (общий объем 252 часа, экзамен и курсовая работа)
Автор к. т. н., доцент Л.В. Игошина УТВЕРЖДЕНА на заседании кафедры САПР «__14__» «__04______» 2004г протокол № 8 Заведующий кафедрой САПР д. т. н., профессор
А.М. Бершадский
Цель и задачи дисциплины Целью курса «Программирование на языке высокого уровня» является изучение основ алгоритмизации вычислительных процессов, общих принципов программирования, представления основных структур программ и данных, алгоритмического языка Turbo Pascal 7.0(ТР), интегрированной среды разработчика программ Turbo или Borland Pascal, стандартных модулей языка ТР, основ программирования на языке Turbo Pascal.
• • • • • • • • • • • • •
В результате изучения курса студенты должны - знать: основы алгоритмизации различных типов вычислительных процессов; основы структурного программирования; основные этапы разработки программ; понятия и составные части языка программирования Turbo Pascal; структуру программы и структуры данных, управляющие структуры, процедуры и функции языка Turbo Pascal; принципы модульного проектирования программ; графические возможности языка Turbo Pascal; - уметь: разрабатывать алгоритмы решения несложных задач; реализовывать разработанные алгоритмы на языке ТР; проектировать программы в соответствии с принципами модульного программирования; редактировать, компилировать и отлаживать программы в среде ТР или ВР; использовать графические возможности языка ТР для создания графических изображений и простейших меню программ;
Теоретическая часть Введение в программирование. Цели и задачи курса. Литература. Основные этапы решения задач на ЭВМ. Основы алгоритмизации вычислительных процессов. Понятия алгоритма, его свойства. Способы представления алгоритмов. Правила построения схем алгоритмов. Алгоритмизация линейных, разветвляющихся и циклических вычислительных процессов. Основные понятия структурного программирования. Алгоритмический язык Turbo Pascal. Программирование и отладка в среде Turbo (Borland) Pascal 7.0. Алфавит языка. Классификация данных. Стандартные скалярные типы данных. Перечислимые и ограниченные типы. Строковый тип данных. Операции над строками. Структура программы на языке Паскаль. Описание меток, переменных и типов. Описание простых и
типизированных констант. Стандартные математические функции и функции преобразования типов. Арифметические и логические выражения. Операторы языка. Составной оператор и оператор присваивания. Процедуры ввода и вывода данных. Операторы условной и безусловной передачи управления. Оператор варианта. Операторы циклов. Структурированные типы данных. Массивы, их описание. Ввод и вывод массивов. Работ с одномерными и двумерными массивами. Множества в Паскале, их описание. Операции над множествами. Записи, их описание и использование. Оператор присоединения. Процедуры и функции. Описание процедур. Область действия имён. Локальные и глобальные параметры. Подпрограммы типа FUNCTION, их описание. Разработка прикладных программ. Алгоритмы и программы сортировки и поиска. Сортировка выбором. Обменная сортировка. Сортировка слиянием. Линейный поиск. Двоичный поиск. Организация хранения данных во внешней памяти. Файлы. Понятие логического и физического файла. Файловые типы в Турбо Паскале. Текстовые файлы. Процедуры для работы с текстовыми файлами. Типизированные (компонентные) файлы. Процедуры для работы с типизированными файлами. Безтиповые файлы, процедуры для работы с ними. Динамические структуры данных. Указатели, динамические переменные, ссылочные типы. Стандартные процедуры и функции для работы с указателями и динамическими переменными. Применение динамических структур для организации работ с линейным списком (создание, вывод на экран, сортировка, поиск, удаление и добавление элементов). Модульное программирование. Модули в Турбо Паскале. Структура модулей. Компиляция и подключение модулей. Разработка модулей (Unit). Стандартные модули Turbo Pascal 7.0. Процедуры и функции модуля CRT для работы с экраном, курсором, строками, управления звуком, цветом и яркостью. Модуль GRAPH. Инициализация и закрытие графического режима. Очистка экрана, переключение режимов, координаты экрана, перемещение и определение расположения графического курсора. Рисование точек. Процедуры прорисовки линий, определение и установка стиля линий. Рисование окружностей, эллипсов, дуг, прямоугольников, многоугольников и ломаных линий. Управление цветом, опрос и установка цвета пера и фона. Заливка изображений, задание типа заливки, заливка эллипсов, секторов и многоугольников. Вывод текста в графическом режиме, шрифты. Создание движущихся изображений.
Практические занятия 0. Изучение среды программирования ТР 7.0. 1. Линейные алгоритмы и программы. 2. Алгоритмы и программы с разветвлением.
3. (и 4) Циклические алгоритмы и программы. 5. (и 6) Работа с одномерными и двумерными массивами. 7. Работа с записями. 8. Разработка программ с использованием процедур. 9. Изучение простейших алгоритмов и программ сортировки. 10. Разработка программ с использованием функций. 11. Работа с текстовыми файлами. 12. Работа с типизированными файлами. 13. Работа с динамическими структурами данных. 14. Разработка модулей. 15. Процедуры и функции модуля CRT. 16. (и 17) Процедуры и функции модуля GRAPH.
Курсовая работа Курсовой проект состоит в алгоритмизации и программировании процедур работы с линейным динамическим списком. В процессе решения задачи используется меню, для вывода меню на экран дисплея используются процедуры и функции модулей Graph и(или) Crt.
Другие виды самостоятельной работы. Каждый студент должен вести самостоятельную работу по основным разделам дисциплины. Для этих целей используется литература, приведенная в списке.
14 Рекомендуемая литература 1. Гудман С., Хидетниеми С.
Основная Введение в разработку и анализ алгоритмов.-
М.: Мир, 1981 - 386с. 2. Вирт Н. Алгоритмы и структуры данных. М.: Мир, 1989. – 360с. 3. Офицеров Д.В., Старых В.А. Программирование в интегрированной среде ТурбоПаскаля. Справочное пособие. - Минск: «Беларусь», 1992 4. Фаронов В.В. ТурбоПаскаль 7.0. Начальный курс. Учебное пособие. - М.: «Нолидж», 1997 Дополнительная 1. С.И. Довгаль, Б.Ю. Литвинов, А.И. Сбитнев Персональные ЭВМ: ТурбоПаскаль 7.0. Объектное программирование. Локальные сети. Учебное пособие.- Киев: «Информсистема сервис», 1993 2. Йордан Э. Структурное программирование и конструирование программ. М.: Мир, 1989
Методические материалы Алгоритмические языки и программирование. Электронный вариант цикла лекций и методических указаний к выполнению лабораторных работ. Игошина Л.В.
Рекомендации по изучению курса «Программирование на языке высокого уровня» Прежде чем Вы приступите к выполнению практических работ 1-13 необходимо ознакомиться с разделами электронного пособия «Основы языка Паскаль», 14-17 - «Модули языка Паскаль». Список обязательных практических работ по курсу. Основы Паскаля. Практические задания №№ 3, 5 – 8, 10,11. Модули Паскаля. Практические задания №№ 15, 16, 17. Отчеты по практическим работам должны содержать сведения об авторе, номер и название работы, номер варианта, тексты программ и результаты решения. Для заданий (работ) 3,5,6,10 должны быть представлены также схемы алгоритмов. Задание на курсовое проектирование Тема курсового проекта «Работа с динамическим линейным списком» Разработать алгоритмы и программу, решающие следующие задачи: 1. Создание упорядоченного линейного динамического списка. 2. Добавление элементов (или узлов) в список без нарушения упорядоченности. 3. Поиск в упорядоченном списке заданной информации с выводом ее на экран. 4. Удаление заданных элементов из списка. 5. Вывод линейного списка на экран производить в графическом режиме после выполнения пунктов 1,2 и 4. 6. Выбор решаемых задач (1-5) производить с помощью разработанного меню. Меню должно содержать также пункт для получения справочной информации. В нем должны содержаться сведения о разработчике. Структуру данных и задание на «поиск» и «удаление» взять из практических заданий по теме « Линейный динамический список». Вариант самостоятельного задания определить по двум последним цифрам зачетной книжки. Пояснительную записку к курсовой работе оформить в соответствии с ЕСПД. Описание программы. Руководство для программиста. Графическая часть должна содержать структурную схему программы и схему алгоритма процедуры добавления элементов в список.