Как пишется иначе в паскале

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 – зарезервированные слова (случай, из, иначе, конец);

  • – выражение порядкового типа;
  • – одна или более конструкций вида:
    • : ;
  • – константа того же типа, что и выражение
    • ;

– произвольные операторы Паскаля.

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

Например, составим программу, которая по номеру дня недели выводит на экран его название:

Пример программы с использованием Case of

Следует помнить, что все константы из списка выбора должны быть различны.

Любому из операторов списка выбора может предшествовать не одна, а несколько констант выбора, разделенных запятыми. Например, следующая программа при вводе одного из символов ‘ y’ или ‘ Y’ выведет на экран «Да», а при вводе ‘ n’ или ‘ N’ – слово «Нет».

Пример программы с использованием Case of с несколькими переменными

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

Программирование

Исходники Pascal (127)

Справочник

Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту

Источник статьи: http://www.pascal.helpov.net/index/conditional_operators_pascal_programming

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

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

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

Блок-схема условного оператора:

Условный оператор в Паскале имеет следующий синтаксис:

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

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

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

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

Если при истинном условии необходимо выполнять несколько операторов, то их по правилам языка Pascal необходимо заключать в блок, начинающийся со служебного слова begin и заканчивающегося служебным словом end . Такой блок принято называть операторными скобками, а данную конструкцию — составным оператором:

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

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

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

IF THEN ELSE
ЕСЛИ ТО ИНАЧЕ


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

  • больше >
  • меньше
  • больше или равно в Pascal >=
  • меньше либо равно в Pascal
  • сравнение в Pascal =
  • не равно в Pascal <>

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

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

Обратите внимание на то, как в данном примере выводится y . При выводе переменных типа real в pascal, можно использовать так называемый форматированный вывод, или запись с двумя двоеточиями:
y:6:2
– цифра после первого двоеточия ( 6 ) указывает на то, сколько знаков будет занимать число при выводе на экран
– цифра после второго двоеточия ( 2 ) указывает на то, сколько знаков после запятой вещественного числа будет выводиться

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

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

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

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

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

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

  • Логическая операция AND (И), поставленная между двумя условиями, говорит о том, что должны выполняться сразу оба эти условия (должны быть истинными). Логический смысл операции – “конъюнкция”.
  • Поставленный между двумя условиями, знак OR (ИЛИ) говорит о том, что достаточно, если будет выполняться хотя бы одно из них (одно из двух условий истинно). Логический смысл операции – “дизъюнкция”.
  • На языке Паскаль XOR – знак логической операции, имеющий смысл “строгая дизъюнкция” и указывающий на то, что необходимо, чтобы одно из двух условий выполнялось (истинно), а другое – не выполнялось (ложно).
  • Логическая операция NOT перед логическим выражением или переменной имеет смысл “отрицание” или “инверсия” и указывает на то, что если данная переменная или выражение истинны, то их отрицание — ложь и наоборот.

Таблица истинности, содержащая все возможные комбинации операндов:

A B not A A or B A and B A xor B
False False True False False False
False True True True False True
True False False True False True
True True False True True False

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.

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

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

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

Выполнить: Даны координаты точки (x,y) на координатной плоскости ( ≠ 0, ≠ 0). Вывести номер четверти:

var (x,y) := ReadInteger2; var quarter: integer; Assert((x<>0) and (y<>0), ‘некорректный ввод’); // True if x>0 then if y>0 then quarter := 1 else quarter := 4 else if y>0 then quarter := 2 else quarter := 3;

Источник статьи: http://labs-org.ru/pascal-2/

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

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

Чаще всего в качестве условного оператора в языках программирования используется конструкция if-else или ее сокращенный вариант if. Также существует оператор выбора case, который имеет более специфичное применение.

Оператор if-else

Когда выполнение основной ветки программы доходит до условного оператора if-else , то в зависимости от результата логического выражения в его заголовке выполняются разные блоки кода. Если логическое выражение вернуло true , то выполняется один блок (в Паскале начинается со слова then ), если false – то другой (начинается со слова else ). После выполнения одного из вложенных блоков кода, ход программы возвращается в основную ветку. Другой вложенный блок не выполняется.

Например, программа должна определять, ввел пользователь четное или нечетное число, и выводить на экран сообщение. Тогда программный код на языке Pascal может быть таким:

Бывают неполные формы условных операторов. В таком случае вложенный в if блок кода выполняется только, когда логическое выражение в заголовке возвращает true . В случае false выполнение программы сразу передается в основной блок. Понятно, что ветка else в таком случае отсутствует.

В примере ниже, если переменная имеет значение меньше нуля, то ее значение изменяется (находится модуль числа). Если же значение переменной изначально больше нуля, то блок кода при операторе if вообще не выполняется, т.к. не соблюдено условие ( n ).

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

Непосредственно после then может стоять только один оператор. При необходимости выполнения нескольких операторов они должны быть заключены в операторные скобки begin-end . Пример программы, которая меняет значения переменных местами, только если эти значения различны. Блок if содержит четыре выражения, поэтому заключен в begin-end .

