При решении задач в которых действие зависит от условия, используется оператор условного перехода. Он имеет вид:
Оператор IF.(условие)..THEN.(оператор)..ELSE..(оператор).
Пример:
INPUT “Как твоё имя? “; A$
IF A$=”Маша “ THEN PRINT “Привет, Маша“ ELSE PRINT “Привет “; A$
PRINT "Эта программа делит два числа"
INPUT "Введи делимое"; a
INPUT " Введи делитель"; b
IF b=0 THEN
BEEP 'этот оператор даёт гудок
PRINT "Деление на 0 невозможно!"
ELSE
PRINT "Частное от деления равно"; a/b
END IF
|
Здесь в первой программе используется условный оператор в сокращённом виде (он должен размещатся на одной строке), а во второй – используется несколько операторов после THEN. В этом случае делается запись в виде «лестницы» для удобства чтения программы и заканчивается блок оператором END IF
Оператор после ELSE может не ставится. Например,
PRINT "Введи число 1-10";
INPUT A
IF A>10 OR A<1 THEN
BEEP
PRINT "Это число не принадлежит этому промежутку!"
END IF
|
Условный оператор может быть и ещё более сложного вида:
IF условие 1 THEN
Операторы 1
ELSE IF условие 2 THEN
Операторы 2
ELSE IF условие 3 ТHEN
Операторы 3
...............
ELSE IF условие N THEN
Операторы N
ELSE
операторы
END IF
|
В этом случае при выполнении условия 1 действуют операторы 1, при выполнении условия 2 – операторы 2 и т. д. Если ни одно из условий не выполняется действуют операторы, находящиеся после оператора ELSE.
Оператор SELECT
Рассмотрим выполнение следующей программы.
INPUT "Какую оценку ты получил в школе?"; О
SELECT CASE О
CASE 1
PRINT "Тебе должно быть стыдно..."
CASE 2
PRINT "Слишком мало учил..."
CASE 3
PRINT "Посредственно..."
CASE 4
PRINT "Неплохо!"
CASE 5
PRINT Молодец!"
CASE ELSE
PRINT "Ну это ты обманываешь!"
END SELECT
|
Здесь в случае О=1 действует CASE 1, в случае О=2 - CASE 2 и т. д. Если задаёшь О=6 получаешь ELSE.
8. Задания
Задача 1.
Вычислить значениеY, если Y=sin x/(x-1)^2 при x не равном 1 и Y=1 при x равном 1.
Задача 2.
Вычислить значениеY, если Y=1-х при x большем или равном 1 и Y=х-1 при x меньшем 1.
Задача 3.
Вычислить значениеY, если Y=х +1 при x меньшем 2, Y=х+2 при x меньшем 3 но больше или равном 2 и Y=х+3 при х большем или равном 3.
Задача 4.
Вычислить значениеY, если Y=х ^2 при м=1, Y=2*х при м=2, Y=х+1 при м=3, Y =0 при м=4 и Y=х-1 при м=5.
Задача 5.
Вычислить значениеY=sign (x) т. е. Y=1 при x большем 0, Y=0 при х=0 и Y= -1 при x меньшем 0.
Задача 6.
Вычислить значениеY, если Y=tg x^2 при x равном /2 и Y=соs х при х= .
Задача 7.
Составить программу решения квадратного уравнения.
Задача 8.
Задача определения, что случится с ракетой в зависимости от её начальной скорости.
Алгоритм решения:
-
Вводится значение начальной скорости V0.
-
Печать «Ракета упадёт на Землю», если V0 меньше 7.8.
-
Печать «Ракета станет спутником Земли», если V0 больше или равно 7.8 и меньше 11.2.
-
Печать «Ракета станет спутником Солнца», если V0 больше или равно 11.2 и меньше 16.4.
-
Печать «Ракета покинет Солнечную систему», если V0 больше или равно 16.4.
Задача 9.
Вычислить значение Y, если Y=1/x + 1/(x-1). Учесть случаи, когда Y не имеет решения.
Задача 10.
Нахождение наибольшего общего делителя (НОД) двух натуральных чисел А и В по алгоритму Евклида.
Алгоритм Евклида:
-
Задаются два натуральных числа А и В.
-
Если А=В, то НОД =А
-
Иначе, найти разность между большим и меньшим числом и заменить ею большее число.
-
Перейти к 1.
Задача 11
Определить, принадлежит ли точка с координатами (х,y) фигуре на плоскости, задаваемой уравнениями:
-
y>=0 и модуль х+модуль y меньше или равно 1
![](163119_html_m6d8d1e5a.gif) ![](163119_html_m5a2b4e9c.gif) ![](163119_html_4c86091b.gif) ![](163119_html_m158f1778.gif)
y
x
![](163119_html_m2a7690f7.gif)
1
-1
1
-
y<=0 и модуль х+модуль y меньше или равно 1
x
-
М одуль х+модуль y меньше или равно 1
![](163119_html_1ee4302f.gif)
y
x
![](163119_html_m5a2b4e9c.gif)
Указать также, если точка не принадлежит ни одной фигуре.
Задача 12
Н айти наибольшее из двух чисел.
Задача 13
Найти наибольшее из трёх чисел.
Задача 14
Определить знак числа N.
Задача 15
Дан треугольник со сторонами А, В, С. Определить вид угла С (острый, тупой, прямой).
Задача 16
Найти квадрат наибольшего из двух чисел А и В и напечатать признак N =1, если наибольшим является А и N=2, если наибольшим является В.
Задача 17
Определить, попадёт ли точка с координатами (Х, Y) в круг радиуса R. Уравнение окружности R^2 = Х^2+Y^2. Присвоить признак N=1, если точка находится внутри круга и признак N=2, если точка находится вне круга.
Задача 18
О![](163119_html_71271974.gif)
I
IV
II
III
X
Y
пределить, в каком квадранте находится точка с координатами (Х, Y) и отпечатать номер квадранта.
Задача 19
Проверить, что введённое число простое.
1>
Достарыңызбен бөлісу: |