Что такое операторные скобки в паскале

Операторные скобки

Многие сегодня хотят стать программистами. Хотят. Но ничего не делают для этого. Не делают даже простых вещей. Не хотят даже прочитать книжку из 10 страниц. В итоге так и остаются никем. Потому что мечты не сбываются никогда. Сбываются только планы… Подробнее.

Мы с вами изучили простейшие применения условного оператора и оператора выбора. Однако в реальных программах обычно встречаются более сложные случаи.

Например, в нашем калькуляторе в случае выбора операции деления и в случае, если пользователь ввёл в качестве второго числа 0, мы выдаём сообщение об ошибке и завершаем программу. Это очень плохо, потому что мы не предоставили пользователю шанса исправить ошибку. Пользователь может на нас обидеться.

Как быть? Ведь после оператора if можно записать только одно выражение. То есть, если мы напишем

То мы предоставим пользователю возможность повторно ввести значение y. Но есть одна проблема.

будет выполняться в любом случае, независимо от того, был ли y равен нулю или нет. То есть мы заставим пользователя повторно вводить значение, даже если он с первого раза ввёл его правильно.

Но и это ещё не всё. Нам придётся снова проверять значение y, так как пользователь может и второй раз ошибиться.

В общем у нас появился вопрос: как можно “впихнуть” в оператор if несколько выражений.

Ответ есть: надо поместить все выражения между словами begin и end. То есть в нашем примере это будет выглядеть так:

Итак, полный вариант синтаксиса конструкции if. then. else:

Если используется только один оператор, то слова begin и end можно не использовать. Если более одного оператора, то использование этих слов ОБЯЗАТЕЛЬНО.

Надеюсь, вы уже догадались, что слова begin и end используются не только для обозначения начала и конца программы. Эти слова ещё называют операторными скобками. Операторные скобки объединяют какой-либо блок кода. И в таком случае этот блок кода используется в программе как один оператор.

Однако, если после константы следует несколько операторов, то слова begin и end также необходимы. Полный вариант конструкции case выглядит так:

О других операторных скобках мы будем говорить далее.

А сейчас ещё немного усовершенствуем наш многострадальный калькулятор.

Итак, здесь мы даём возможность пользователю исправить свою ошибку. Однако он может совершить её ещё раз. Как решить эту проблему, мы будем думать дальше.

А пока разберитесь и усвойте сегодняшний материал.

Источник

#1 Начало программирования. Минимальная программа. Комментарии в коде. Тело программы и операторные скобки. Паскаль

Primary tabs

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

Forums:

Перейдём к разбору основ программирования на языке Pascal (см. наш онлайн-учебник).

Минимальная программа на языке Паскаль выглядит следующим образом:

Запустите её в вашей среде разработки программ и посмотрите что произойдёт.

Переносы строк не важны, но нужны

Дело в том, что в Паскале при выполнении других правил языка (т.н. «синтаксиса»), переносы строк не играют никакой роли, но тем не менее программу никогда не пишут в одну строчку, чтобы код был более понятным для человека (программиста).

Если говорить, более наукообразно, то можно сказать, что:

переносы строк не являются частью синтаксиса Паскаля, но используются программистами для нужд оформления программного кода и удобства его редактирования.

Комментарии к коду и в коде

Виды комментариев

Комментарий может начинаться в любом месте строки и в любой строке программы, например:

Далее вы увидите ещё много примеров использования комментариев.

Перепишем часть комментариев из предыдущего примера в многострочном стиле, например так:

— то есть в многострочных комментариях каждую строку отмечать особо не требуется.
Как было сказано выше можно закомментировать любой фрагмент, в том числе всю программу, например:

— тогда ни одной строчки выполнено не будет.

Ещё раз об отличиях и возможностях однострочных и многострочных комментариев

Также нужно понимать, что с помощью многострочных комментариев можно закомментировать только одну строку, например:

а можно и несколько строк:

С помощью однострочных можно закомментировать только одну строку (если открывающие символы стоят в начале), например:

Или только часть строки, которая начинается с открывающих однострочный комментарий символов:

Закомментировать несколько строк одним однострочным комментарием не получится (на то он и однострочный).

Зачем нужны комментарии

Комментарии нужны, чтобы:

— в теле этой программы есть одно действие.

— тело этой программы фактически пусто.

Тело программы. Операторные скобки

Далее с помощью комментариев мы будем добавлять пояснения к коду.
Таким образом очень удобно совмещать код и пояснения к нему.

Итак, поясним что такое операторные скобки и тело программы:

Также я покаже где находится тело программы с помощью комментриев:

Операторные скобки нужны, чтобы показать где именно будут описаны (с помощью Паскаля) действия программы. По сути «жизнь» кода происходит именно в окружении главных операторных скобок.

Источник

Язык Паскаль. Применение условного оператора

Язык Паскаль. Применение условного оператора.

Прежде чем говорить об условном операторе, познакомимся с понятием «операторные скобки». В языке Паскаль под операторными скобками понимают два служебных слова: Begin (открывающая скобка) и End (закрывающая скобка).

На характер операторов, входящих в составной оператор, не накладывается никаких ограничений. Среди них могут быть и другие составные операторы языка, допускается произвольная глубина вложения составных операторов. Фактически весь раздел операторов представляет собой один составной оператор.

В разветвляющихся вычислительных процессах (алгоритм ветвления) отдельные этапы вычислений выполняются не всегда в одном и том же порядке, а в зависимости от некоторых условий выбираются для исполнения различные их последовательности. Давайте рассмотрим конкретный пример.

Нам необходимо решить квадратное уравнение вида

Перечислим последовательность действий для решения:

2. вычислить значение дискриминанта,

3. проверить значения дискриминанта и, в зависимости от полученного ответа, выполнить то или иное действие.

В пункте 3 нашего алгоритма мы проводим анализ значения дискриминанта, а затем выбор действия, в зависимости от значений дискриминанта, т.е. данный алгоритм относится к алгоритмам ветвления.

Для реализации такого типа алгоритма, необходим оператор, который «выберет» то или иное действие (или группу действий) в зависимости от истинности или ложности условия выбора. Такой оператор называется оператором условного перехода, и его можно записать разными способами.

1. Полная форма оператора

IF THEN ELSE
если тогда иначе

Пример. Из двух чисел а и b вывести на экран значение большего числа.

If a > b then writeln (‘большее число а’, а) else writeln (‘большее число b ‘, b );

Внимание: перед словом ELSE нельзя ставить точку с запятой.

2. Краткая форма оператора.

Как работает эта конструкция? Запишем еще раз:

Возможны два варианта:

условие истинно, в этом случае программа «уходит в сторону» на оператор 1, он выполняется, а затем продолжает выполнять последовательности операторов: оператор 2, оператор 3 и т. д.

Вычислить значение функции, f ( x ) в зависимости от значения аргумента x

условие ложно, оператор 1 НЕ выполняется, следовательно, сразу выполняется следующий по порядку оператор: оператор 2, затем оператор 3 и т. д.

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскалеЧто такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

Решение этой задачи можно записать следующим образом:

Очень часто необходимо выполнять группу операторов либо за словом “ then ” (т.е. но истинности условия), либо за словом else (при ложности условия), либо и в том и другом случае.

оператор 1; оператор 2;… оператор n END ELSE оператор;

2. IF THEN оператор ELSE BEGIN оператор 1; оператор 2; … оператор n

3. IF условие > THEN BEGIN

оператор n END ELSE BEGIN

Между словами BEGIN и END стоят операторы. Следуя правилу языка Паскаль, они отделены точкой с запятой.

Перед словом ELSE никогда не ставится точка с запятой..

Мы должны проверить два условия:

writeln (‘ X удовлетворяет условию’)

writeln (‘ X IF не ограничена.

Задачи к пройденной теме

1. Получить максимальное число из трех целых чисел.

IF X > Y THEN MAX := X ELSE MAX := Y;

IF Z > MAX THEN MAX := Z;

writeln (‘максималъное значение =’, МАХ);

MAX : integer ; BEGIN

IF X + Y + Z>X*Y*Z THEN MAX := X + Y + Z

writeln (‘ наибольшее число ‘, MAX); END.

X, Y: integer; MIN: integer;

writeln (‘наименьшее число’, MIN );

Проверить, выполняются ли неравенства а b Решение

IF aусловие выполнено ‘)

ELSE writeln (‘ y слови e не выполнено’)

ELSE writeln (‘условие не выполнено’)

4. Даны два целых числа. Если первое число больше второго то заменить его их разностью, в противном случае — суммой, второе число не изменять.

Задачи для самостоятельного решения

2. Верно ли, что для заданного четырехзначного числа выполняется соотношение: сумма первой и последней цифры равна разности второй и третьей цифры?

3. Даны два действительных числа. Удвоить первое число, если оно меньше второго, в остальных случаях оставить числа без изменения.

4. Даны действительные числа х и у. Определить, принадлежит ли точка с координатами х, у заштрихованной части плоскости.

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

5. Составьте программу, которая уменьшает первое число в 5 раз, если оно больше второго по абсолютной величине. Полученные числа вывести на экран

6. Составьте программу, которая увеличивает первое число в 7 раз, если оно меньше второго по абсолютной величине. Полученные числа вывести на экран.

7. Составьте программу, которая уменьшает второе число в 3 раза, если оно больше первого по абсолютной величине. Полученные числа вывести на экран.

