Программирование в примерах и задачах: учебное пособие
Автор:
Грацианова Т. Ю.
Год издания: 2020
Серия:
ВМК МГУ – школе
Издательство: Лаборатория знаний
Возрастное ограничение:
12+
Объем (стр.):
373
Постраничный просмотр для данной книги Вам недоступен.
Оплатить доступ к режиму онлайн-чтения.
Пособие поможет подготовиться к экзамену по информатике, научиться решать задачи по программированию на языке Паскаль. Рассмотрено большое количество программ; листинги приведены в расчете на использование среды Турбо Паскаль 7.0, однако в большинстве своем будут работать без всяких изменений и в других версиях Паскаля. Некоторые задачи имеют несколько вариантов решений, и в пособии подробно разобрано, какое из них является наилучшим.
Для школьников 8–11 классов, учителей информатики и методистов, а также студентов первых курсов технических вузов.
ВВЕДЕНИЕ | 3 |
ГЛАВА 1. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ | 5 |
Программирование | 5 |
Этапы решения задачи | 5 |
Что такое алгоритм? | 6 |
Словесная формулировка алгоритма | 6 |
Блок-схема. Основные конструкции | 7 |
Переменная. Присваивание | 9 |
Условие. Виды разветвлений | 10 |
Цикл | 14 |
Массив | 20 |
Подпрограммы | 22 |
Тестирование | 26 |
Исполнитель алгоритма | 27 |
Оптимальный алгоритм. Сложность алгоритма | 29 |
Задачи 1.1–1.26. Составление алгоритмов | 30 |
ГЛАВА 2. ПЕРВАЯ ПРОГРАММА НА ЯЗЫКЕ ПАСКАЛЬ | 35 |
Понятие об алфавите языка | 35 |
Принципы записи и «внешний вид» программы | 38 |
ГЛАВА 3. ЭТАПЫ ПОДГОТОВКИ ПРОГРАММЫ. ПАСКАЛЬ-СРЕДА | 39 |
Этапы подготовки программы | 39 |
Основные функции Паскаль-среды | 40 |
Задачи 3.1–3.4. Работа в редакторе | 50 |
ГЛАВА 4. СТРУКТУРА ПАСКАЛЬ-ПРОГРАММЫ | 51 |
ГЛАВА 5. ОСНОВНЫЕ ТИПЫ ДАННЫХ. ОПИСАНИЯ ПЕРЕМЕННЫХ. ПРИСВАИВАНИЕ | 53 |
Некоторые типы данных и работа с ними | 54 |
Оператор присваивания | 63 |
Пример программы с разными типами данных и операторами присваивания | 65 |
Задачи 5.1–5.17. Числа и формулы | 66 |
ГЛАВА 6. ВВОД С КЛАВИАТУРЫ И ВЫВОД НА ЭКРАН | 68 |
Оператор ввода | 69 |
Оператор вывода | 70 |
Форматный вывод | 71 |
Грамотное использование операторов ввода и вывода | 72 |
Примеры программ с вводом-выводом | 73 |
Задачи 6.1–6.27. Ввод и вывод | 76 |
ГЛАВА 7. РАЗВЕТВЛЕНИЯ | 78 |
Условный оператор | 78 |
Составной оператор | 81 |
Решение задач с условным оператором | 83 |
Оператор выбора | 91 |
Задачи 7.1–7.35. Программы с разветвлениями | 93 |
ГЛАВА 8. ТИП BOOLEAN. ЛОГИЧЕСКОЕ ВЫРАЖЕНИЕ | 96 |
Логические значения, логические константы | 96 |
Булева алгебра, алгебра логики | 97 |
Логические операции | 98 |
Составление логических выражений | 100 |
Задачи с логическими выражениями | 101 |
Программы с логическими выражениями | 107 |
Задачи 8.1–8.11. Логическое выражение | 113 |
ГЛАВА 9. ОПЕРАТОРЫ ЦИКЛА | 118 |
Циклы с предусловием и с постусловием | 118 |
Решение задач с помощью циклов с постусловием и с предусловием | 122 |
Задачи 9.1–9.12. Циклы While и Repeat | 129 |
Оператор цикла с параметром | 130 |
Решение задач с помощью оператора цикла с параметром | 132 |
Задачи 9.13–9.21. Цикл For | 135 |
Задачи 9.22–9.24. Разные циклы | 136 |
Цикл со сложным условием. Досрочный выход из цикла | 137 |
Процедура Break | 141 |
Обработка последовательностей | 142 |
Задачи 9.25–9.55. Работа с последовательностью | 152 |
Вокруг максимума | 155 |
Задачи 9.56–9.65. Поиск наибольших и наименьших значений | 160 |
Вложенные циклы | 161 |
Задачи 9.66–9.70. Вложенные циклы | 163 |
Решение задач методом перебора | 164 |
Задачи 9.71–9.74. Метод перебора | 166 |
Работа с таблицами | 166 |
Задачи 9.75–9.81. Работа с таблицами | 169 |
Задачи 9.82–9.115. Оператор цикла. Разные задачи | 171 |
ГЛАВА 10. МАССИВ | 174 |
Задание типов | 174 |
Тип данных «Массив» | 176 |
Задачи 10.1–10.21. Массив. Заполнение, печать | 188 |
А нужен ли массив? | 190 |
Перестановка элементов массива | 193 |
Задачи 10.22–10.29. Перестановка элементов | 197 |
Сортировка | 197 |
Задачи 10.30–10.35. Сортировка | 205 |
Поиск в массиве | 206 |
Вспомогательный массив | 211 |
Метод подсчета | 214 |
Задачи 10.36–10.45. Метод подсчета | 222 |
Строки | 223 |
Задачи 10.46–10.58. Символьные массивы, строки | 237 |
Матрицы | 238 |
Решение задач с матрицами | 241 |
Задачи 10.59–10.71. Работа с матрицей | 247 |
ГЛАВА 11. ПРОЦЕДУРЫ И ФУНКЦИИ | 248 |
Описание процедур и функций | 250 |
Обращение к подпрограмме. Фактические параметры | 251 |
Принцип локализации | 253 |
Задачи 11.1–11.3. Вызов процедуры и функции | 255 |
Работа с процедурами | 256 |
Задачи 11.4–11.12. Процедуры с входными параметрами и функции | 263 |
Параметры-переменные и параметры-значения | 264 |
Примеры использования процедур и функций | 267 |
Задачи 11.13–11.21. Процедуры и функции с входными и выходными параметрами | 270 |
ГЛАВА 12. РЕКУРСИЯ | 272 |
Работа рекурсивных процедур и функций | 272 |
Задачи 12.1–12.5. Работа рекурсивных процедур и функций | 277 |
Рекурсивные алгоритмы | 278 |
Задачи 12.6–12.19. Написать рекурсивную процедуру или функцию | 288 |
ГЛАВА 13. РАБОТА С ФАЙЛАМИ | 290 |
Описание файла | 291 |
Стандартные процедуры и функции для работы с файлами | 291 |
Примеры работы с файлами | 297 |
Задачи 13.1–13.17. Типизированные файлы | 301 |
Текстовые файлы | 303 |
Задачи 13.18–13.30. Текстовые файлы | 310 |
ГЛАВА 14. КОМБИНИРОВАННЫЙ ТИП (ЗАПИСЬ) | 312 |
Работа с типом «запись» | 313 |
Задачи 14.1–14.5. Работа с записями | 319 |
ГЛАВА 15. НЕКОТОРЫЕ ДОПОЛНИТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ ЯЗЫКА ТУРБО ПАСКАЛЬ | 321 |
Функция Random | 321 |
Задачи 15.1–15.11. Работа с генератором случайных чисел | 323 |
Модуль CRT | 324 |
Работа со звуком | 324 |
Задачи 15.12–15.18. Работа со звуком | 332 |
Работа с экраном | 332 |
Задачи 15.19–15.42. Работа с экраном | 341 |
Работа с клавиатурой | 343 |
Задачи 15.43–15.52. Работа с клавиатурой | 354 |
Задачи 15.53–15.61. Общие задачи с модулем СRT | 355 |
ГЛАВА 16. РАЗНЫЕ ЗАДАЧИ | 356 |