Допустимо вложение одного оператора if (или if-else ) в другой. При этом следует соблюдать осторожность, так как бывает трудно определить, какому if (внешнему или внутреннему) принадлежит ветка else . Рекомендуют использовать вложенную конструкцию if , только в ветке else . К тому же в языке Паскаль действует следующее правило: каждому then соответствует ближайшее else , не задействованное при установлении соответствия с другим then . Глубина вложенности операторов if может быть сколь угодно большой, но разобраться в таком коде будет очень сложно.

Оператор case (оператор выбора)

Кроме оператора if в языке программирования Паскаль предусмотрен так называемый переключатель case . Его можно трактовать как некий вопрос, имеющий большое число ответов (а не только два, как это имеет место в операторе if-else ). Однако в отличие от if, case имеет ряд принципиальных ограничений. Его формат следующий:

В заголовке оператора case вместо логического выражения фигурирует переменная, которую называют селектором. До этого в программе ей присваивается какое-либо значение. Эта переменная может иметь только перечисляемый тип (например, она не может быть вещественного типа). По ходу выполнения оператора case , значение переменной-селектора сравнивается с различными описанными в нем альтернативами (метками-значениями). Как только совпадение будет найдено, то выполняется блок кода при данной метке и происходит выход в основную ветку программы. Значения-метки являются константами, которые может принимать селектор. Их тип и тип селектора должны быть совместимы по присваиванию.

Если совпадений не будет, то выполняется блок else . Если блок else отсутствует (он является не обязательным), то никакой блок кода в операторе case не выполняется.

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

  • селектор должен иметь какой-либо порядковый тип;
  • каждая альтернатива должна быть константой, диапазоном, списком диапазонов, но не переменной или выражением.

Источник статьи: http://pas1.ru/condition

Язык паскаль онлайн

Условия if then else в Паскаль – Pascal Разветвление

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

Так что следует уделить этой теме особое внимание , учитываю то , что она проста и легка для понимания. Рекомендую к прочтению статью о циклах (For, While, Repeat).

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

Рассмотрим эту конструкцию на примере .Например нам нужно узнать больше ли первое число второго . Проще говоря ввести два числа «а» и «b» и если а больше б , то вывести «а больше».
Делается это проще простого.

If ( если )

Условие записывается в скобках между словами if ( если ) и then ( тогда ).
В нашем случае нам понадобится такое условие if ( a > b ) then . Если условие «а больше б» возвращает истинный результат , то после слова then выполняется первая команда . Например :

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

Else ( иначе )

Допустим условие задачи такое — Ввести два числа с клавиатуры «a» и «b» , если «а» больше вывести число «а» , иначе вывести число «b».

Блок else ( иначе ) записывается после тела истинного значения . Запомните перед else ;никогда не ставится !

Если же в теле ложного значения мы хотим выполнить несколько команд ( больше одной ) , то в аналогии с телом истинного значения , эти команды заключаются в блок begin end

Сложные условия :

В аналогии с простыми существуют и сложные условия . Пример простого условия ( a = b ) . Пример сложного ( a > b ) and ( a <> b ). Дословно — если «а» больше «б» и «а» неравно «б» тогда … В данном случае блок then будет выполнятся тогда и только тогда , когда обе скобки возвращают истинный результат . Если хоть одна из скобок возвращает ложный , то будет выполнен блок else ( если он есть ). Разберем пример ещё одного условия ( сложного ). if ( (a > b) and ( a <> b ) ) or ( a = c ) then в этом случае блок then будет выполнятся в том случае , если «а» больше «б» и «а» неравно «б» или «а» равно «с».

Вложенные условия :

В одном условии могут находится ещё несколько условий , а в них ещё столько же условий. Проще говоря условия могут вкладываться в другие условия. Для того , чтобы вам было более понятно приведем такой пример. Например у нас есть массив из 10 элементов , заполненный случайными числами ,а нам нужно найти отрицательное число и вывести его на экран если индекс отрицательного элемента будет четным. Код данной программы выглядит вот так :

