Program; Var r,p:Real; Begin Write(‘r=’);
ReadLn (r);
Begin If r<>0 Then r:=2*PI*r;
WriteLn(‘P= ’,p:5:2)
End Else WriteLn(‘коректни данни!’);
ReadLn
End. 2. Вложени/съставни разклонени алгоритми. Всеки един от операторите в частите след Then и Else са произволно изпълними оператори. Допуска се те да бъдат условни оператори. В този случай говорим за вложени оператори. В общия случай те изглеждат така :
IF <условие1> Then IF <условие2> Then<оператор1>
Else <оператор2>
Else IF <условие3> Then<оператор3>
Else<оператор4>;
Пример: Да се състави програма за пресмятане на линейно уравнение ах+в=0. Коефициентите а и в се въвеждат от клавиатурата на един ред, разделени със интервал. На изхода да се извежда стойността на х или подходящо съобщение.
Program; Var x,a,b:Real; Begin ReadLn (a,b);
If a=0 Then If b=0 Then WriteLn(‘Всяко х е решение’)
Else WriteLn (‘Няма решение’)
Else WriteLn(-b/a:5:2);
ReadLn
End. 3. Оператор за многовариантен избор Case Синтаксис: Case<Израз_селектор> of <Списък_константи_1>:< оператор_1>;
<Списък_константи_2>:< оператор_2>;
<Списък_константи_N>:< оператор_N>
Else[<оператор_0>]
Else; Където:Case, of и Else са запазени думи
<Израз_селектор> е израз от дискретен тип. Не може да е от реален тип
<Списък_константи_1...N> е последователност от не повтарящи се константи от същия тип кота типа на селектора, разделени със запетая;
< оператор_1…N> е произволен оператор допустим за езика
Семантика: 1. Изчислява се стойността на <Израз_селектор>
2. Тази стойност се сравнява последователно с константите от Списък_-1, списък_2,… списък_N и при съвпадение на стойност се изпълнява съответния оператор_1, оператор_2…оператор_N. След това програмата продължава със следващия поред оператор=
3. Ако стойността на израза селектор не съвпада с нито една от константите от N -те списъка, тогава се изпълнява операторът след запазената дума Else. Ако тя отсъства, се изпълнява следващия поред оператор.
Пример: Да се състави програма, която въвежда произволен символ. Ако символа е от 0 до 5 да се изведе със думи съответната цифра, ако не да се изведе подходящо съобщение.