
- •Глава 1. Структурное программирование
- •1.1 Основные определения
- •1.2 Три основных действия
- •1.2.1 Последовательность
- •1.2.2 Выбор
- •1.2.3 Цикл
- •1.3. Структурный подход к решению задач
- •Задание
- •1.4. Организация хранения и обработки данных
- •1.4.1 Записи и списки
- •Задание
- •1.4.2 Очередь
- •Задание
- •1.4.3 Стек
- •Задание
- •Структурное программирование. Объектно-ориентированное программирование. Визуальное программирование.
- •ВВедение в язык программирования Краткая история эвм и языки программирования
- •Интегрированная среда borland pascal Краткая характеристика
- •Запуск программы
- •Открытие нового окна
- •Завершение работы со средой
- •Структура программы
- •Понятие идентификатора
- •Процедуры ввода и вывода данных
- •Переменные строкового типа
- •Переменные целого типа
- •Три программы (сумма, разность, произведение) Переменные вещественного типа (Операция деления)
- •Операторы выбора
- •Булевские (логические) операции
- •Одномерный массив
- •Двумерный массив Трехмерный массив описание массива
- •Нахождение максимального элемента в массиве
- •Строковая переменная как массив
- •Работа с файлами Виды файлов (типизированный и не типизированный) Запись данных в файл
- •Считывание данных из одномерного массива
- •Считывание данных из двумерного массива
Учебник
«Алгоритмизация
и программирование»
(ПРОГРАММИРОВАНИЕ
НА ЯЗЫКЕ ПАСКАЛЬ)
Я считаю, что программа никогда не является самоцелью; программа предназначается для того, чтобы вызвать вычисления, а цель вычислений – получить нужный результат. Несмотря на то, что программа является конечным продуктом деятельности программиста, возможные вычисления по этой программе – «осуществление» которых предоставляется машине! – вот истинное содержание его труда.
Э. Дейкстра «Структурное программирование»
«,,, коль уж становиться программистом, то программистом хорошим; такого программиста отличает постоянное желание стать еще лучшим программистом, а единственно верный путь для этого – стремиться в совершенстве овладеть несколькими языками, т.е. сделаться хорошим лингвистом в программировании. Безусловно, можно доказать, что несомненный вред нанесли и наносят те довольно хорошие программисты, которые, став слишком самодовольными или консервативными, полагают, что язык, которым они пользуются, во всех смыслах является последним словом».
ВВЕДЕНИЕ
Структурное программирование
Основные определения
Три основных действия
Структурный подход к решению задач
Представление данных
Структурное программирование.
Объектно-ориентированное программирование.
Визуальное программирование.
ВВедение в язык программирования
Обзор языков программирования.
Интегрированная среда Borland Pascal.
Основы работы в редакторе
Структура программы
Скелет программы
Первая программа
Запуск программ на выполнение, компилирование программ
Ошибки выполнения
Описание подпрограмм
Запуск и трассировка программы
Операторы ввода и вывода
Строковый тип данных
Операции и выражения
Классификация операций
Приоритет операций
Арифметические операции
Программа простой калькулятор
Операторы выбора
Операции отношения
Булевские (логические) операции
Оператор if …. Then … else
Оператор case …. of ….
Отличие операторов.
Циклические операции
Циклы с постусловием
Циклы с предусловием
Циклы с фиксированным количеством действий
Особенности применения циклов
Переменные типа массив
Виды массивов
Описание массивов
Строка как массив
Работа с файлами
Виды файлов (типизированный и не типизированный)
Запись данных в файл
Считывание данных из файла
Преобразование типов
Функции
Стандартные функции
Функции пользователя
Модули
Создание собственных модулей.
Графические возможности языка Рascal
Текстовый и графический видеорежимы.
Понятие о графических процедурах языка Pascal.
Инициализация графического видеорежима.
Основные процедуры вывода графической информации.
Вывод текстов.
Работа с цветом.
Введение
Дорогие ребята, мы с Вами приступаем к изучению основ программирования на языке Pascal.
Первая версия языка Pascal появилась в 1968 году. Ее разработал и предложил известный швейцарский ученый Никлаус Вирт. Язык Pascal является развитием языка Алгол (Алгол 60). Этот язык был задуман для использования при обучении студентов основам программирования.
Современным достижением программирования является признание преимущества структурированных программ. Паскаль, один из языков программирования который помогает писать «структурированные» программы в том смысле, что структура программы должна непосредственно отражать структуру задачи. Эта особенность языка Pascal, а так же его достаточная простота, из-за интуитивной понятийности его конструкций, позволила языку завоевать прочное место среди языков программирования уровня. Он широко используется инженерами и научными работниками, он является официальным языком международных олимпиад по информатике. В настоящее время существует достаточно много версий данного языка. Наибольшее распространение, при программировании в среде MS(PC)-DOS и Windows, получила версия языка разработанная фирмой Borland (Borland Pascal 7.0). Дальнейшим развитием языка стало появление языка визуального программирования Delphi (фирмы Borland). Поэтому освоение основ языка Pascal является необходимым условием для изучения Delphi – одного из наиболее мощных в настоящее время языков программирования.
«..Программирование – дисциплина удивительно многоплановая; во-первых, оно содержит множество нетривиальных проблем и поэтому открыто для систематических методов математического анализа, а во-вторых, оно является вызовом человеческому интеллекту» - говорил Никлаус Вирт, в своей книге «Систематическое программирование. Введение».
Разнообразие языков программирования очень велико и при изучении нового языка, иногда лучше относится к нему как к любому другому иностранному языку: изучая английский, мы не выясняем, почему некоторые глаголы неправильны – мы, возможно, поворчим, а потом выучи их наизусть.
Глава 1. Структурное программирование
1.1 Основные определения
Говорят, что программирование – это искусство получения ответов от машины, и если мы решили применить компьютер, нам предстоит пройти основных три этапа:
1. Ясно и точно установить, что же должно быть сделано
2. Определить точно определенную последовательность действий, ведущую к желаемому результату, то есть предложить алгоритм.
3. Выразить алгоритм в виде понятном для машины.
Первый шаг носит название – системный анализ. Второй этап – это этап конструирования программы. Третий этап – собственно «программирование».
Полный процесс решения всегда сложен уже потому, что он включает извечную проблему: как решать задачу. С этой точки зрения первый пункт из указанной выше последовательности этапов в определенной ситуации могут оказаться решающими. В самом деле, во многих случаях точная формулировка задачи, построение адекватной модели составляют основную трудность в поиске метода решения, который затем и приводит к разработке алгоритма. По этому, мы будем учиться не только собственно «программированию», но и элемента системного анализа и конструированию программ.
Но перед началом поговорим вот о чем - Очень много недоразумений происходит только по тому, что люди не поняли друг друга. Они не понимают друг друга по двум причинам:
а) они говорят об одном и том же, используя разные слова;
б) они говорят о совсем разных вещах, используя одни и те же слова.
По этому, что бы между нами не было недоразумений, вначале стоит договориться о некоторых терминах, которые будут применяться и о том, что эти термины будут обозначать.
Действие - Одно из важнейших понятий. Это нечто, что имеет конечную продолжительность и приводит к желаемому и совершенно определенному результату.
Объект – это то, над чем это действие совершается и по изменению состояния которого можно судить о результате этого действия.
Инструкция – описание действия с помощью некоторого языка или системы формул.
Процесс (вычисление) - действие которое можно разложить на составные части. Если эти части во времени следуют строго друг за другом и никакие две части не выполняются одновременно, то процесс называется последовательным.
Программа - инструкция, описывающая процесс и состоящая из составных частей. Таким образом, программа состоит из набора инструкций, текстуальная упорядоченность которых, вообще говоря, не совпадает с порядком выполнения соответствующих действий.
Процессор (исполнитель) – то, что выполняет действия согласно заданным инструкциям. Это боле или менее нейтральное слово никак не определят, что является исполнителем – человек или автомат. В самом деле, программы (коль скоро они записаны на языке, который точно определен) имеют смысл безотносительно к специфике процессора.
Алгоритм – это система точных и понятных инструкций о содержании и последовательности выполнения конечного числа действий, необходимых для решения задачи.
В дальнейшем, если будет встречаться новый термин, мы будем его пояснять.
Считается, что разрабатывать и писать программы очень сложно. Попробуем разобраться с этим. Является ли, это чем-либо особенным или это может быть доступно любому человеку.
В течение своей жизни человек выполняет различные действия: ест, спит, ходит в школу, учится в институте, ходит на работу, женится, выращивает детей, поет песни, смотрит телевизор, читает книги или просто отдыхает. Этот список можно успешно продолжить дальше. Очень часто, производя эти действия, мы как бы не задумываемся, делаем их подсознательно. На самом деле, какое бы действие мы не производили, всегда перед его выполнением наш мозг анализирует ситуацию, решает, что же должно быть сделано, определяет определенную последовательность действий, ведущую к желаемому результату, и выражает эти инструкции в виде программы, которую мы и выполняем. Здесь мы исполняем и роль системного аналитика, и роль разработчика алгоритма, и роль программиста, и роль процессора (исполнителя). И эту роль мы исполняем ежесекундно в течение всей своей жизни. Не правда ли потрясающе? Вспомним знаменитого персонажа пьесы Жан-Батиста. Мольера «Мещанин во дворянстве» Журдена:
Г-н Журден. А когда мы разговариваем, это что же такое будет?
Учитель философии. Проза.
Г-н Журден. Что? Когда я говорю: "Николь, принеси мне туфли и ночной колпак", это проза?
Учитель философии. Да, сударь.
Г-н Журден. Честное слово, я и не подозревал, что вот уже более сорока лет говорю прозой. Большое вам спасибо, что сказали.
Но бывают случаи, когда результат нашей деятельности будет зависеть от того, насколько четко мы осознаем сущность своих действий: что делать в каждый момент, в какой последовательности, каким должен быть итог действий и т.п. Все это определяет особый аспект культуры мышления и поведения, характеризующийся умением составлять и использовать различные алгоритмы.
Задание
Опишите словесно алгоритм приготовления чая.
Опишите словесно алгоритм выполнения домашнего задания.
Опишите словесно алгоритм приготовления вашего любимого блюда.
Вам поручили выучить стихотворение, словесно опишите алгоритм.