8. Составьте программу, которая уменьшает первое число в 5 раз, если оно равно второму по абсолютной величине. Полученные числа вывести на экран.

9. Составьте программу, которая из трёх введённых с клавиатуры чисел возводит в квадрат отрицательные, а положительные оставляет без изменения. Полученные числа вывести на экран.

10. Составьте программу, которая из трёх введённых с клавиатуры чисел возводит в квадрат положительные, а отрицательные оставляет без изменения. Полученные числа вывести на экран.

11. Составьте программу, которая из трёх введённых с клавиатуры чисел возводит в квадрат отрицательные, у положительных меняет знак, а ноль оставляет без изменения. Полученные числа вывести на экран.

12. Составьте программу, которая из трёх введённых с клавиатуры чисел уменьшает в отрицательные на 10, а положительные увеличивает в 2 раза. Полученные числа вывести на экран.

Источник

8. Операторы языка

Простые операторы – это операторы, не содержащие в себе других операторов. К ним относятся:

Структурированные операторы – это операторы, которые содержат в себе другие операторы. К ним относятся:

Оператор присваивания

Оператор безусловного перехода

Действие goto передает управление соответствующему помеченному оператору. При использовании меток нужно руководствоваться следующими правилом: метка должна быть описана в разделе описаний и все метки должны быть использованы. Оператор goto противоречит принципам технологии структурного программирования. Современные языки программирования не имеют в своем составе такого оператора, и в его использовании нет необходимости. Использовать оператор goto следует крайне осторожно. Широкое его применение без особых на то оснований ухудшает понимание логики работы программы. Безусловный переход можно осуществлять далеко не из каждого места программы и не в любое место программы. Так, нельзя с помощью этого оператора перейти из основной программы в подпрограмму или выйти из подпрограммы, не рекомендуется осуществлять переход внутрь структурированного оператора, т. к. он может дать неправильный результат, и т. д.

Пустой оператор

Пустой оператор не выполняет никакого действия и никак не отображается в программе (за исключением, быть может, метки или точек с запятыми, отделяющих пустой оператор от предыдущих или последующих операторов). Он может потребоваться для осуществления на него безусловного перехода.

Составной оператор

Он может потребоваться в тех случаях, когда в соответствии с правилами построения конструкций языка можно использовать один оператор, а выполнить нужно несколько действий. В такой составной оператор входит ряд операторов выполняющих требуемые действия.

В дальнейшем везде, где будет указываться, что можно использовать один оператор, им может быть и составной оператор.

Отдельные операторы внутри составного оператора отделяются друг от друга точкой с запятой.

Условный оператор IF

Условный оператор работает по следующему алгоритму. Вначале вычисляется условное выражение [условие]. Если результат есть True (истина), то выполняется [оператор1], а [оператор2] пропускается; если результат есть False (ложь), наоборот, [оператор1] пропускается, а выполняется [оператор2]. Например:

При выполнении этого фрагмента переменная Y получит значение переменной X, если только это значение не превышает Mах, в противном случае Y станет равно Mах.

Обратите внимание, что перед else не должно быть точки с запятой.

В отличие от других языков программирования в Object Pascal приоритет операций отношения меньше, чем у логических операций, поэтому отдельные составные части сложного логического выражения заключаются в скобки.

Например, такая запись предыдущего оператора будет неверной:

С учетом приоритета операций компилятор будет транслировать такую строку как:

Часть else [оператор2] условного оператора может быть опущена. Тогда при значении True условного выражения выполняется [оператор1], в противном случае этот оператор пропускается:

В этом примере переменная Y всегда будет иметь значение переменной X, а в Mах запоминается максимальное значение X. Вслед за else может идти другой оператор if. Таким образом, можно составить множественное ветвление:

Оператор выбора CASE

Оператор реализует множественное ветвление. В определенных ситуациях case использовать удобнее, чем if. Синтаксис оператора:

Выполнение операторов зависит, будет ли [выражение] равно [выражение_1], [выражение_2] или [выражение_N]. Например, [оператор_2] будет выполнен только в случае, когда [выражение]=[выражение_2]. Если ни одно из условий не выполняется, то будет выполнен [оператор], следующий за блоком else. Если блока else нет, то оператор case просто пропускается. Оператор case эквивалентен следующему оператору if:

Операторы цикла

Циклической алгоритмической структурой считается такая структура, в которой некоторые действия выполняются несколько раз. В программировании имеются два вида циклических структур: цикл с параметром и итерационный цикл.

В цикле с параметром всегда имеются так называемые параметры цикла. Иногда цикл с параметром называют регулярным циклом. Характерной чертой является то, что число циклов и повторений можно определить до выполнения цикла.

В итерационном цикле невозможно определить число циклов до его выполнения. Он выполняется до тех пор, пока выполняется условие продолжение цикла.

В языке Паскаль имеются три оператора, реализующих циклические вычислительные структуры:

Последние два ориентированы на реализацию итерационного цикла, однако их можно использовать и для реализации цикла с параметром.

Оператор FOR

Начальное и конечное значения должны быть того же типа, что и параметр.

На первом шаге параметр цикла принимает начальное значение затем осуществляется проверка: параметр цикла меньше или равен конечному значению. Это условие является условием продолжения цикла. Если выполнено, то цикл продолжает свою работу и выполняется [оператор], после чего параметр цикла увеличивается (уменьшается) на единицу. Затем с новым значением параметр цикла, проверяется условие продолжения цикла. Если оно выполняется, то действия повторяются. Если условие не выполняется, то цикл прекращает свою работу.

Оператор for существенно отличается от аналогичных операторов в других языках программирования. Отличия следующие:

Цикл for может уменьшать параметр. В этом случае синтаксис следующий:

Оператор WHILE (цикл с предусловием)

Оператор while работает следующим образом: вначале работы проверяется результат логического условия. Если результат истина, то выполняется оператор, после которого осуществляется возврат на проверку условия с новым значением параметров в логическом выражении условия. Если результат ложь, то осуществляется завершение цикла.

При работе с while надо обратить внимание на его свойства:

В примере ниже выполняется обработка записей формы. Пока не достигнуто окончание набора данных формы, выполнять обработку:

Оператор REPEAT (цикл с постусловием)

Оператор repeat работает следующим образом: сначала выполняются операторы тела цикла, после чего результат проверяется логического условия. Если результат ложь, то осуществляется возврат к выполнению операторов очередного тела цикла. Если результат истина, то оператор завершает работу.

Оператор repeat имеет следующие особенности:

Прерывание цикла

Любой из циклов можно прервать оператором break.

Источник

Pascal: Занятие №2. Часть 1: Условный оператор в Паскале (If)

Условный оператор в Паскале

До рассмотрения данной темы в основном использовались линейные алгоритмы в Паскале, характерные для весьма простых задач, когда действия (операторы) выполняются последовательно, одно за другим. Более сложные алгоритмы предусматривают использование конструкция ветвления.

Блок-схема условного оператора:
Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале
Условный оператор в Паскале имеет следующий синтаксис:

if условие then оператор;

Полный вариант:

if условие then оператор else оператор;

Условный оператор в Паскале — if — служит для организации хода задачи таким образом, при котором изменяется последовательность выполнения операторов в зависимости от какого-либо логического условия. Логическое условие может принимать одно из двух значений: либо true (истина), либо false (ложь), соответственно, оно может быть либо истинным, либо ложным.

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

Составной оператор

Операторные скобки и составной оператор в Паскале:

if логическое выражение then begin оператор1; оператор2; end else begin оператор1; оператор2; end;

Перевод с английского оператора условия облегчит понимание его использования:

IFTHENELSE
ЕСЛИТОИНАЧЕ

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале
В условии (в логическом выражении) используются операторы отношения.
Рассмотрим список операторов отношения Паскаля:

Подробно разобраться в работе условного оператора в Паскале можно, просмотрев видеоурок:

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

begin var x:=readReal(‘введите х’); var y: real; if x>0 then y:=ln(x) else y:=exp(x); writeln (‘y=’, y:6:2) end.

Таким образом, использование такой записи в pascal практически позволяет выполнить округление до сотых, тысячных и т.п.

[Название файла: L2task0.pas ]

[Название файла: L2task1.pas ]

[Название файла: L2task2.pas ]

Логические операции в Паскале (в логическом выражении)

Когда необходимо использовать двойное условие в Pascal, то понадобятся логические операции.

var n:integer; begin n:=6; if (n>5) and (n 7) or (n 7) xor (n 7) then writeln(‘истина’); end.

var a,b: integer; begin write(‘Введите A: ‘); read(a); b := a mod 2; if b>0 then writeln(‘true’) else writeln (‘false’) end.

var a,b: integer; begin write(‘Введите A: ‘); read(a); b := a mod 2; writeln(b>0); end.

[Название файла: L2task3.pas ]

[Название файла: L2task4.pas ]

Построение блок-схем по коду Паскаль

Существуют управляющие структуры трех типов:

Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскалеследованиеЧто такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскалеветвлениеЧто такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскалеповторение или цикл

Две из трех представленных структур блок-схемы мы уже можем перевести в код Pascal.

Результат:
Что такое операторные скобки в паскале. Смотреть фото Что такое операторные скобки в паскале. Смотреть картинку Что такое операторные скобки в паскале. Картинка про Что такое операторные скобки в паскале. Фото Что такое операторные скобки в паскале

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *