Ветвление в алгоритмах и программах
Алгоритм вычисления корней квадратного уравнения начало a,b,c0 d:=b*b-4*a*c d<0 корней нет d=0 x:=(-b)/(2*a) x1:=(-b+sqrt(d))/(2*a) x2:=(-b-sqrt(d))/(2*a) x1,x2 x конец да нет
Программный код в Делфи a:=strtofloat(edit1.text); b:=strtofloat(edit2.text); c:=strtofloat(edit3.text); d:=sqr(b)-4*a*c; if d<0 then label1.visible:=true else if d=0 then edit4.text:=floattostr((-b)/(2*a)) else begin edit5.text:=floattostr((-b+sqrt(d))/(2*a)); end;
Полное ветвление условие Действие 2Действие 1 да-нет Блок-схема Программный код If then else ;
Полное ветвление Программный код Блок-схема условие Действие 3Действие 1 да-нет Действие 2Действие 4 If then begin ; end else begin ; end;
Неполное ветвление условие Действие 1 да-нет Блок-схема Программный код If then ;
Неполное ветвление Блок-схема Программный код условие Действие 1 да-нет Действие 2 If then begin ; end;
ВНИМАНИЕ перед ELSE ставить точку с запятой нельзя; Если после ключевых слов THEN и ELSE по одной команде, то операторные скобки begin..end можно не ставить.
Реализация в Делфи Переключатель Флажок RadioButton1CheckBox1
Реализация в Делфи Переключатель If RadioButton1. checked Then Else If RadioButton2. checked Then Else ; Флажок If CheckBox1. checked Then ; If CheckBox1. checked Then ; If CheckBox1. checked Then Else ;
ВНИМАНИЕ Переключатель используется только тогда, когда нужно выбрать один и только один вариант из нескольких возможных Для обработки состояния переключателей в процедуру включать команды ветвления, вложенные одна в одну Флажок используется тогда, когда может быть выбран один, или несколько, или ни одного из предложенных вариантов Для обработки состояния флажков в процедуру включать команды ветвления, которые независимы одна от одной.
ПРИМЕР procedure TForm1.Button1Click(Sender: TObject); begin if RadioButton1. Checked then form1.Color:=clred else if RadioButton2. Checked then form1.Color:=clblue else if RadioButton3. Checked then form1.Color:=clwhite else form1.Color:=clgray; if CheckBox1. Checked then form1. Caption :=Новое название'; if CheckBox2. Checked then form1.Height:=350; if CheckBox3. Checked then Label1.Visible:=true; end;
Домашнее задание § 2.8, данную презентацию можно скачать по известному вам адресу Знать принципы построения команды ветвления и реализацию в блок-схемах Выполнить задания 1 (блок-схема) и 6 (блок-схема похожего алгоритма есть в тетрадях)