- •Долинер л.И., Данилина и.И., Пашкова р.Р., Емельянов д.А. Языки и системы программирования
- •Содержание
- •Теоретическая работа а. Что такое «программирование»
- •1. Что такое «программа» и как ее исполняет компьютер
- •2. Что такое “Среда программирования Turbo Pascal”
- •Вопросы для контроля
- •Лабораторная работа 1. Знакомство со средой turbo pascal
- •1. Как начать работу со средой Turbo Pascal
- •1.1. Структура каталогов среды Turbo Pascal
- •1.2. Запуск среды программирования Turbo Pascal
- •1.3. Структура экрана после запуска среды
- •1.4. Вход в меню
- •1.5. Среда Turbo Pascal как рабочий стол программиста
- •1.6. Работа со страницами
- •1.7. Компиляция и исполнение программ
- •2. Резюме
- •Вопросы для контроля
- •Лабораторная работа 2. Простейшие программы на языке pascal, или как это делается...
- •1. Структура программы на языке Pascal
- •2. Простейшие операторы
- •2.1. Резервирование памяти для работы
- •2.2. Запись данных в память, или оператор присваивания
- •2.3. Вывод данных на экран дисплея
- •2.4. Форматированный вывод информации
- •Теоретическая работа б. Введеhие в язык пpогpаммиpоваhия pascal
- •1. Алфавит языка
- •1.1. Символы, используемые в идентификаторах
- •1.2. Разделители
- •1.3. Специальные символы
- •1.4. Неиспользуемые символы
- •2. Структура программы
- •3. Типы данных
- •3.1. Целый тип
- •3.2. Вещественный тип
- •3.3. Символьный тип
- •3.4. Логический тип
- •3.5. Строковый тип данных
- •3.5. Пример описания данных
- •4. Команда присваивания
- •4.1. Операции
- •4.2. Стандартные функции
- •4.3. Запись выражений
- •5. Простейшие команды ввода и вывода информации
- •5.1. Вывод информации
- •5.2. Ввод информации
- •Вопросы для контроля
- •Лабораторная работа 3. Как организовать диалог
- •1. Команда ввода данных
- •2. Библиотека Crt
- •2.1. Определение цвета символов
- •2.2. Определение цвета фона
- •2.3. Очистка экрана
- •Вопросы для контроля
- •Лабораторная работа 4. Графика в языке pascal (первое знакомство)
- •1. Включение графического режима
- •2. Библиотека Graph
- •Задачи для самостоятельной работы. Линейные алгоритмы
- •Лабораторная работа 5. Операции с целыми и вещественными числами
- •Теоретическая работа в. Алгоритмические конструкции: условный оператор
- •4.1. Составной оператор
- •4.2. Условные операторы
- •4.2.1. Команда ветвления
- •5. Сложные условия
- •5.1. Что такое True и False
- •5.2. Логический тип данных
- •5.3. Сложные условия
- •6. Оператор выбора case
- •Лабораторная работа 6. Операторы ветвления и выбора
- •1. Что такое ветвление и как оно организуется в языке Pascal?
- •2. Условный оператор if
- •2.1. Теория
- •2.2. Практика
- •Контрольное задание
- •3. Оператор выбора case
- •3.1. Теория
- •3.2. Практика
- •Теоретическая работа г. Введение в систему типов языка pascal
- •1. Стандартные типы данных
- •2. Перечислимый тип
- •3. Ограниченный тип данных
- •4. Множества
- •5. Вопросы для самоконтроля
- •Теоретическая работа д. Циклы с параметром: быстрое начало
- •1. Когда используется цикл с параметром
- •2. Форма записи цикла с параметром
- •3. Вычисление сумм
- •4. Выборки
- •5. Максимумы и минимумы
- •Лабораторная работа 7. Циклы с параметром
- •Лабораторная работа 8. Как нарисовать забор
- •Лабораторная работа 9. Звездное небо и прочие странности
- •1. Получение случайного числа
- •2. Рисование точек в графическом режиме
- •Лабораторная работа 10. Проектирование программ и процедуры
- •1. Зачем нужна технология программирования
- •2. Знакомство с технологией проектирования “сверху вниз”
- •Решение Часть 1. Уточнение постановки задачи (эскиз)
- •Часть 2. Первый вариант решения
- •Часть 3. Уточнение решения
- •Часть 4. Уточнение решения
- •Часть 5. Уточнение решения
- •Часть 6. Уточнение решения
- •Это вам пригодится
- •Теоретическая работа е. Конструкции цикла в языке pascal
- •Оператор цикла с параметром
- •2. Цикл с предусловием while
- •3. Цикл с постусловием repeat
- •4. Вопросы для самоконтроля
- •Лабораторная работа 11. Разные конструкции цикла
- •1. Теория
- •1.1. Цикл со счетчиком (for)
- •1.2. Цикл с предусловием (while)
- •1.3. Цикл с постусловием (repeat)
- •2. Практика
- •Вопросы для контроля
- •Лабораторная работа 12. Как управлять движением на экране дисплея, или след слона
- •Теоретическая работа ж. Построение графиков функций
- •Лабораторная работа 13. Построение графиков функций
- •Лабораторная работа 14. Дополнительные возможности при работе с графикой
- •Теоретическая работа г. Динамические объекты: считывание картинок в память и вывод их на экран
- •Лабораторная работа 15. Как делается движущееся изображение
- •Теоретическая работа д. Использование страниц памяти для организации движения объектов по экрану
- •Как рисовать сложные картинки
- •Лабораторная работа 16. Мультипликация с использованием страниц видеопамяти
- •Лабораторная работа 17. Технология представления картинок в виде числового массива
- •Лабораторная работа 18. Движение объектов по многоцветному фону
- •1. Как вывести на экран картинку формата pcx
- •2. Технология движения объектов по многоцветному фону
- •Лабораторная работа 19. Мыши и модули
- •I. Как работать с мышью
- •1.1. Как работает манипулятор "мышь"
- •1.2. Начинаем программировать управление мышью
- •2. Модули
- •Implementation {начало раздела реализации}
- •Лабораторная работа 20. Работа со строковыми переменными
- •1. Теория
- •1.1. Описание строковых переменных
- •1.2. Сравнение строк
- •1.3. Операции со строками
- •2. Практика
- •Вопросы для контроля
- •Лабораторная работа 21. Работа с символьными переменными -1
- •Лабораторная работа 22. Работа с символьными переменными - 2
- •Лабораторная работа 23. Процедуры - 1
- •1. Теория
- •2. Практика
- •Лабораторная работа 24. Процедуры - 2
- •Лабораторная работа 25. Строковый редактор
- •1. Что такое «строковый редактор»
- •2. Зачем писать строковый редактор
- •3. Несколько вспомогательных задач
- •4. Постановка задачи на разработку
- •5. Необходимая информация для написания процедуры
- •6. Подсказка: алгоритм работы строкового редактора
- •Лабораторная работа 26. Поиск среднего и другие неожиданности
- •Лабораторная работа 27. Как работать с массивами: первые шаги
- •1. Теория
- •2. Практика
- •Вопросы для контроля
- •Лабораторная работа 28. Массивы и деловая графика
- •Теоретическая работа е. Строковые массивы. Алгоритмы поиска
- •Лабораторная работа 29. Строковые массивы. Алгоритмы поиска
- •Лабораторная работа 30. Нечисловые индексы в массиве
- •Теоретическая работа ж. Сортировка массивов
- •Лабораторная работа 31. Сортировка массивов
- •Лабораторная работа 32. Программа обслуживания конькобежных соревнований
- •Теоретическая работа з. Двумерные и многомерные массивы
- •Вопросы для контроля
- •Лабораторная работа 33. Шахматный турнир
- •Лабораторная работа 34. Подпрограммы - функции
- •1. Теория
- •2. Практика
- •Лабораторная работа 35. Работа с текстовыми файлами -1
- •1. Теория
- •1.1. Что такое текстовый файл
- •1.2. Принцип работы с текстовыми файлами
- •2. Практика
- •Лабораторная работа 36. Работа с текстовыми файлами - 2
- •Вопросы для контроля
- •Лабораторная работа 37. Работа с типизированными файлами - 1
- •1. Теория
- •2. Практика
- •Лабораторная работа 38. Работа с типизированными файлами - 2
- •1. Теория : тип данных «запись»
- •2. Практика
- •Лабораторная работа 39. Работа с типизированными файлами как с файлами прямого доступа
- •1. Теория
- •2. Практика
- •Лабораторная работа 40. Дополнительные возможности, или что можно еще натворить...
- •1. Что можно делать с файлами и каталогами
- •2. Процедуры и функции библиотеки dos
- •2.1. Работа с часами и календарем
- •2.2. Работа с каталогами и файлами
- •2.3. Типы и константы модуля dos для работы с файлами
- •3. Практика
- •Приложение 1 Зарезервированные слова Turbo Pascal
- •Приложение 2 Знаки пунктуации в языке Pascal
- •Приложение 3 Операции в языке Pascal
- •3.1. Арифметические операции
- •3.2. Логические операции
- •3.3. Операции отношения
- •Приложение 4 Стандартные функции языка Pascal
- •4.1. Арифметические функции
- •4.2.Функции преобразования типов
- •4.3. Функции для величин порядкового типа
- •Приложение 5 Команды pедактоpа сpеды Turbo Pascal 7.0
- •5.1. Команды перемещения курсора
- •5.2. Команды поиска фрагментов
- •5.3. Команды вставки и удаления информации
- •5.4. Команды работы с блоками информации
- •5.5. Клавиши быстрого управления средой Turbo Pascal 7.0
- •Список рекомендуемой литературы
Федеральное агентство по образованию
ГОУ ВПО «Российский государственный профессионально-педагогический
университет»
Уральское отделение Российской академии образования
Долинер л.И., Данилина и.И., Пашкова р.Р., Емельянов д.А. Языки и системы программирования
Практикум
Екатеринбург 2007
УДК 681.142(07)
ББК Ч.426.24/29
Д 64
Долинер Л.И., Данилина И.И., Пашкова Р.Р., Емельянов Д.А.
Языки и системы программирования: практикум: ГОУ ВПО «Рос. гос. проф.-пед. ун-т». Екатеринбург, 2007. 155 с.
Практикум предназначен для студентов профессионально-педагогических вузов по специальности 030500 (Профессиональное обучение) и специализации 030501.06 (компьютерные технологии). В качестве базовой системы выбрана среда программирования Borland Pascal 7.0. Книга может быть использована как учебное пособие при изучении раздела «Программирование» в различных учебных заведениях (вузах, колледжах, лицеях, школах, ПТУ и УПК) и как самоучитель, так как содержит большое количество иллюстраций возможностей языка и особенностей программирования на нем. Часть этих примеров имеется в пособии, часть - в прилагаемых к пособию файлах.
Практикум представляет собой часть программно-методического комплекса «Основы практического программирования в среде Turbo Pascal 7.0» и имеющего сертификат Министерства общего и профессионального образования РФ №0000019 от 26 марта 1997 года (заявка №1728). Комплекс включает, помимо данной книги, методические рекомендации для преподавателя, дополнительный задачник, набор учебных файлов и программ, обеспечивающих полноценный и эффективный процесс обучения основам программирования.
Рецензенты: доктор педагогических наук, проф. Б.Е.Стариченко (УрГПУ)
Доктор педагогических наук, проф. А.Г. Гейн (УрГУ)
Под ред. Л.И. Долинера
|
© Л.И.Долинер, И.И.Данилина, Р.Р. Пашкова, 2007 |
Содержание
Содержание 4
Теоретическая работа А. ЧТО ТАКОЕ «ПРОГРАММИРОВАНИЕ» 7
Лабораторная работа 1. ЗНАКОМСТВО СО СРЕДОЙ TURBO PASCAL 10
Лабораторная работа 2. ПРОСТЕЙШИЕ ПРОГРАММЫ НА ЯЗЫКЕ PASCAL, ИЛИ КАК ЭТО ДЕЛАЕТСЯ... 15
Теоретическая работа Б. ВВЕДЕHИЕ В ЯЗЫК ПPОГPАММИPОВАHИЯ PASCAL 18
Лабораторная работа 3. КАК ОРГАНИЗОВАТЬ ДИАЛОГ 28
Лабораторная работа 4. ГРАФИКА В ЯЗЫКЕ PASCAL (ПЕРВОЕ ЗНАКОМСТВО) 30
Задачи для самостоятельной работы. ЛИНЕЙНЫЕ АЛГОРИТМЫ 32
Лабораторная работа 5. ОПЕРАЦИИ С ЦЕЛЫМИ И ВЕЩЕСТВЕННЫМИ ЧИСЛАМИ 34
Теоретическая работа В. АЛГОРИТМИЧЕСКИЕ КОНСТРУКЦИИ: УСЛОВНЫЙ ОПЕРАТОР 35
Лабораторная работа 6. ОПЕРАТОРЫ ВЕТВЛЕНИЯ И ВЫБОРА 40
Теоретическая работа Г. ВВЕДЕНИЕ В СИСТЕМУ ТИПОВ ЯЗЫКА PASCAL 43
Теоретическая работа Д. ЦИКЛЫ С ПАРАМЕТРОМ: БЫСТРОЕ НАЧАЛО 48
Лабораторная работа 7. ЦИКЛЫ С ПАРАМЕТРОМ 51
Лабораторная работа 8. КАК НАРИСОВАТЬ ЗАБОР 52
Лабораторная работа 9. ЗВЕЗДНОЕ НЕБО И ПРОЧИЕ СТРАННОСТИ 54
Лабораторная работа 10. ПРОЕКТИРОВАНИЕ ПРОГРАММ И ПРОЦЕДУРЫ 56
Теоретическая работа Е. КОНСТРУКЦИИ ЦИКЛА В ЯЗЫКЕ PASCAL 60
Лабораторная работа 11. Разные конструкции цикла 63
Лабораторная работа 12. КАК УПРАВЛЯТЬ ДВИЖЕНИЕМ НА ЭКРАНЕ ДИСПЛЕЯ, ИЛИ СЛЕД СЛОНА 68
Теоретическая работа Ж. ПОСТРОЕНИЕ ГРАФИКОВ ФУНКЦИЙ 69
Лабораторная работа 13. ПОСТРОЕНИЕ ГРАФИКОВ ФУНКЦИЙ 72
Лабораторная работа 14. ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ ПРИ РАБОТЕ С ГРАФИКОЙ 74
Теоретическая работа Г. ДИНАМИЧЕСКИЕ ОБЪЕКТЫ: СЧИТЫВАНИЕ КАРТИНОК В ПАМЯТЬ И ВЫВОД ИХ НА ЭКРАН 75
Лабораторная работа 15. КАК ДЕЛАЕТСЯ ДВИЖУЩЕЕСЯ ИЗОБРАЖЕНИЕ 78
Теоретическая работа Д. ИСПОЛЬЗОВАНИЕ СТРАНИЦ ПАМЯТИ ДЛЯ ОРГАНИЗАЦИИ ДВИЖЕНИЯ ОБЪЕКТОВ ПО ЭКРАНУ 79
Лабораторная работа 16. МУЛЬТИПЛИКАЦИЯ С ИСПОЛЬЗОВАНИЕМ СТРАНИЦ ВИДЕОПАМЯТИ 83
Лабораторная работа 17. ТЕХНОЛОГИЯ ПРЕДСТАВЛЕНИЯ КАРТИНОК В ВИДЕ ЧИСЛОВОГО МАССИВА 83
Лабораторная работа 18. ДВИЖЕНИЕ ОБЪЕКТОВ ПО МНОГОЦВЕТНОМУ ФОНУ 86
Лабораторная работа 19. Мыши и модули 88
Лабораторная работа 20. РАБОТА СО СТРОКОВЫМИ ПЕРЕМЕННЫМИ 90
Лабораторная работа 21. РАБОТА С СИМВОЛЬНЫМИ ПЕРЕМЕННЫМИ -1 93
Лабораторная работа 22. РАБОТА С СИМВОЛЬНЫМИ ПЕРЕМЕННЫМИ - 2 93
Лабораторная работа 23. ПРОЦЕДУРЫ - 1 94
Лабораторная работа 24. ПРОЦЕДУРЫ - 2 95
Лабораторная работа 25. СТРОКОВЫЙ РЕДАКТОР 96
Лабораторная работа 26. ПОИСК СРЕДНЕГО И ДРУГИЕ НЕОЖИДАННОСТИ 98
Лабораторная работа 27. КАК РАБОТАТЬ С МАССИВАМИ: ПЕРВЫЕ ШАГИ 99
Лабораторная работа 28. МАССИВЫ И ДЕЛОВАЯ ГРАФИКА 103
Теоретическая работа Е. СТРОКОВЫЕ МАССИВЫ. АЛГОРИТМЫ ПОИСКА 105
Лабораторная работа 29. СТРОКОВЫЕ МАССИВЫ. АЛГОРИТМЫ ПОИСКА 106
Лабораторная работа 30. НЕЧИСЛОВЫЕ ИНДЕКСЫ В МАССИВЕ 107
Теоретическая работа Ж. СОРТИРОВКА МАССИВОВ 108
Лабораторная работа 31. СОРТИРОВКА МАССИВОВ 110
Лабораторная работа 32. ПРОГРАММА ОБСЛУЖИВАНИЯ КОНЬКОБЕЖНЫХ СОРЕВНОВАНИЙ 112
Теоретическая работа З. ДВУМЕРНЫЕ И МНОГОМЕРНЫЕ МАССИВЫ 112
Лабораторная работа 33. ШАХМАТНЫЙ ТУРНИР 115
Лабораторная работа 34. ПОДПРОГРАММЫ - ФУНКЦИИ 115
Лабораторная работа 35. РАБОТА С ТЕКСТОВЫМИ ФАЙЛАМИ -1 116
Лабораторная работа 36. РАБОТА С ТЕКСТОВЫМИ ФАЙЛАМИ - 2 119
Лабораторная работа 37. РАБОТА С ТИПИЗИРОВАННЫМИ ФАЙЛАМИ - 1 121
Лабораторная работа 38. РАБОТА С ТИПИЗИРОВАННЫМИ ФАЙЛАМИ - 2 123
Лабораторная работа 39. РАБОТА С ТИПИЗИРОВАННЫМИ ФАЙЛАМИ КАК С ФАЙЛАМИ ПРЯМОГО ДОСТУПА 125
Лабораторная работа 40. ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ, ИЛИ ЧТО МОЖНО ЕЩЕ НАТВОРИТЬ... 126
Приложение 1 129
Зарезервированные слова Turbo Pascal 129
Приложение 2 131
Знаки пунктуации в языке Pascal 131
Приложение 3 132
Операции в языке Pascal 132
Приложение 4 133
Стандартные функции языка Pascal 133
Приложение 5 133
Команды pедактоpа сpеды Turbo Pascal 7.0 133
Список рекомендуемой литературы 136