Для решения задачи на компьютере требуется написать программу. Программа состоит из исполняемых операторов (команд) и операторов описания. Исполняемый оператор задает законченное действие, выполняемое над данными. Примеры исполняемых операторов: вывод на экран, занесение числа в память, выход из программы.
Оператор описания, как и следует из его названия, описывает данные, над которыми в программе выполняются действия. Примером описания (конечно, не на Паскале, а на естественном языке) может служить предложение «В памяти следует отвести место для хранения целого числа, и это место мы будем обозначать А».
Исполняемые операторы для краткости часто называют просто операторами, а операторы описания — описаниями. Описания должны предшествовать операторам, в которых используются соответствующие данные. Операторы исполняются последовательно, один за другим, если явным образом не задан иной порядок.
В программе, записанной на языке Паскаль, можно выделить:
- заголовок программы;
- блок описания используемых данных;
- блок описания действий по преобразованию данных (программный блок).
Программный блок начинается со слова begin и заканчивается словом end с точкой.
Программирование на языке Паскаль: Урок 1-структура программы.
Приведём общий вид программы:
begin
end.
Точка с запятой служит разделителем между операторами, а не является окончанием соответствующего оператора. Перед служебным словом end точку с запятой ставить не обязательно.
Источник: trofimovoi.ru
Программирование на языке Pascal
Посмотрев этот видеоурок, учащиеся вспомнят алфавит и словарь языка Pascal, типы данных в языке Pascal, структуру программы на языке Pascal, операторы присваивания, ввода и вывода, программирование разветвляющихся алгоритмов и массивы в Pascal.
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет.
Получите невероятные возможности
1. Откройте доступ ко всем видеоурокам комплекта.
2. Раздавайте видеоуроки в личные кабинеты ученикам.
3. Смотрите статистику просмотра видеоуроков учениками.
Получить доступ
Конспект урока «Программирование на языке Pascal»
Сегодня на уроке мы вспомним:
· алфавит и словарь языка Pascal;
· типы данных в языке Pascal;
· структуру программы на языке Pascal;
· операторы присваивания, ввода и вывода;
· программирование разветвляющихся алгоритмов.
· и массивы в Pascal.
Pascal – один из наиболее известных языков программирования, а также является базой для ряда других языков. С помощью языка Pascal можно создавать программы для решения вычислительных задач, обработки текстов, построения графических изображений и много другого.
Алфавит и словарь языка Pascal
Алфавит языка – это набор допустимых символов, которые можно использовать для записи программы.
Язык программирования Pascal использует следующие наборы символов:
· Английские буквы и буквы национальных алфавитов, в том числе русского.
· Буквы могут быть как строчными, так и прописными.
· Арабские цифры – (0, 1, 2, 3, 4, 5, 6, 7, 8, 9).
· Знаки операций и знаки, входящие в составное обозначение операций (+, -, *, /, :, =, ).
В алфавите языка также есть неделимые элементы. Это составные символы, которые нельзя разрывать.
К ним относятся:
· знак операции присваивания (:=);
· начало и конец комментария. Сам комментарий, который вы ходите оставить, необходимо написать после знака «двойной слеш».
Служебные слова – это цепочки символов, которые рассматриваются как единые смысловые элементы с фиксированным значением.
Давайте вспомним основные служебные слова, которые используются при написании программы на языке Паскаль.
Для обозначения констант, переменных, программ и других объектов используются имена. Имена – это любые последовательности букв, цифр и символов подчёркивания. Важно, что имя должно быть отличным от служебных слов и названия операторов. Чтобы задать имя используют латинский алфавит, и оно должно начинаться с буквы или символа подчёркивания. В именах не различаются строчные и прописные буквы.
Типы данных в языке Pascal
Типы данных делятся на числовые, символьные, строковые и логические.
Структура программы на языке Паскаль
В программе, записанной на языке Pascal, выделяют:
· блок описания используемых данных;
· блок описания действий по преобразованию данных (программный блок).
Основными разделами блока описания данных являются:
· раздел описания констант (const),
· и раздел описания переменных (var).
Имена переменных одного типа следует перечислять через запятую, затем после двоеточия указывают их тип. После описания каждого типа ставится точкой с запятой.
В программе могут отсутствовать заголовок и блок описания данных, но обязательно должен быть программный блок. Он содержит команды, которые описывают алгоритм решения задачи. Программный блок начинается со слова begin и заканчивается словом end, после которого ставится точка.
Вспомним общий вид программы:
Под операторами в языке Pascal подразумевают только описание действий. Операторы отделяются друг от друга только точкой с запятой. Если оператор стоит перед end, until или else, то в этом случае точка с запятой не ставится.
В программе на языке Pascal можно оставить комментарии.
Их можно указать следующими способами:
· Заключить текст комментария между фигурными скобками.
· Начать текст комментария с двух знаков слэш.
Оператор присваивания
Присваивает указанной переменной некоторое значение.
Перед оператором присваивания следует имя переменной, которой присваивается значение, а после него – значение, которое присваивается переменной.
При использовании оператора присваивания необходимо, чтобы переменная с указанным именем была предварительно объявлена в разделе описания переменных. Значение, присваиваемое переменной, должно соответствовать типу переменной.
Порядок выполнения операций
Важно помнить в каком порядке должны выполняться операции в сложных выражениях. Операции одного приоритета выполняются слева направо. Если воспользоваться круглыми скобками, то можно изменить порядок операций. Значения функций вычисляются раньше, чем выполняются другие операции.
Вспомним приоритетные уровни операций по убыванию приоритета:
· Одноместные (унарные) операции: +, -, not.
· Мультипликационные операции: *, /, div, mod, and.
· Аддитивные операции: +, -, or, xor.
Операторы ввода и вывода
В Pascal ввод осуществляется с помощью процедур read и readln, а вывод – благодаря write и writeln.
Процедуры, которые имеют окончание ln, после своего выполнения переводят указатель на новую строку.
Правила преобразования числовых типов в среде программирования Pascal
К числовым типам данных относятся целочисленные типы: byte и integer, а также вещественный тип real. Переменные типа byte легко преобразуются в integer и real. Также можно перевести переменные типа integer в real. Переменные вещественного типа real нельзя перевести в целочисленный тип неявно. Это можно сделать только с помощью специальных функций.
Переменные типа integer также можно неявно преобразовать в byte.
Возможности неявного преобразования данных числовых типов
Над любыми числами, как над целыми, так и над вещественными можно производить основные арифметические операции: сложение вычитание, умножение и деление. Сложение, вычитание и умножение возвращают результат в зависимости от типа переменных, над которыми производится операция. Если оба аргумента целочисленных типов, то есть byte и integer – то и результат будет целым числом. Если один или оба аргумента принадлежат вещественному типу real, то и результат будет принадлежать типу real. Деление всегда возвращает результат вещественного типа, real.
Основные арифметические операции
Вспомним такие арифметические функции как: возведение в квадрат sqr и извлечение квадратного корня из числа sqrt. Результат выполнения функции sqr будет того же типа, что и аргумент. А результат выполнения функции sqrt всегда будет вещественного типа.
Ещё одна функция общая для числовых типов – модуль числа. Функция модуля записывается сочетанием букв abs и её значение будет того же типа, что и аргумент.
Теперь вспомним функции, аргументом которых может быть только вещественное число. Это функция округления – round, а также функции выделения целой – int и дробной frac части. Значение функции round имеет целочисленный тип. Единственным способом преобразования вещественных чисел к целому типу является функция округления. Функции выделения целой и дробной части возвращают значение вещественного типа.
Функция random не имеет аргументов. Эта функция возвращает случайное вещественное число от нуля до единицы, при этом ноль входит данный промежуток, а единица – нет.
Теперь вспомним операции и функции, которые уникальны для целочисленных типов. Это операция получения целого частного – div. И операция выделения остатка от деления – mod. Результаты этих операций имеют целочисленные типы.
Символьный тип данных
В языке Pascal символьный тип называется char.
Значения символьного типа в коде программы нужно заключать между двумя апострофами. Символьным значениям, задаваемым через консоль, апострофы не нужны.
Строковый тип данных
В языке Pascal значением переменной типа string является строка – это последовательность из нескольких символов. Строковые значения в коде программы заключаются в одинарные кавычки. При вводе через консоль, как и в случае с символами кавычки не требуются.
Строки можно получать с помощью склейки символов между собой или путём склейки других строк – эта операция называется конкатенацией. Чтобы выполнить эту операцию необходимо присвоить строковой переменной последовательно записанные строковые или символьные значения, между которыми должен стоять знак плюс. Исходные строки и символы будут соединены в порядке своего следования.
Со строками можно работать посимвольно. Нужно записать название строковой переменной после которого в квадратных скобках указать порядковый номер символа, чтобы обратиться к символу в составе строки.
Логический тип данных
В языке Pascal он называется boolean. К этому типу принадлежат логические переменные. Такая переменная может хранить одно из двух значений – истина или ложь. В языке Pascal эти значения обозначаются как true и false. Ещё мы помним, что, если высказывание истинно – оно может обозначаться 1, а если ложно – 0.
Значения логических переменных можно получить при сравнении чисел, а также строковых, символьных и логических выражений, поэтому в языке Pascal логическим переменным можно присваивать результат операции сравнения.
В языке Pascal высказывания можно объединять с помощью логических операций: and, or и not. При этом каждое высказывание берётся в скобки.
Программирование разветвляющихся алгоритмов
Для записи конструкции ветвления в языке Pascal используется условный оператор. У условного оператора в языке программирования Pascal есть две формы записи: полная и сокращённая.
В сокращённой форме для записи условного оператора используется служебное слово if, после которого следует условие. После условия записывается служебное слово then, после которого следует оператор. Этот оператор будет реализован если будет выполнено указанное условие. После оператора ставится точка с запятой.
В полной форме записи после условия следует оператор, который стоит после слова then, точка с запятой не ставится, так как далее следует оператор, который будет выполнен, если указанное условие выполнятся не будет. Вместо точки с запятой записывается служебное слово else, после которого следует точка с запятой.
Вспомним и составной условный оператор. В этом операторе после служебных слов then и else следуют целые последовательности операторов, которые заключены между логическими скобками. В данном случае перед служебным словом else точка с запятой не ставится.
Внутри оператора ветвления может встречаться и другой оператор ветвления. Тогда такой оператор ветвления называется вложенным.
Программирование циклических алгоритмов
В зависимости от способов организации выделяют: циклы с заданным условием продолжения работы, циклы с заданным условием окончания работы и циклы с заданным числом повторений.
Циклы с заданным условием продолжения работы (с предусловием)
Цикл с предусловием записывается с помощью служебного слова while. После которого следует условие цикла и служебное слово do.
На следующей строке располагается тело цикла, состоящее из серии операторов, которые записывают в порядке своего исполнения. Часто они записываются в логических скобках, то есть между служебными словами begin и end. Если тело цикла состоит из одного оператора, то логические скобки записывать необязательно.
Циклы с заданным условием окончания работы (с постусловием)
Цикл с постусловием записывается с помощью служебного слова repeat. После него следует тело цикла, которое представляет собой последовательность операторов. После тела цикла следует служебное слово until, после которого идёт условие цикла и ставится точка с запятой. Как мы помним, выделять тело цикла служебными словами begin и end в данном случае не требуется, так как слова repeat и until сами играют роль логических скобок.
Циклы с заданным числом повторений
Такие циклы записываются с помощью оператора for, после которого следует название параметра, который должен быть заранее объявлен в разделе описания переменных. Параметр может принадлежать только к одному из целочисленных типов. Далее записывается знак присваивания, после него начальное значение параметра. Дальше стоит или служебное слово to, или downto.
Отличие в использовании этих служебных слов в том, что to используется, когда конечное значение параметра больше начального, а downto – когда конечное значение меньше начального. После указывается конечное значение параметра, а после него через пробел служебное слово do.
Шаг изменения параметра в языке Pascal всегда равен единице, поэтому его указывать не требуется. Дальше следует тело цикла, которое записывается между логическими скобками, если в нём больше одного оператора.
Массивы в Паскале представляют именованную собой совокупность элементов одного типа, ранжированных по возрастанию их индексов. Массивы используются в комбинации с циклами.
Объявление массива выполняется с помощью ключевого слова array с указанием размерности массива и типа его элементов.
Если элементы массива имеют заданные начальные значения, то он может быть описан в разделе описания констант.
Чтобы заполнить массив необходимо:
· ввести значения каждого элемента с клавиатуры
· или присвоить элементам некоторые значения.
При этом может быть применён цикл с параметром.
С помощью оператор присваивания можно задавать значения элементов массива.
Значения элементов массива можно вывести в строку, разделив их пробелом.
Ну что же, вот мы и вспомнили основные моменты программирования на языке Паскаль. Теперь попробуйте ответить на следующие вопросы:
Относится ли знак присваивания к неделимым элементам?
Что такое служебные слова?
Можно ли имя массива совпадать со служебным словом?
Можно ли переменные вещественного типа real перевести в целочисленный тип неявно?
Внимательно посмотрев урок, вам не составит труда ответить на вопросы.
Источник: videouroki.net
37 Структура Паскаль-программы и правила её записи. Роль комментариев в Паскаль-программе, особенности их записи.
В структуре основного блока выделяют раздел описаний и раздел операторовю Раздел описаний составляется по внешней спецификации и включает в себя следующие внутренние разделы:
- Раздел описания меток со словом “label”
- Раздел описания констант со словом “const”
- Раздел описания типов со словом “type”
- Раздел описания переменных со словом “var”
- Раздел описания процедур и функций со словами “function” и “procedure”.
Команда описание ограничивается точкой с запятой. Раздел операторов начинается со слова “begin” и заканчивается со словом “end”. Комментарии применяются для подчёркивания особенностей операторов и для каких-то пояснений. Комментарии заключаются в фигурные скобки и могут занимать любые положения между заголовком и последней строкой с точкой. Имена переменных должны быть понятными и должны отражать их суть. Следует рационально пользоваться пробелами как разделителями. Для большей наглядности рекомендуется записывать служебные слова только заглавными буквами. 38 Программирование ввода – вывода данных в Паскале с использованием стандартных файлов ввода – вывода. Форматированный вывод данных в Паскале. Для ввода значений исходных данных используются операторы read и readln (последний обеспечивает пропуск строки). При записи значений в разных строках необходимо нажать ENTER. Для вывода информации на экран монитора используются операторы write и writeln(так же пропуск строки). Для ввода-вывода данных в Паскале используются стандартные формы ввода-вывода: input и output. 39 Программирование ввода-вывода данных в Паскале с использованием нестандартных текстовых файлов. Ввод-вывод данных с использованием нестандартных текстовых файлов:
- Выбрать имена для нужного числа файловых переменных;
- Подготовить имена для нестандартных текстовых файлов;
- Программу нужно дополнить двумя операторами : ASSIGN и RESET, REWRITE и CLOSE.
- В операторах ввода/вывода дополнить имена файловых переменных.
40 Особенности программирования ввода – вывода массивов данных в Паскале. 41 Общая классификация типов в Турбо Паскале. Среди типов, используемых в языке, есть стандартные типы, то есть заранее предопределённые, не требующие предварительного описания в программе, и нестандартные типы, определённые самим программистом. Все другие типы данных должны быть описаны в программе со служебным словом TYPE. TYPE = 42 Стандартные типы в Паскале. Вещественные типы имеют конечное число значений. Кроме типа real, существует ещё 5 вещественных типов: single, double, extended, comp. Целый тип, самый известный идентификатор integer. Логический тип – начиная с версии ТР 7.0 к стандартному типу boolean добавляется ещё bytebool, wordbool, longbool. Символьный тип – CHAR. Каждому символу приписывается целое число в диапазоне от 0 до 255. Число служит кодом внутреннего представления символа. Именно его возвращает функция ORD. CHR(i) – позволяет определить символ по его ходу. 43 Нестандартные порядковые типы в Паскале (перечисляемый тип и тип-диапазон). Среди нестандартных типов различают перечисляемый тип и тип-диапазон. Перечисляемый тип определяется перечислением имён-значений, которые может получить объект этого типа. TYPE =(). Имена-значения записываются только латинскими буквами. TYPE Oper=(Plus, Minus, Mult, Divide). Тип-диапазон. В любом порядковом типе можно выделить max и min значения в границах которого находятся все значения этого типа. TYPE = . . TYPE Hour=1 . . 24; Можно сразу определить тип-диапазон и в var: VAR t: 1 . . 24; 44 Тип-массив в Паскале: понятие, описание, размещение массивов в памяти. Тип-массив. В массиве количество его компонентов строго фиксировано и указано в его описании. В массиве все его компоненты имеют одинаковый тип. TYPE =array [] of ; В качестве индексного типа можно применить любой, кроме longlit имя типа-диапазон. TYPE ODN=array [1..100] of integer; DVUM=array[1..100,1..20] of real; VAR x: ODN; y: DVUM; Можно сразу описать массив в VAR: VAR x:array [1..100] of real; В Паскале можно одной операцией присваивания передать все элементы одного массива другому, но только того же идентичного типа. 45 Тип-файл в Паскале: понятие, виды файлов, их сравнение и описание. Файл – последовательность компонентов, как правило, одного типа, длина не ограничена, заранее не определяется и не объявляются в программах. В Турбо Паскале компоненты файла могут иметь любой тип, кроме типа файл и типа объект. В Турбо Паскале выделены 3 разновидности типа файл (или файлового типа). Поэтому файловый тип в Турбо Паскале можно описать одним из трёх способов:
- Типизированный файл
TYPE = FILE of ;
- Не типизированный файл
TYPE = FILE;
- Текстовый файл, являющийся одним из стандартных типов Турбо Паскаля с именем TEXT, а следовательно не требующий предварительного описания в программах.
Типизированные файлы хранят данные во внутримашинном представлении, поэтому такие файлы нельзя создать с помощью текстового редактора Турбо Паскаля. Для записи данных в типизированный файл и чтения данных в типизированном файле необходимо составить подпрограммы, использующие стандартную документацию Турбо Паскаля, ориентированные на работу с Турбо Паскале. В типизированном файле длина любого компонента файла строго постоянна, соответствует размеру в байтах для единиц информации соответствующего типа, что позволяет организовать (с помощью одной из процедур Турбо Паскаля) прямой доступ к каждому компоненту файла по его порядковому номеру( при этом первый компонент файла имеет N=0) Нетипизированный файл отличается от типизированного тем, что для них не указан тип компонента файла (эти компоненты могут иметь и различный тип), что позволяет:
- Сделать эти файлы совместимыми с любыми другими файлами
- Организовать высокоскоростной обмен данными между внешней памятью и оперативной памятью П.К.
Так же как и для типизированных файлов:
- Данные хранятся во внутримашинном представлении
- Может быть прямой доступ к каждому компоненту файла по его порядковому номеру
Текстовый файл предназначен для хранения символьной информации объединённой в строки (разделённой на строки). Компоненты такого файла могут иметь переменную длину. Именно поэтому текстовые файлы в Турбо Паскале рассматриваются как совокупность строк переменной длины, содержащих вводимые в ЭВМ процедурами (READ) или (READLN) или выводимую из ЭВМ информацию процедурами (WRITE) или (WRITELN). Текстовый файл хранит данные во внешнем представлении. 46 Пошаговое проектирование алгоритмов и программ (методы “сверху-вниз”, “снизу-вверх”, комбинированный) В пошаговом проектировании алгоритмов выделяют методы нисходящего и восходящего проектирования. Основным является метод нисходящего проектирования. В основу данного метода положена идея разделения исходной задачи на подзадачи. Каждая подзадача в свою очередь разделяется на ещё более простые подзадачи. И так далее пока каждая подзадача не будет раскрыта набором базовых управляющих структур. При разделении задачи на подзадачи важно:
- Чётко поставить очередную подзадачу
- Тщательно специфицировать данные на очередном уровне детализации алгоритма.
47 Понятие процедуры. Описание и вызов процедуры. Формальные и фактические параметры процедур. Под процедурой понимают вспомогательный алгоритм, который описывает типовое, укрупнённое, функционально-завершённое действие. Процедура – это поименованная подпрограмма, оформленная в виде закономерной последовательности элементарных операторов, допускающая обращение к ней по имени, получающая входные и возвращающая результаты её работы через список своих параметров. Операторы ввода/вывода данных отсутствуют. 49 Процедурная форма описания алгоритма подзадачи. Алгоритм подзадачи описывается в процедурной форме в тех случаях, когда такой сегмент носит типовой (универсальный) характер или представляет собой фундаментально завершённую подзадачу. Форма процедуры остаётся автономной, получая статус вспомогательного алгоритма и уникальное имя её алгоритма (блок схема дополняется записью блоков “начало” и “конец”). Внутренняя спецификация алгоритма дополняется формально записью заголовка процедуры Процедура (< т.е. входные + выходные параметры>) 50 Преимущества и недостатки программ с процедурами. Преимущества такой структуры программы:
- Повышение наглядности программы, а часто и сокращение её длины (лишь в случае оформления в виде процедур повторяющихся фрагментов задачи)
- Упрощение разработки программы за счёт разделения труда между несколькими её разработчиками, и как следствие этого – сокращение времени разработки программы.
- Возможность использовать уже существующего фонда типовых алгоритмов (программ), и как следствие этого – сокращение времени разработки и повышение качества разработанной программы за счёт включения в её состав готовых, хорошо отлаженных фрагментов.
- Возможность распространения разработанных процедур как типовых фрагментов других программ.
Недостатки процедурного программирования:
- Увеличение времени обработки программ с процедурами.
- Увеличение длины программы и бόльшие требуемые ресурсы памяти, если в программе нет повторяющихся фрагментов задачи.
51 Подпрограммы в Паскале. Подпрограммы-процедуры. Подпрограммы-функции. Структура любой подпрограммы Паскаля аналогична структуре основной программы и, как и в структуре основной программы, выделяем заголовок и блок. Любая подпрограмма может содержать в своём блоке раздел описания своих подпрограмм. В Паскале имеется две разновидности подпрограмм:
- Процедуры общего назначения (просто процедуры): предназначены для выполнения какой-либо последовательности действий определённой соответствующим вспомогательным алгоритмом, приводящие к нескольким результатам вычислений.
PROCEDURE ()
- Процедуры-функции (просто функции): Предназначены для описания последовательности действий, определённой соответствующим вспомогательным алгоритмом, но приводящей к одному единственному значению.
Есть два отличия от процедуры общего назначения:
- Запись заголовка: Function ():;
- В разделе операторов блока функций хотя бы один раз должно быть присвоено значение т.е. в разделе операторов должен быть записан хотя бы 1 оператор присваивания вида :=.
Функции в отличие от процедур общего назначения позволяют вычислить только одно единственное выходное (результирующее) значение. 52 Понятия локальных и глобальных параметров (переменных) в Паскале. Все объекты (или параметры), которые использует некоторая подпрограмма можно разделить на:
- Локальные параметры – объявленные внутри подпрограммы и доступные, поэтому только ей самой и её внутренним блокам.
Глобальные параметры – объявления в основной программе и доступные как самой программе так и всем её подпрограммам
Источник: studfile.net