разклонени алгоритми

В тази лекция, аз ще ви кажа какво разклонен алгоритъм и как се прилага в езици за програмиране Pascal и C.

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







Клон на алгоритъма се нарича подобен път.

Разклонени алгоритми са пълни и на непълно работно време разклоняване разклонения. По-долу е пример за алгоритъм пълен разклоняване.

разклонени алгоритми

Тук алгоритъм с частично разклоняване.

разклонени алгоритми

Типът на логически данни

Булеви данни във всеки език за програмиране има само две стойности - верни и неверни, съответно верни и неверни или 0 и 1, така че 1-битова памет. При този тип данни са възможни логически операции, които считаме, както и някои по математика като логичен тип данни е основната последователност и с нея можете да направите определен набор от действия, повече по този въпрос в лекция на типове данни. Таблицата по-долу показва логически стъпки, т.е. масата за истината за тях.

разклонени алгоритми

Така че, определено от логическите оператори в C. - логически и различно връзка (в Pascal, е посочено, и, в учебниците писмени ^), || - логично или друго дизюнкция (Паскал е посочено или в писменото учебниците ˅). - логично отрицание различен инверсия (Паскал не е определен в учебниците за писане.). Приоритет на операциите в логически израз, така че първият инверсия се извършва, след логическото "И", а след това логично "или". Скобките смяна на последователността на действията: първо извършена операцията в скоби, ако има нужда да се изпълняват няколко операции, работи приоритета на логическите операции.







Условностите в езиците за програмиране

За да определите състоянието на език за програмиране, тя изисква условен израз, това е, което тя изглежда като в езика за програмиране Pascal.

Имайте предвид, че преди думата друг (когато има такава, разбира се) на "," Не слагайте - всъщност тя щеше да разкъса на оператора на две части. Ако има двама или повече оператори, след като след това или на друго, в зависимост от клон на оператора, операторът поставя скоби започват ... край; но ако те стоят пред друг, а след това и запетая не е определен.

Ето как става това условен израз:

  1. Първо изчислена стойност <условия> - тя може да бъде всеки израз, който връща булева стойност.
  2. След това, ако полученият резултат "истината" (вярно), а след това се изпълнява оператор, стоящи след ключовата дума тогава. и ако "лъжа" (фалшиво) - без допълнителни проверки, извършени състояние оператор след ключовата дума друго. Ако няма Q клон друго, то не прави нищо.

И ето какво условен израз в езика C., тя работи също толкова добре:

ако ([булева експресия])
[Отчети, изпълнени в логическа истина
изразяване]
>
още
[Отчети, изпълнени при стойност на невярна за логическо
изразяване]
>

Вложени условни

Често е такава, че една от двете условия и сценарии програмист може да не е достатъчно, а след това какво да правя? Можете незабавно да даде отговор - нека да напиша няколко оператори, ако. но този отговор ще бъде също толкова правилно и грешно. Ето защо: в действителност, това е начин за излизане от ситуацията, ще бъде тествана на редица условия, както и оператори се изпълняват в тях, но в хода на едно от условията, които тя може да се случи, че променливите ще имат стойности, така че ще получат състоянието на друг оператор на правото, а след това той също започва да работи, ние не трябва да има. Но тогава възниква въпросът: какво да правя? И тук идва отговорът, тъй като използването на вложени условия, това е, така, че операторът да извърши само една от няколко клона, както и че решение на проблема:

Ако (<условие>), след това <операторы>

ElseIf (<условие>), след това <операторы>

Тя беше даден запис в Паскал. Разбира се, ако имате нужда да изпълняват две или повече от оператора, операторът поставя скоби. Но рекорда в C: