Pascal-Паскаль
Программирование. Условные операторы Pascal-Паскаль
Программирование. Условные операторы Pascal-Паскаль
Условные операторы Pascal-Паскаль
Условные операторы позволяют выбирать для выполнения те или иные части программы в зависимости от некоторых условий. Если, например, в программе используются вещественные переменные x и z, и на каком-то этапе решения задачи требуется вычислить z=max(x, y), то желаемый результат получается в результате выполнения либо оператора присваивания z:=x, либо оператора присваивания z:=y. Поскольку значения переменных x и y заранее неизвестны, а определяются в процессе вычислений, то в программе необходимо предусмотреть оба эти оператора присваивания. Однако на самом деле должен выполниться один из них. Поэтому в программе должно содержаться указание о том, в каком случае надо выбирать для исполнения тот или иной оператор присваивания.
Это указание естественно сформулировать с использованием отношения x>y. Если это отношение при текущих значениях x и y справедливо (принимает значение true), то для исполнения должен выбираться оператор z:=x; в противном случае для исполнения должен выбираться оператор z:=y (при x=y безразлично, какой оператор выполнять, так что выполнение оператора z:=y в этом случае даст правильный результат).
Для задания подобного рода разветвляющихся вычислительных процессов в языках программирования существуют условные операторы. Рассмотрим полный условный оператор Паскаля:
Здесь if (если), then (то) и else (иначе) являются служебными словами, В – логическое выражение, а S1 и S2 – операторы.
Выполнение такого условного оператора в Паскале сводится к выполнению одного из входящих в него операторов S1 или S2: если заданное в операторе условие выполняется (логическое выражение В принимает значение true), то выполняется оператор S1, в противном случае выполняется оператор S2.
Алгоритм решения упомянутой выше задачи вычисления z= max( x, y) можно задать в виде условного оператора Паскаля
При формулировании алгоритмов весьма типичной является такая ситуация, когда на определенном этапе вычислительного процесса какие-либо действия надо выполнить только при выполнении некоторого условия, а если это условие не выполняется, то на данном этапе вообще не нужно выполнять никаких действий. Простейшим примером такой ситуации является замена текущего значения переменной х на абсолютную величину этого значения: если x =0, то текущее значение х должно остаться без изменений, т.е. на данном этапе вообще не надо выполнять каких-либо действий.
В подобных ситуациях удобна сокращенная форма записи условного оператора в Паскале:
Правило выполнения сокращенного условного оператора Паскаля достаточно очевидно: если значение логического выражения В есть true, то выполняется оператор S; в противном случае никаких иных действий не производится.
В языке программирования Паскаль в условном операторе между then и else, а также после else по синтаксису может стоять только один оператор. Если же при выполнении (или невыполнении) заданного условия надо выполнить некоторую последовательность действий, то их надо объединить в единый, составной оператор, т.е. заключить эту последовательность действий в операторные скобки begin. end (это важно!). Если, например, при x of
[else ] end
Здесь case, of, else, end – зарезервированные слова (случай, из, иначе, конец);
— произвольные операторы Паскаля.
Например, составим программу, которая по номеру дня недели выводит на экран его название:
Пример программы с использованием Case of
Следует помнить, что все константы из списка выбора должны быть различны.
Любому из операторов списка выбора может предшествовать не одна, а несколько констант выбора, разделенных запятыми. Например, следующая программа при вводе одного из символов ‘ y’ или ‘ Y’ выведет на экран «Да», а при вводе ‘ n’ или ‘ N’ – слово «Нет».
Пример программы с использованием Case of с несколькими переменными
Очевидно, что рассмотренные выше программы можно записать с помощью вложенных или последовательно расположенных условных операторов, но в подобных задачах использование оператора выбора является более простым. Основное отличие условного оператора от оператора выбора состоит в том, что в условном операторе условия проверяются одно за другим, а в операторе выбора значение ключа выбора непосредственно определяет одну из возможностей.
Программирование
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту
Как в паскале написать если
Условный оператор If
Что же это за зверь такой – условный оператор? И зачем он вообще нужен? Без него же мы как-то решили первую задачку про периметр прямоугольника. Да, если бы все задачи, которые стояли перед программистами были такого плана, как задача про периметр, то он и не понадобился бы вовсе. Однако, на деле не все так просто.
Условный оператор If позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Поэтому оператор If выступает в качестве средства ветвления вычислительного процесса. Приведу общую структуру записи условного оператора, а затем разберем на примере его работу.
Часть else оператора If может быть опущена за ненадобностью. Тогда, если значение условия = true, то оператор 1 выполняется, в противном случае условный оператор просто пропускается и программа идет дальше.
Наверно, не буду вас сейчас мучить вложенными условными операторами (это когда в условии одного оператора if находится другой оператор if, а в его условии может находится еще один, и т.д). Разберем это на следующем занятии, а пока решим задачку. Задачку я возьму из электронного задачника М.Э. Абрамяна. Кстати, этот задачник идет вместе с программой Pascal ABC, которую ты можешь скачать с этого сайта тут, если еще не сделал этого.
Условие задачи: «Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число». У кого какие мысли по поводу решения этой задачи?
Поехали! Для начала запишем название программы и объявим переменную, нам потребуется только одна переменная целого типа:
Собственно и вся задача))
На этом все. Жду ваших вопросов, кому что не понятно. Контакты для связи со мной находятся здесь. Удачи и до встречи на следующем уроке!
Pascal. Условный оператор IF-ELSE.
Давайте рассмотрим работу с условиями в psacal. Представьте что у Вас есть два числа, и Вам нужно сравнить их на равность, то есть равно ли первое число второму. Для решения этой проблемы воспользуемся оператором условия if.
Мы сначала пишем if(если), после этого пишем наше условие, потом пишем then(то), и выполняемый код если условие пройдёт успешно. Так и сделаем:
А теперь давайте всё разберём построчно:
Название программы IF_ELSE;
подключённые модули CRT;
описание переменных: num1, num2: тип переменных Integer;
очистка экрана от лишнего clrscr;
вывод на экран сообщения write(»);
считывание данных с клавиатуры, и запись их в переменные readln(num1, num2);
если if первое число равно второму (num1 = num2) то then
вывод сообщения на экран writeln(»);
считывание любого типа данных, для временной остановки программы.
Теперь разберём саму конструкцию условия:
Теперь давайте рассмотрим пример если нам нужно вывести сообщение о том что они не равны, или равны. Как бы добавим в условие оператор else(иначе), он будет срабатывать тогда, когда верно условие будет ложно:
Если Вы уже заметили, то в после оператора if мы написали вывод строки на экран, но после команды writeln(») не поставили точку запятой. Просто в условиях подобного рода — где есть оператор else перед else нельзя закрывать строку точкой с запятой, иначе программа выдаст ошибку. Теперь рассмотрим отдельно условие с операторами if и else:
Как в паскале написать если
В Паскале разветвляющиеся алгоритмы позволяет реализовать условный оператор. Условный оператор позволяет проверить некоторое логическое выражение и в зависимости от результатов проверки выполнить то или иное действие.
Структура условного оператора в полной форме имеет следующий вид:
IF (логическое выражение) THEN (оператор1) ELSE (оператор2);
Блок-схема условного оператора в полной форме:
В условном операторе после then, а также после else по синтаксису может стоять только один оператор. Если же при выполнении (или невыполнении)логического выражения надо выполнить не одно действие, а несколько, то их надо объединить в единый, составной оператор, т.е. заключить эту последовательность действий в операторные скобки.
Составной оператор имеет вид:
Перед служебным словом Else символ «;» не ставится. Структура условного оператора в неполной форме имеет следующий вид: IF (условие) THEN (оператор); Пример: If A then If A then begin Пример 1:
| Программный код на языке Pascal: var n: integer; begin write (‘ Введите целое число : ‘); readln (n); //ввод переменной if n mod 2 = 0 then //определяется четность write (‘Оно четное’) //если выполняется условие четности выводится сообщение «Оно четное» else write (‘Оно нечетное’); //если не выполняется условие четности выводится сообщение «Оно нечетное» readln end |
Пример 2:
Даны два числа, найти наибольшее.
Упражнения «Программирование разветвляющихся алгоритмов»
1. Записать условие, которое является истинным, когда
· каждое из чисел X и Y нечетное;
· только одно из чисел X и Y меньше 20;
· хотя бы одно из чисел X и Y равно нулю;
2. Записать условие, которое является истинным, когда
· каждое из чисел А и В больше 100;
· только одно из чисел А и В четное;
· хотя бы одно из чисел А и В положительно;
· каждое из чисел А, В, С кратно трем;
· только одно из чисел А, В и С меньше 50;
· хотя бы одно из чисел А, В, С отрицательно.
3. Записать условие, которое является истинным, когда
1. целое А кратно двум или трем;
2. целое А не кратно трем и оканчивается нулем.
4. Записать условие, которое является истинным, когда
1. целое N кратно пяти или семи;
2. целое N кратно четырем и не оканчивается нулем.
5. Определите значение переменной С после выполнения фрагмента программы:
if А>В then С:=А+В else С:=А-В;
а) 100 b) 5 с) 105 d)95
6. Укажите правильную запись на языке Паскаль выражения, записанного на русском языке Х>=0 и Х>=3,25 и У
Pascal: Занятие №2. Часть 1: Условный оператор в Паскале (If)
Условный оператор в Паскале
До рассмотрения данной темы в основном использовались линейные алгоритмы в Паскале, характерные для весьма простых задач, когда действия (операторы) выполняются последовательно, одно за другим. Более сложные алгоритмы предусматривают использование конструкция ветвления.
Блок-схема условного оператора:
Условный оператор в Паскале имеет следующий синтаксис:
if условие then оператор;
Полный вариант:
if условие then оператор else оператор;
Условный оператор в Паскале — if — служит для организации хода задачи таким образом, при котором изменяется последовательность выполнения операторов в зависимости от какого-либо логического условия. Логическое условие может принимать одно из двух значений: либо true (истина), либо false (ложь), соответственно, оно может быть либо истинным, либо ложным.
Составной оператор
Операторные скобки и составной оператор в Паскале:
if логическое выражение then begin оператор1; оператор2; end else begin оператор1; оператор2; end;
Перевод с английского оператора условия облегчит понимание его использования:
IF | THEN | ELSE |
ЕСЛИ | ТО | ИНАЧЕ |
В условии (в логическом выражении) используются операторы отношения.
Рассмотрим список операторов отношения Паскаля:
Подробно разобраться в работе условного оператора в Паскале можно, просмотрев видеоурок:
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.
Результат: