Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах

Раздел Информатика
Класс -
Тип Конспекты
Автор
Дата
Формат doc
Изображения Есть
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

Занятие 3

Ветвление в алгоритмах и программах.

Разветвляющий алгоритм - это алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.

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

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах. Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

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

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Рассмотрим запись условного оператора на языке Basic.

Простая форма оператора выглядит следующим образом:

IF <УСЛОВИЕ> THEN <ОПЕРАТОР>

или

IF <УСЛОВИЕ> <ОПЕРАТОР 1>[:<ОПЕРАТОР 2>:…:<ОПЕРАТОР N>]


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

Условия - еще один тип логических выражений. В них используются следующие операторы сравнения:

=

равно

<>

не равно

>

больше

<

меньше

>=

больше или равно

<=

меньше или равно

Справа и слева от знака сравнения должны стоять величины, относящиеся к одному типу. В результате сравнения получается логическая величина, имеющее значение ИСТИНА (TRUE) или ЛОЖЬ (FALSE).

Пример:

5<7 - ИСТИНА;

8=12 -ЛОЖЬ (проверяем равно ли 8 12, именно проверяем, а не утверждаем, что 8=12);

Предыдущие конструкции позволяли обойти или выполнить серию оператор в зависимости от справедливости условия. Это еще не было ветвлением. Чтобы вычисления могли разветвляться по нескольким направлениям, служит конструкция IF...THEN...ELSE...

IF <УСЛОВИЕ> THEN <ОПЕРАТОРЫ 1>ELSE<ОПЕРАТОРЫ 2>
Если условие справедливо (ИСТИНА), то выполняются <операторы 1> (стоящие между THEN и ELSE), а <операторы 2> (стоящие после ELSE ) будут пропущены.
Если условие не справедливо (ЛОЖЬ), то <операторы 1> игнорируются и выполняются <операторы 2>.

IF - если, THEN - тогда, ELSE - иначе.

Если в комнате темно, тогда надо включить свет.

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

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

REM сравнить число со каким-то значением
INPUT "Введите а", а
IF a=7 THEN PRINT "Числа равны"
END

После запуска программы проверяется равно ли введенное значение семи или нет. Если равно, то на экран выводится сообщение 'Числа равны'.

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

REM определить большее из двух чисел...
INPUT "Введите а", а
INPUT "Введите b", b
IF a>b THEN PRINT "Большее число: ", a:с=2*a
ELSE PRINT "Большее число: ", b:с=2*b
PRINT "результат: ", c
END

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

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

REM определить большее из двух чисел...
INPUT "Введите а", а
INPUT "Введите b", b
IF a=b TNEN PRINT "Числа равны":с=2*a
ELSE IF a>b THEN PRINT "Большее число: ", a: с=2*a
ELSE PRINT "Большее число: ", b: с=2*b
PRINT "результат: ", c
END

В этой программе два условных оператора, первым проверяется условие равенства чисел и, в случае его выполнения, будет выдано сообщение о равенстве чисел, если числа не равны, то проверяется второе условие...

Пример: Решение квадратного уравнения.
Решение квадратного уравнения зависит от значения дискриминанта.

REM Решение квадратного уравнения
INPUT "Введите коэффициент a: ", а
INPUT "Введите коэффициент b: ", b
INPUT "Введите коэффициент c: ", c
d=b*b-4*a*c
IF d<0 THEN PRINT "Корней нет"
ELSE IF d=0 THEN x=-b/(2*a) : PRINT "корень уравнения: ", x
ELSE x1=(-b-SQR(d))/(2*a): x2=(-b+SQR(d))/(2*a) : PRINT "корни уравнения: ", x1, x2
END

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

AND и

A and B

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

OR или

A or B

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

NOT не

Not A

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Вычислить

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Задача 1.

Определить является треугольник со сторонами A, B, C равнобедренным.

INPUT "Введите размеры сторон треугольника А, В, С "; A,B,C

IF A=B OR C=A or B=C THEN PRINT "Треугольник равнобедренный"

Задача 2.

Какой четверти принадлежит точка х,у.

INPUT X,Y

IF X>0 END Y>0 THEN ?"1"

IF X<0 END Y>0 THEN ?"2"

IF X<0 END Y<0 THEN ?"3"

IF X>0 END Y<0 THEN ?"4"

Задача 3 Попадает ли заданная точка в заштрихованную фигуру.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

INPUT "X=";X

INPUT "Y=";Y

IF X>0 AND X<5 AND Y>0 AND Y<2 THEN ?"YES" ELSE ?"NO"

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Задача 4

CLS

INPUT X, Y

IF X>-2 AND X<3 AND Y>0 AND Y<2 THEN ?"YES" ELSE ?"NO"

Задача 5.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

CLS

INPUT X, Y

F1=( X>-2 AND X<0 AND Y>0 AND Y<3)

F2=( X>0 AND X<4 AND Y>-2 AND Y<0)

IF F1 or F2 THEN ?"YES" ELSE ?"NO"

Домашнее задание.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.Изучаем язык BASIC. Занятие 3, Ветвление в алгоритмах и программах.

© 2010-2022