Однако данные вложенные условия можно было заменить одним : if ( a[i] Вывод :

Выше на картинке показано как именно работают условия в языке программирования pascal. Если условие , которое указано в скобках , в данном случае это a > b , истинно , то будет выполнен код по ветки истинности. Если условие ложное , то будет выполнен код по ветке ложности.

  • Условие записывается в скобках между словами if ( если ) и then ( тогда ).
  • Если условие истинное , например ( 4 > 3 ) , то выполняется блок then , если условие ложное ( 3 > 4 ) выполняется блок else.
  • Если мы хотим выполнить больше одной команды в условии их следует заключать в блок begin end.
  • Перед else точка с запятой не ставится !

Разветвления

Разветвления — второй из типичных разновидностей алгоритмов. Разветвления начинается с определенного условия. Если это условие выполняется, происходит одно действие (или набор действий); если нет — другая. Примером такого алгоритма может служить, например, общение контроллера с пассажиром автобуса: если пассажир предъявил билет, надо поблагодарить пассажиру за оплаченный проезд, если нет — оштрафовать. Для программирования разветвления в языке Паскаль используется одна из конструкций if — then и if — then — else (англ. If — «если», then — «то», else — «иначе»).

Источник статьи: http://mypascal.ru/blog/uslovija-if-then-else-v-paskal/

Как пишется иначе в паскале

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

Алгоритмическая конструкция УСЛОВИЕ используется в тех случаях, когда перед нами стоит выбор: сделать так или иначе.

Неполное условие

Блок-схема неполного условия выглядит следующим образом:

ЕСЛИ УСЛОВИЕ ИСТИННО, ТО ВЫПОЛНЯЕТСЯ ДЕЙСТВИЕ , ИНАЧЕ НИЧЕГО НЕ ПРОИСХОДИТ

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

IF условие THEN действие;

Если условие, стоящее после IF истинно, то выполняется действие, стоящее после слова THEN.

Условие — это выражение, которое может быть либо истинным, либо ложным. Условие обязательно содержит логические операторы , =, =, <> (не равно).

Если введенное значение переменной a равно 7, то на экране мы увидим слово Привет! Если не равно — то на экран ничего выводится не будет.

Рассмотрим другой пример:

Что мы увидим на экране, введя число 7? Увидим:

Что мы увидим на экране, введя число 10?

Почему так? Почему До встречи выводится на экран в любом случае? Команда

не относится к конструкции If-Then

Как сделать так, чтобы оба действия относились к конструкции If-Then?

Необходимо заключить эти действия в так называемые операторные скобки: begin… end;

end.
Теперь, если мы введем число 10, то на экране ничего не увидим.

Составное (сложное) условие

Иногда приходится использовать сложное условие. Для его составления используются логические союзы: and или or.

  • Если мы используем and, то составное условие будет истинно, когда все простые условия истинны.
  • Если мы используем or, то составное условие будет истинно, когда хотя бы одно простое условие будет истинно.

a>7 и a 17.

Используя конструкцию If-Then, найти максимальное среди трех введенных чисел.

Полное условие

Блок-схема полного условия выглядит так:

IF условие THEN действие_1 ELSE действие_2;

  • Если условие истинно, то выполняется действие, стоящее после слова Then.
  • Если условие ложно, то выполняется действие, стоящее после слова Else.

Если действий, которые выполняются, если условие истинно или ложно несколько — используются операторные скобки .

(перед else точка с запятой не ставится)

Задачи для самостоятельного выполнения:

  1. Сумма покупки составляет а рублей. Если а больше 1000 рублей, то предоставляется скидка 15%. Вывести на экран сумму покупки с учетом скидки либо сообщение о том, что скидка не предоставляется.
  2. Известны площади круга и квадрата. Определить:
    • уместится ли круг в квадрате
    • уместится ли квадрат в круге
  3. Определить, является ли число а делителем числа b
  4. Проверить, принадлежит ли число введенное с клавиатуры, интервалу (-5;3).
  5. Дано двузначное число. Определить:
    • входит ли в него цифра 3
    • входит ли в него цифра а
  6. Определить, является ли треугольник со сторонами a, b, c равнобедренным
  7. Даны три различных числа. Определить, какое из них (первое, второе или третье)
    • самое большое
    • самое маленькое
    • является средним

Источник статьи: http://krivaksin.ru/uslovnyiy-operator-if-then-else-paskal-dlya-nachinayushhih/

Урок 6. Условный оператор if

Урок из серии: «Язык программирования Паскаль»

Один из важнейших операторов Паскаля – условный оператор. Он позволяет изменять порядок выполнения операторов в зависимости от некоторого условия, представляющего собой логическое выражение типа Boolean. Если значение равно True, то выполняется одна группа операторов, если False, то другая группа операторов или не выполняется ничего.

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

На этом уроке рассмотрим оператор If.

Условный оператор If (оператор ветвления)

Полная формы условного оператора называется If-then-else, имеет вид:

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

Слова if (если) и Then (то) – зарезервированные.

Замечание. Перед ключевым словом else (иначе) точка с запятой не ставится, она ставиться после всего оператора If.

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

На рисунке показана блок-схема полной формы оператора.

Алгоритм выполнения полного условного оператора:

  1. Проверяется значение логического выражения, записанного в условии после слова If
  2. Если условие истинно (значение выражения условие равно True), то выполняется оператор 1, указанный после слова Then
  3. Если условие ложно, то выполняется оператор 2, записанный после слова Else.

Неполная форма условного оператора называется if-then, имеет вид:

Если в качестве оператора должна выполняться серия операторов, то они объединяются в операторные скобки Begin-End.

В неполном ветвлении ветвь Else отсутствует.
На рисунке показана блок схема оператора if-then.

Алгоритм выполнения неполного условного оператора

  1. Проверяется значение логического выражения, записанного в условии после слова If
  2. Если условие истинно (значение выражения условие равно True), то выполняется операторы, указанный после слова Then
  3. Если условие ложно, то ничего делать не надо. Происходит переход к следующему оператору.

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

Применение условного оператора if рассмотрим на примерах.

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

В этом примере нужно произвести выбор одного из двух вариантов, для этого используется оператор ifthenelse.

Пример 2. Даны три отрезка. Можно ли из них построить треугольник?

Решение. Для любого треугольника сумма его двух сторон должна быть больше третьей стороны (неравенство треугольника). Если a, b, c – стороны предполагаемого треугольника, то нужно сравнить длину каждого отрезка с суммой двух других. Если хотя бы в одном случае отрезок окажется больше суммы двух других, то треугольник из таких отрезков не построить.

Для решения этой задачи используется оператор ifthenelse со сложным условием.

Задачи для самостоятельного выполнения

  1. Найти наибольшее из трех данных чисел.
  2. Запишите условный оператор, в котором значение переменной вычисляется по формуле: a + b, если a — нечетное и a*b, если a — четное.
  3. Вывести на экран номер четверти, которой принадлежит точка с координатами (x, y), при условии, что x и y отличны от 0.
  4. После выполнения операторов
    a := 0;
    If a<>0 Then; a := 2
    значение переменной равно двум. Объясните почему.
  5. Если целое число M делится нацело на целое число N, то вывести на экран частное от деления, в противном случае — сообщение »M на N нацело не делится».

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

Источник статьи: http://gospodaretsva.com/urok-6-uslovnye-operatory.html

Уроки Паскаль № 4 Условные операторы

Здравствуйте, сегодня мы поговорим про условные операторы. В статье мы обсудим тему условий в программировании.

Урок № 4 Условные операторы

Для начала наберем заготовку с двумя переменными a и b типа integer. Зададим им значение a := 0;
b := 7;. Далее идет оператор вывода writeln(‘a =’, a); writeln(‘b =’, b);

Это заготовка поможет нам в этом уроке. Мы подошли к такой теме как условные операторы, но прежде чем её изучать нужно понимать, что такое условный алгоритм?

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

Пишется if затем в круглых скобках (условие) если их несколько или это условие одно пишется условие. Далее пишется then и действие которое нам необходимо выполнить если условие, записанное в скобках, выполняется. Надо понимать, что такое истинное и ложное условие?

if (условие) then
действие;

Истинное условие например для нашей программы такое b > 0 . Условие истинно в том случае если по логике оно верное или это правда.

В английском языке существуют 2 слова true правда и false лож. Если в дальнейшем вы будете встречать в различных языках программирования они соответствуют этим значениям.

Также есть переменная типа bool: boolen; она может принимать только два значения true правда и false лож. Если мы переменную bool просто поставим в условие. Выглядеть это будет так.

Это действие будет выполняться всегда потому что у нас стоит истина в переменной bool. Если только мы не поменяем значение bool:= false;, то действие выполняться не будет.

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

Запишем условие if a > 0 then действие; — это простейший вид условия, если, а больше 0 т. е. это истина то выполняется действие. Дальше идет выполнение программы. Если оно не истинно, то действие не выполняется, и мы движемся дальше по программе. Есть более усложненная версия этого оператора.

if a > 0 then
действие один
else
действие два;

Это значит, что если условие истинно, то выполняем действие.

Если условие ложно, то выполняется действие после ключевого слова else (иначе) .

Перевод на русский. Если, а больше нуля истина, то выполняй действие один, иначе действие два.

if then else Если то иначе.

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

Если нам нужно перечислить несколько действий, то нужно воспользоваться такой конструкцией.

if a > 0 then
begin
действие1;
действие2;
end
else
действие3;

begin end она используется не только для обозначения начала и конца программы, но и для определения каких-то блоков в коде. Здесь есть тонкость после end мы ставили точку, перед else точка не ставиться. Внутри блока точки с запятой должны быть между действиями. Внутри блока begin end у нас своя маленькая программа, которая выполняется только в случае условие истинно и если условие ложно, то выполняется после else .

Если после else мы пишем begin end то после end должна стоять точка с запятой. Потому что мы закончили блок.

Не забываем про табуляцию она позволяет понимать логику кода, то что вложено в какой блок лучше видно, чем без табуляции. Если в будущем вы планируете быть программистом, ну конечно Паскаль для этого будет недостаточно. Когда вы будете писать свой код, скорей всего будете работать в компании, где вы будете не один такой программист. Удобно, когда несколько человек используют одинаковый способ вывода кода, вам легко будет разбираться в чужом коде, другому человеку будет легко разбираться в вашем коде. Особенно в крупных компаниях код пишется несколькими отделами в каждом отделе работает куча человек и без стандартизации такой подобной, там просто не получиться работать, будет большая трата времени на разбор кода. Так что привыкайте писать грамотно и красиво.

Давайте придумаем какие-то действия. Если, а > 0 мы будем присваивать значения переменным определенные, выводить и смотреть что у нас срабатывает.

if a > 0 then
begin
a := 78;
b := 22;
end
else
begin
a := 33;
b := 39;
end;

Если, а больше 0 то переменным, а и b присваивается значение 78 и 22 соответственно. Если это условие не выполняется то переменным, а и b присваивается значение 33 и 39.

По логике видно, что у нас а больше 0 то естественно выводиться будет этот блок.

begin
a := 78;
b := 22;
end

Этот блок будет игнорироваться.

begin
a := 33;
b := 39;
end;

Наша программа будет выглядеть так.

Как и планировали видим значение 78 и 22.

Теперь присвоим переменной, а значение 0 и посмотрим что получится.

На этом у меня все. До встречи в следующем уроке в нем мы поговорим про математические функции.

Источник статьи: http://murnik.ru/uroki-paskal-4-uslovnyie-operatoryi.html

Как пишется иначе в паскале

Главное меню

Популярные статьи

Условный оператор if . then . else

Цель: дать понятие об условном операторе, блок-схемах, изображающих такие операторы; ввести понятие и формах записи вещественного типа real. Учить на частных примерах составлять блок-схемы и программы; вводить и выполнять программы, используя компиляторы BPW или Turbo Pascal.

Использовать программы: Barland Pascal for Windows (BPW) или Barland Pascal, или Turbo Pascal

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

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

Человек, принимая какое-то решение, может сомневаться, взвешивать, прикидывать, машина принимает решения категорически: либо – да, либо – нет и никаких сомнений.
Для реализации принимаемых решений на языке Паскаль могут быть использованы операторы if (если), then (тогда) и else (иначе).
После оператора if записывается условие, а после операторов then и else – команды, которые необходимо выполнить.

2. Блок-схемы, изображающие условные операторы

Вы уже знаете, что составление программы можно изображать геометрическими фигурами – блоками, в результате чего образуется схема программы. Такая конструкция называется блок-схемой.
Какой геометрической фигурой принято обозначать условие? Посмотрите на ниже приведенную конструкцию и вы увидите, что условие изображается ромбом (см. рис. 1).


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

Блок-схема

Рис. 6
Программа

Program Problem2; < Увеличения меньшего из двух целых чисел вдвое >
uses WinCrt;
var
a, b, c : integer;
begin
write(“Введите первое целое число “); readln(a);
write(“Введите второе целое число “); readln(b);
if a = 0) and (y >= 0).

Program Problem7;
uses WinCrt;
var
x, y, R : real;
begin
write(“Введите координаты точки “); readln(x, y);
write(“Введите радиус окружности “); readln(R);
if (x*x + y*y = 0) and (y >= 0)
then writeln(“Да”)
else writeln(“Нет”)
end.

Пример 8. Составьте программы определения большего из трех действительных чисел a, b и c.


Рис. 13
Задание 4

1. Используя блок-схему составить и выполнить программу. Изменить программу так, чтобы в случае равных чисел, она выдавала “Числа равны”.
2. Даны три числа a, b, c. Написать программу, в результате которой числа удвоятся, если и числа будут заменены на их абсолютные величины в прочих случаях.

8. Вычисление значений функции

Пример 9. Вычислить значение функции по формуле: .

Program Problem9;
uses WinCrt;
var
a, b, c, y : real;
begin
write(“Введите значения a, b, c “); readln(a, b, c);
y := a*b + c*sin(a*b);
writeln(“Значение функции равно y = “, y:6:6)
end.

Пример 10. Составить программу вычисления значения функции:

Замечание. Надо вспомнить из математики, что если обозначить , тогда логарифмируя по основанию e обе части равенства, получим: , , т. е.

Program Problem10;
uses WinCrt;
var
x, y : real;
begin
write(“Введите значение аргумента x = “); readln(x);
if x 0) and (x = 1 then y := 1/(2*sqrt(x))
else y := 1/(4*exp(ln(abs(x))/4));
writeln(“Значение функции равно y = “, y:6:6)
end.

Пример 12. Составить программу для вычисления значений функции, заданной графиком:

Program Problem12;
uses WinCrt;
var
x, y : real;
begin
write(“Введите значение аргумента x = “); readln(x);
if abs(x)>= 3 then y := 3
else y := abs(x);
writeln(“Значение функции равно y = “, y:6:6)
end.

1. Вычислить значение функции по формуле:
2. Точка плоскости задана своими координатами x, y. Написать программу, при выполнении которой определяется, принадлежит ли данная точка плоской фигуре, являющейся кольцом с центром в точке (0, 0), с внутренним радиусом 3 и с наружным радиусом 4.

3. Написать программу, при выполнении которой выводится 1, если данное число x принадлежит отрезку [a, b], где a и b заданные числа, и выводится 0 в противоположной ситуации.
4. Даны положительные числа x, y, z. Выяснить, существует ли треугольник с длинами сторон x, y, z?
5. Определить, верно ли, что при делении целого неотрицательного числа a на целое положительное число b получается заданный остаток r или s.
6. Составить программу решения биквадратного уравнения

Автор: Тишин Владимир Иванович

Родился в семье художника в Петербурге (по другим сведениям, в Полтаве). В 1913 г. после окончания гимназии поступил в Петербургский университет на юридический факультет. Не закончив курса, он отправился на фронт начавшейся первой мировой войны добровольцем; участвовал в боях, отличаясь храбростью и отвагой, за что удостоен пяти орденов; командовал батальоном; был трижды ранен, отравлен .

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

Единицы измерения времени Современные единицы измерения времени основаны на периодах обращения Земли вокруг своей оси и вокруг Солнца, а также обращения Луны вокруг Земли. Такой выбор единиц обусловлен как историческими, так и практическими соображениями: необходимостью согласовывать деятельность людей со сменой дня и ночи или сезонов; смена фаз Луны влияет на высоту .

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

Источник статьи: http://for-schoolboy.ru/Uslovnyiy-operator-if-then-else-545.html

Как пишется иначе в паскале

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

Всем привет, давно я не писал статей для сайта – все времени не было. Ну ничего, восполним упущенное. Усаживайся поудобнее, сегодня мы будем изучать условный оператор If .

Что же это за зверь такой – условный оператор? И зачем он вообще нужен? Без него же мы как-то решили первую задачку про периметр прямоугольника. Да, если бы все задачи, которые стояли перед программистами были такого плана, как задача про периметр, то он и не понадобился бы вовсе. Однако, на деле не все так просто.

Условный оператор If позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Поэтому оператор If выступает в качестве средства ветвления вычислительного процесса. Приведу общую структуру записи условного оператора, а затем разберем на примере его работу.

В общем виде условный оператор в программе выглядит так: где
If, then, else – зарезервированные слова (в переводе на русиш – если, то, иначе);
– произвольное выражение логического типа. Если оно дает значение true, оператор 1 выполняется, в противном случае выполняется оператор 2 (если он существует);
, – любые операторы языка Pascal

    Работает вся эта штука по следующему принципу:
  1. Вычисляется условное выражение
  2. Если значение условия = true, то выполняется оператор 1, а оператор 2 пропускается.
  3. Если значение условия = false, то оператор 1 пропускается, а выполняется оператор 2.

Часть else оператора If может быть опущена за ненадобностью. Тогда, если значение условия = true, то оператор 1 выполняется, в противном случае условный оператор просто пропускается и программа идет дальше.

Наверно, не буду вас сейчас мучить вложенными условными операторами (это когда в условии одного оператора if находится другой оператор if, а в его условии может находится еще один, и т.д). Разберем это на следующем занятии, а пока решим задачку. Задачку я возьму из электронного задачника М.Э. Абрамяна. Кстати, этот задачник идет вместе с программой Pascal ABC, которую ты можешь скачать с этого сайта тут, если еще не сделал этого.

Условие задачи: «Дано целое число. Если оно является положительным, то прибавить к нему 1; в противном случае не изменять его. Вывести полученное число». У кого какие мысли по поводу решения этой задачи?

    В общем план действий такой:
  1. Объявляем целочисленную переменную (типа integer);
  2. Присваиваем ей значение;
  3. Применяем условный оператор If, в условии которого будем проверять положительная ли переменная;
  4. Если наша переменная положительная, то прибавим к ней 1, если нет, то не будем ее трогать;
  5. Выведем переменную на экран.

Поехали! Для начала запишем название программы и объявим переменную, нам потребуется только одна переменная целого типа:

На этом все. Жду ваших вопросов, кому что не понятно. Контакты для связи со мной находятся здесь. Удачи и до встречи на следующем уроке!

Источник статьи: http://program4you.ru/pascal/pascal_if.php

#9 Условный оператор IF (оператор ветвления if else) в Паскаль. Полная и неполная формы условного оператора. Вложенность условий

Primary tabs

Forums:

Условный оператор — что это такое

Условный оператор IF служит для программирования ситуаций выбора — моделирования различных вариантов развития ситуации, с которым мы сталкиваемся в жизни и отражаем их в наших программах.

Структура условного оператора. Блочность

Условный оператор в общем виде состоит из трёх частей:

  1. Проверкалогического значения
  2. Ветка истинности (обязательна) — выполнится если логическое значение истинно (true)
  3. Ветка ложности (необязательна) — выполнится если логическое значение ложно (false)

Сразу отметим, что логическое значение — это фактически ответ на вопрос формата “да/нет” , напомним, что логическим типом значением обладают:

  1. логические литералы
  2. логические переменные
  3. и логические выражения

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

В программном коде структуру условного оператора можно проиллюстрировать следующей схемой:

— в данном случае выполнится “ложная” ветка, так как $5 > 7$ возвращает результат false.

Точка с запятой перед else

Заметьте (см. примеры выше и ниже), что перед else точка с запятой не ставится.

Операторные скобки условного оператора

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

Например для ситуации, изображённой на этой блок-схеме:

Эту же ситуацию можно проиллюстрировать кодом:

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

Полная и неполная формы оператора IF

Оператор IF в программе может быть представлен в следующих формах:

  1. Полная форма — форма оператора if, в которой присутствуют обе ветки — и then и else
  2. Неполная форма — форма в которой присутствует только then.

Полная форма условного оператора IF

В полной форме оператора IF присутствуют обе ветки — именно полную форму мы рассматривали выше, например:

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

В последнем примере кода, у нас в ветке истинности одна операция, а в ветки ложности 2 — эту ситуацию можно изобразить на блок-схеме так (с каким-то предварительным действием до if):

Неполная форма условного оператора IF

В неполной форме условного оператора есть только сценарий истинности, ветка ложности же вообще не описывается, например:

— в ветке ложности здесь вообще ничего нет, то есть если $a$ не больше $5$, то и никаких действий предпринято не будет.

На блок-схеме неполная форма оператора ветвления выглядит так:

— правило использования операторных скобок действует и здесь: в данном же случае у нас только одна операция в ветке then, а потому begin и end не нужны.

Полная форма IF с пустой веткой then. Почему стоит избегать

Полная форма условного оператора с пустой веткой истинности, т.е. код вида:

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

Разбор задач

Пример №1 — неполная форма IF

Сравните два числа, если первое больше второго, то выведите на экран “22” и затем отдельным вызовом writeln() число 555.

— в этой задаче указано, что надо предпринимать какие-то действия только в одном случае (“если первое больше второго”), а значит будет использовать оператор ветвления в неполной форме:

— в ветке истинности здесь было две операции, а потому мы использовали для неё операторные скобки.

Пример №2 — полная форма, по одному действию в каждой ветке

Сравните два числа, если первое больше второго, то выведите на экран “22”, а иначе выведете на экран ‘abc’.

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

— обратите внимание, что перед else точка с запятой не ставится.

Пример №3 – логические выражения и оператор ветвления IF

Коля набрал $k$ баллов, Миша $n$ баллов, а Петя $d$ баллов в ходе соревнований. Если:

  1. сумма баллов Коли и Миши больше $20$
  2. и сумма баллов Пети и Миши меньше $55$

–то тогда вывести в консоль сообщение о том, что ничья, в противном случае вывести сообщение, что победил Коля.

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

Пример №4 – вложенные условные операторы

Операторы могут вкладываться один в другой так, как как это показано на блок-схеме (на деле внутренний оператор вкладывается в одну из веток внешнего):

Рассмотрим задачу, решение которой будет соответствовать этой блок-схеме:

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

  1. сначала сравните их сумму с числом $25$, если она больше, то выведите на экран первое число, а если меньше, то только второе.
  2. затем выведите на экран второе число в квадрате

Реализуем решение в виде программы:

Пример №5 – вложенные условные операторы

Например задачу из более раннего примера:

Коля набрал $k$ баллов, Миша $n$ баллов, а Петя $d$ баллов в ходе соревнований. Если:

  1. сумма баллов Коли и Миши больше $20$
  2. и сумма баллов Пети и Миши меньше $55$

–то тогда вывести в консоль сообщение о том, что ничья, в противном случае вывести сообщение, что победил Коля.

можно было бы решить с помощью вложенных блоков условного оператора IF:

— обратите внимание, что begin и end не нужны для ветки истинности внешнего оператора, так как в него вложен лишь один if — а остальные строки относятся к этому вложенному if.

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

Пример №6 – жизненный выбор

То есть ситуацию, в которую попал богатырь на этой иллюстрации:

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

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

Пример №7 Вложение оператора if в неполной форме в оператор if в полной форме

При решении задач или при просмотре/анализе кода написанного не вами может возникнуть проблема понимания того, к какому именно then относится данный else, обычно такая проблема возникает в случае, если количество else не равно количеству then (если эти количества равны, то понять что во что вложено не трудно).

Рассмотрим пример (фрагмент кода), в котором есть подвох:

— данный код отформатирован неверно, ведь он как бы показывает что else относится к первому then, в то время как Паскаль будет считать (всегда), что else относится к ближайшему then (не “отделённому” от этого else операторными скобками), итак, повторим эту идею ещё раз, назовём её правило “прикрепления” else:

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

Исходя из этого правила можно понять, что написанный выше код на самом деле имеет структуру:

— но это значит, что уже неверна логика решения, из за того что на деле при подобной записи else относится к ближайшему then (мы показали это правильным форматированием и комментариями).

Но как же нам добиться задуманного в начале, т.е. той ситуации, когда в случае если a > b не верно, мы получили бы сообщение “”переменная a не больше b””?
Для этого нам придётся отделить ближайший then от else операторными скобками, то есть сделать так:

Теперь ближайшим не изолированным операторными скобками от else словом then оказывается первое (то, где “if (a > b)”), а не второе (т.е. не то, где “if (a > c)”) — что мы и хотели изначально запрограммировать ;)

