ПредишенСледващото

Условно изявление - какво е това

Условно, когато се използва за избор на програмни ситуации (симулация на различни сценарии по отношение на които се сблъскваме в живота, но сега в програмата).

Структурата на условно изявлението. модулност

Условно оператор обикновено се състои от три части:

  1. Проверете булев
  2. Клон истина (задължително) - ще бъде изпълнено, ако булевата стойност е вярно (истина)
  3. Клон фалш (по желание) - се изпълнява, ако булевата стойност е фалшива (фалшиво)

Просто имайте предвид, че логическата стойност - това е всъщност отговорът на формата на въпрос "да / не". Припомняме, че логическата стойност на вида да има:

  1. логически литерали
  2. булеви променливи
  3. и булеви изрази

-- като всеки прост тип данни може да бъде представляван от литерали, променливи или изрази на тях.

В код структурата на условно изявление може да се илюстрира със следната схема:

-- В този случай, изпълни "фалшив" клон като $ 5> $ 7 връща резултата невярно.

Точка и запетая пред друг

Забележка (вж. Примерите по-горе и по-долу), които иначе преди запетая не е зададен.

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

В предишния пример, забележете къдрава скоба. заобикалящата тялото на клонки операторът разклонения - началото и края са необходими, ако един клон се извършва повече от една операция. ако в клон съдържа само една операция, операторът не е необходимо скоби.

Например, за положението показано на диаграмата:

9 Условно оператор, ако (ако друг клон оператор) в паскал

Същата ситуация може да се илюстрира с код:

-- тук и в двата клона е само една операция, така че не е необходимо операторът скоби.

Пълни и непълни форми на МФ

АКО изявление в програмата могат да се подават в една от следните форми:

  1. Попълнете формуляра - под формата на оператора, ако, в която има два клона - и тогава, и друг
  2. Непълно форма - формата, в която настоящето само след това.

Пълният под формата на условен израз АКО

Пълният под формата на отчета, ако има два клона - че пълната форма разгледахме по-горе, като например:

-- Тук, както и променлива състояние, ние сравнение на броя и след това описва два варианта, единият от които е направена в съответствие с условията на материята.

В последния код пример, ние имаме един клон операция в истината и лъжата в клоните 2 - тази ситуация може да се опише в блок-схемата, така (с някои предварителни действия, за да ако):

9 Условно оператор, ако (ако друг клон оператор) в паскал

Непълно форма на условен израз АКО

В непълна формата на условен сценарий има само истина. лъжа клон обикновено не е описано. например:

-- клон в лъжа не е нужно нищо тук. тоест, ако $ A $ не повече от $ 5 $, а след това не се предприемат действия ще бъдат.

Блоковата схема е непълна форма разклоняване изявление изглежда така:

9 Условно оператор, ако (ако друг клон оператор) в паскал

-- обикновено се използват скоби оператор прилага тук: ако повече от един клон на работа, да започне и да са необходими край.

настойнически

Пример №1 - непълна форма IF

Сравнете две числа, когато първият повече от втория, след това се появи "22" и след това отделна writeln повикване (номер 555).

-- в тази задача, имайки предвид, че е необходимо да се вземат някои мерки само в един случай ( "ако първият повече от втория"), и по тази причина ще използва оператора на клон в непълен вид:

-- клон в действителност е имало две операции, така че ние да го използва за къдрава скоба.

Пример №2 - дълга форма, едно действие във всеки клон

Сравнете две числа, когато първият повече от втория, след това се появи "22", но в противен случай ще се покаже "ABC" екран.

-- в този проблем са посочени две алтернативи, и ще бъдат използвани, тъй като операторът на разклоняване в пълна форма:

-- Моля, имайте предвид, че преди още запетая не е зададен.

Пример №3 - логически изрази и разклоняване АКО изявление

Кол вкара $ к $ точки, Миша $ N $ точки и $ г $ Петя точки по време на състезанието. Ако:

  1. отбележи Коля и Миша повече от $ 20 $
  2. и размера на точки Petit и Миша по-малко $ 55 $

--След това се появи съобщение в конзолата, която изготви, в противен случай се появи съобщение, че Кол спечели.

Това се изисква като условие за изпълнението на два под-условия, както и нито един от тях - но две в същото време, тъй като логическият израз, защото, ако ние ще използваме логическа операция И. След това можем да решим нещо като това:

Пример №4 - вложени кондиционали

Операторите могат да бъдат вложени един в друг като, както е показано в диаграмата (в действителност, операторът вградена във вътрешната един от клоновете на външната):

9 Условно оператор, ако (ако друг клон оператор) в паскал

Помислете за този проблем, решаването на който ще съответства на схемата по:

Вземи потребителят две числа, ако първото повече от втория, след което показваме на сумата от тях, а след това разликата между тях, в противен случай:

  1. първо сравнение на сумата от броя $ 25 $, ако тя е по-голяма, а след това се появи първото число, и ако тя е по-малко, а след втората.
  2. След това се появи второто число в квадрат

Ние изпълнение на решение във формата на програмата:

Пример №5 - вложени кондиционали

Например проблемът с по-ранната пример:

Кол вкара $ к $ точки, Миша $ N $ точки и $ г $ Петя точки по време на състезанието. Ако:

  1. отбележи Коля и Миша повече от $ 20 $
  2. и размера на точки Petit и Миша по-малко $ 55 $

--След това се появи съобщение в конзолата, която изготви, в противен случай се появи съобщение, че Кол спечели.

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

-- Моля, имайте предвид, че започват и завършват не са необходими за истината на външния клон на оператора, тъй като тя е вградена само един случай - и други линии са свързани с това вложени ако.

ВАЖНО: Това е очевидно Prima код дублиране. че е лошо стил. Освен вложени блокове в кода по-трудно да се разбере защо:

Ако не можете да използвате за гнездене - не го използвайте. по-добре да се използват по-сложни условия с логически операции.

Пример №6 - избор в живота

Това е ситуация, в която героят е бил в тази илюстрация:

9 Условно оператор, ако (ако друг клон оператор) в паскал

Тя може да се програмира, както следва:

- Всъщност това е и няколко вложени една в друга разклоняващи отчети, когато включването тук на двама младши ниво се случва в клон неистинността на.

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

  1. Защо необходимостта от изявление клон (условно)?
  2. Какво клон на условно изявление, знаеш ли?
  3. Пълният под формата на декларация, ако е различна от тази на непълно работно време?
  4. Когато се нуждаете от къдрава скоба в отчета клони, ако и когато не?
  1. Сравнете две числа, когато първият повече от втория, след това преминете към екрана "12". (Тук трябва да използвате непълна форма на условен израз)
  2. Сравнете две числа, когато първият повече от втория, след това се появи "12", а ако не, тогава преминете към екрана "888".
  3. Като се има предвид три числа: $ A $, $ B $, $ C $. Проверка на истинността на поговорката: "Броят на $ A $ е между $ на номера $ B и $ C $» - изход с "да", ако е вярно, и "не", ако лъжа.

ЗАБЕЛЕЖКА: Тази следващата задача въз основа на факта, че ние вече сме решили (виж края на целите на урока.).

  • Като се има предвид три числа: $ A $, $ B $, $ C $. Проверка на истинността на поговорката: "Броят на $ A $ и $ B $ броя повече от 17 и $ C $> 7". - изход с "да", ако е вярно, и "не", ако лъжа.
  • Потребителят въвежда две числа, да получите максимума от тях. (Всичко е просто)
  • Потребителят въвежда числото три, се получи един максимум.

    Забележка: Тук ще трябва вложени IF-блокове.

  • Потребителят въвежда броят четири, се получи един максимум.
  • Кол вкара $ к $ точки, Миша $ N $ точки и $ г $ Петя точки по време на състезанието. Ако:
    1. отбележи Коля и Миша повече от $ 20 $
    2. или работни точки Петя и Миша по-малко $ 55 $

    --След това се появи съобщение в конзолата, която изготви, в противен случай се появи съобщение, че Кол спечели.

    Източници (какво друго да се провери)

    Ключови думи за FKN + antitotal форум (CS ВСУ):

    Свързани статии

  • Подкрепете проекта - споделете линка, благодаря!