Пример №8 — Интерактивный сценарий текстовой консольной игры

Пример сравнения строк для условного оператора:

Форматирование кода условного оператора

Мы уже начинали рассматривать вопрос форматирования кода, вернемся к нему в этом уроке. Это важно, т.к. теперь помимо блока тела программы мы знаем еще два блока:

  1. Блок ветки then ()
  2. и блок ветки else

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

Дополнительный отступ внутри блока равен базовому, например:

— else пишется под тем if, которому он относится.

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

— в данном случае в тройном отступе у нас используется шесть пробелов (2×3=6)

Форматирование IF с операторными скобками

Если нам нужны операторные скобки (когда внутри ветки должно больше одного действия), то записываем открывающую под закрывающей:

— открывающая операторная скобка begin располагается ровно под ключевым словом if или под else (в зависимости от того, к чему относится).

Видео-пояснения

Для этого урока есть следующие видео:

Самостоятельная работа

Вопросы

  1. Для чего нужен оператор ветвления (условный оператор)?
  2. Какие ветви условного оператора вы знаете?
  3. Чем полная форма условного оператора отличается от неполной?
  4. Когда нужны операторные скобки в ветвях оператора IF, а когда нет?

Задачи

Форматирование кода условного оператора (необязательный блок)

Если он отфроматирован неправильно – исправьте это, и объясните для себя почему нужно исправить именно так.

Сдавать/выладывать решение не обязательно:
Есть код:

Подсказка: если непонятно как решить или хотите закрепить знания см. этот видео-разбор.

Самостоятельное программирование

ПРИМЕЧАНИЕ: эта и следующая задача базируются на том, что мы уже решали (см. задачи в конце урока).

  • Даны три целых числа: $A$, $B$, $C$. Проверить истинность высказывания: « Число $A$ и число $B$ больше 17, а $C$ > 7». — выведите “да”, если истинно и “нет” если ложно.
  • Пользователь вводит два числа, найдите из них максимальное. (тут всё просто)

    Примечание: если не просто или для лучшего понимания решения, см. этот видео-разбор.

    Пользователь вводит три числа, найдите из них максимальное.

    1. С использованием логической операции and.
    2. С вложенными блоками (без and, все операторы if должны быть в полной форме).
      (Если не получается – см. разбор решения)
    3. Без вложенных блоков (без and) — запомнив максимум из первых двух чисел в специальной переменной.
      (Если не получается – см. разбор решения)

    Указание: Сначала постарайтесь написать все три решения самостоятельно (хотя бы по 20 минут размышления на каждую задачу, но не более часа на каждую), если не получается (или после решения) также можно посмотреть это видео-пояснение.

    Пользователь вводит четыре числа, найдите из них максимальное — решите через вложенные блоки if в полной форме (без использования логических операций).

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

  • Коля набрал $k$ баллов, Миша $n$ баллов, а Петя $d$ баллов в ходе соревнований. Если:
    1. сумма баллов Коли и Миши больше $20$
    2. или произведение баллов Пети и Миши меньше $55$

    –то тогда вывести в консоль сообщение о том, что ничья, в противном случае вывести сообщение, что победил Коля.

    Есть программа, где стоит проверка на ввод пользователем числа 1 или числа 5:

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

    Перепишите программу оптимальным образом.

    Подсказка: если самостоятельно разобраться не получается, смотрите этот видео-разбор.

    — при этом известно, что если s равно 1, то на экран должно вывестись только первое сообщение (а второе выводиться не должно), а если s не равно 1, но равно m , то второе (а первое выводиться не должно).
    Но сейчас программа работает не так, исправьте это.

    — в двух условных операторах действия частично совпадают, а значит наблюдается дублирование кода. Перепишите код так, чтобы дублирования не было.

    Подсказка: используйте вложенные блоки if() .
    Если идей нет, смотрите разбор решения.

    — блоки условий можно переписать более кратко, без использования сравнения = true или = false , с сохранением той же логики работы программы.

    • оператор if итак неявно сравнивает значение логического выражения в скобках с true (и принимает решение, какую именно ветку then или else выполнить)
    • для второго if в коде выше потребуется исползование оператора Not.

    Если подсказки не помогают и/или для лучшего понимания – см. этот видео-разбор.

    — который сообщает пользователю, что число не равно нулю, если это действительно так, или в обратной ситуации не делает вообще ничего.

    Задача: Перепешите это код в неполной форме (без использования else).

    Примечание: если не получается решить, или для лучшего понимая решения см. этот видео-разбор.

    У вас есть три числа (три переменные) найдите их медиану.

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

    Решать по желанию, сдавать на проверку не обязательно:

    • 1) Вы дома, пойдем в лес или в центр города?
    • 2) Если пойдем в лес то будем жечь костер или кататься на лыжах?
    • 3) Если будем кататься на лыжах, то по кругу или с гор (придумайте последния выбора)
    • 4) Если будем жечь костер – то будем ли что-то готовить или просто (придумайте последствия выбора)
    • 5) Если выбрали поход в центр – пойдем ли в кино или погуляем по центру
    • 6) Если пойдем в кино будет смотреть исторический фильм или комедию (придумайте последствия выбора)

    В качестве примера см. пример №8 выше, и/или видео-разбор.

    Вопрос: изменилось ли что-то в поведении программы, если да, то почему? Объясните письменно, можно прокомментировать код, если изменения в логике есть

    Источник статьи: http://fkn.ktu10.com/?q=node/8539

  • Понравилась статья? Поделить с друзьями: