Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
33
Добавлен:
27.04.2015
Размер:
620.3 Кб
Скачать
Вариант №2

Контрольные задания по теме

«Тема 4.4. Программирование алгоритмов разветвляющихся структур»

Перейти к Теме 4.3 Теме 4.5 Огл.

4.4.1. Задание

1.Получить вариант задания.

2.Формализовать задачи 1 и 2 заданного варианта из п.4.4.2.

3.Составить схемы алгоритмов и написать программный код процедур (процедурфункций или процедур-подпрограмм) с соответствующими входными и выходными формальными параметрами для решения заданных задач (в процедурах не должно быть ввода исходных данных и вывода результатов).

4.Написать программный код процедуры ввода необходимых исходных данных и процедуры вывода.

5.Написать программный код вызывающей процедуры (событийной процедуры), в которой описываются исходные данные, происходит инициализация этих данных, задаются конкретные значения переменным, которые являются фактическими параметрами вызывающей процедуры, и вызывается процедура п.3.

4.4.2. Варианты контрольной работы по теме «Программирование алгоритмов разветвляющихся структур»

Вариант №1

 

 

(a +b)

;Cos

2

(x 1);l gx

e

}+tgx

3

x 2

 

min

 

x

 

 

 

 

1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

max{a

 

x

;Cos(x +a)}

 

 

 

 

2 < x 4

 

z = 1+

 

+e

 

 

 

 

 

x

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

max

 

;

 

 

 

 

 

 

 

 

 

 

 

 

x 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

 

 

c

 

 

 

 

 

 

 

 

 

 

2.Даны действительные числа x , y. Определить, принадлежит ли точка с координатами (x , y) геометрической фигуре: два круга радиуса 1 с центрами в точках (-1,0) и (-1,0).

a +max{xy ;

1.k = min ax ; by

lg2 (x2 +a2 )

Sin(x + y);eax} x >0, y >1

x >0; y <1

впротивном случае

2.Даны действительные числа a, b, c (a≠0). Выяснить, имеет ли уравнение ax2+bx+c=0 действительные корни. Если корни имеются, то найти их. В противном случае ответом должно служить сообщение, что действительных корней нет.

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 33

Вариант №3

 

a Sin2

 

 

 

 

 

 

x +y

 

 

1.

 

 

x + y

 

a +b x

 

 

 

s = max x;

 

 

;

2

 

 

x y

 

 

 

 

 

 

min{x;a; y}

 

 

 

x >0,y >0

x > y

впротивном случае

2.Даны действительные числа x, y. Если x, y имеют отрицательные значения, то каждое число заменить его модулем. Если отрицательно только одно из них, то оба значения увеличить на 0.5. Если оба значения неотрицательны и ни одно из них не принадлежит отрезку [0.5, 2.0], то оба значения уменьшить в 10 раз. В остальных случаях x, y оставить без изменения.

Вариант №4

 

 

x

2

2

 

 

 

1. min{a x;max{

x;e

Sin

x

;}) x 0

t = max{x;ax ; x +a}

 

 

 

 

4 x <0

tg2 x +a2

 

 

 

впротивном случае

 

 

 

 

 

 

 

 

 

 

 

 

3.Даны действительные числа x , y. Определить, принадлежит ли точка с координатами (x , y) геометрической фигуре: область, ограниченная кривыми, заданными выражениями x2+(y-1)2=1 и y=1-x2.

Вариант №5

1.

 

 

 

 

 

 

max{ |x|, |y|, |z|}

x ≤0,y ≤0,z ≤0

x

2

+a

2

 

 

 

 

 

 

 

2

 

+ln y +ln

2

z

3 < x <5, y > 2, z >1

h = lg x

 

 

 

min{

|x|, |y|, |z|}

впротивном случае

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.Выяснить, можно ли уместить прямоугольник со сторонами a,b внутрь прямоугольника со сторонами c,d.

Вариант №6

 

tg2 x +

 

 

min{

x;ax ;b +x}

 

x >0

 

x

 

 

1.

 

 

 

2

e

}}

 

 

 

 

0 x < 2

 

h = xa max{min{a; z};min{x

;a

 

 

 

 

 

впротивном случае

 

1+Cosxa

 

 

 

 

 

 

 

 

 

 

 

2.Даны действительные числа x , y. Определить, принадлежит ли точка с

координатами (x , y) геометрической фигуре: круг радиуса 1 с центром в точке (0,1) (x2+(y-1)2<1) и треугольник с координатами вершин (0,1), (-1,0), (1,0).

Вариант №7

a

;x

;x +y

 

}

0.1≤ x < 2; 1y < 2

min{

 

 

y

y

 

e

 

 

 

 

{

}

 

 

1.

h = max

 

min{a; x; y};max{

a

;

x

}

x <0.1; y <1

 

 

1-x2

 

впротивном случае

 

2.

 

 

 

 

 

 

 

 

 

Заданы площади круга и квадрата. Определить, поместится ли квадрат в круге.

Тема 4.4.

Программирование алгоритмов разветвляющихся структур

Страница 34

Вариант №8

 

 

 

3

2

x +a)

 

 

 

x >0

 

 

 

 

x

 

+ln(

 

 

 

 

 

1.

a =

min max

{

 

x

 

+a;

 

y

 

+b ;min{a; x}

x 0; y 0

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

+ y2}

 

впротивном случае

 

 

max{ea+b ;ln2 (x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.Даны действительные числа x, y. Определить, принадлежит ли точка с

координатами (x , y) геометрической фигуре: нижняя часть полуокружности, заданной уравнением x2+y2=1 и прямой y=x/2.

Вариант №9

1.

 

 

 

 

 

 

 

 

1+(

2

x >0; z >0

 

 

y

xz)

 

f

 

 

 

 

 

y >0; z <0

= min{a2;ln(x2 + y2 + z2 ); ye} x >0;

 

 

 

 

 

впротивном

случае

 

ebx+a

 

 

 

 

 

 

 

 

2.Определить, пройдет ли кирпич с ребрами a, b, c в прямоугольное отверстие со сторонами x и y.

Вариант №10

 

 

tg(x)

x [2,3]

1.

L =

 

 

 

 

 

 

min{max{x; y2

};

 

;

 

+c} впротивном случае

x

y

 

 

 

 

 

 

 

 

2.Даны действительные числа x,y. Определить, принадлежит ли точка с

координатами (x,y) геометрической фигуре: область, ограниченная кривыми, заданными выражениями y=|x| и x2+y2=1.

Вариант №11

1.

Cos(1+

cx2

)

 

0 x <3

 

 

 

 

 

b

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

x

 

x;a

x >0; x <0

d = max{

 

 

 

 

 

 

 

 

 

 

 

min{max{

 

+ x;tg(x c2 )};ln(x2 +c)} впротивном случае

a2

 

 

 

 

 

 

 

 

 

2.Даны действительные числа x и y. Меньшее из этих двух чисел заменить их полусуммой, а большее – их удвоенным произведением.

Вариант №12

 

 

y

 

max{x tg2 x +1;ax}

 

 

4 < x < 2

 

 

 

1+ xc+a

 

 

 

1.

 

 

{

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

max{x;ax};min

{

 

 

x

}

 

 

 

a = min

c +ax ; a + x;ce

 

 

2 x <5

 

 

 

e1+x2

+1

 

впротивном

 

случае

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Станции A, B, C расположены на n-ом, m-ом и p-ом километрах железной дороги,

 

соответственно. Определить, какие из этих станций расположены наиболее близко

 

друг к другу.

 

 

 

 

 

 

Страница 35

Тема 4.4.

Программирование алгоритмов разветвляющихся структур

Вариант №13

1.

min{a2x ;max{x; y2};by + xy} впротивном случае

 

 

2

2

}

x > 4

 

b = max

{Sin

x;Cosx

 

 

a3

 

 

 

 

 

 

3

+ x b lg x

 

0 < x 2

 

 

 

 

 

 

 

 

2.Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин.

Вариант №14

 

 

 

3

;a};a b}

1x < 2; 4 x <5

1.

min{3

min{x

b =

+exy+b

впротивном

случае

 

1

 

 

 

 

 

 

2.Даны действительные числа x,y. Определить, принадлежит ли точка с координатами (x,y) геометрической фигуре: верхняя часть плоскости, ограниченной ломаной линией, проходящей через точки (-∞,1), (-1,1), (0,0), (1,1), (+∞,1).

Вариант №15

1.

max{min{a; xa ;exa};ax +1}

x <0

 

2

x +Sinx

2

max{x; y}

0 x <7

 

d = Cos

 

 

 

 

 

 

x + y

 

в противном случае

 

 

 

 

 

1+3 Cos

 

 

 

 

 

 

 

 

 

 

2. Даны действительные числа x,y. Определить, принадлежит ли точка с координатами (x,y) геометрической фигуре: четырехугольник с вершинами (0,0),

(1,0), (-2,-1), (1,-2).

Вариант №16

 

 

 

 

 

 

min{x2 +ln x +lg(x + y); x2 + y2 ex} x >0;

y >0

1.

f

 

e

};lg(x + y)}

x + y >0

= max{min{x; y

 

 

 

 

 

в противном

случае

 

 

1+Cosxmin{x;y}

 

 

 

 

 

 

 

 

 

2. Даны действительные числа x,y. Определить, принадлежит ли точка с координатами (x,y) геометрической фигуре: пятиугольник с вершинами (0,0), (1,1),

(1,-2), (-1,-2), (-1,1).

Вариант №17

 

 

 

 

 

2

 

x >0;

y > 2

 

1.

min max{lg x; x + y};min Cos(1cx

 

);ax

 

 

 

 

b

 

 

 

 

 

 

 

+ x

2

 

в

противном

случае

 

т= 1

 

 

 

 

 

+Cosx

min{x;y}

 

y >0; x <0

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Даны действительные числа x,y. Определить, принадлежит ли точка с

координатами (x , y) треугольнику с вершинами в точках (-1,-1), (1,-1), (0,2).

Тема 4.4.

Программирование алгоритмов разветвляющихся структур

Страница 36

Вариант №18

a +max{ln y2 ;elg y ;lg(xy)a}

1. φ = b +min{x;y;c}

emin{a;x}

x >1; y >1

 

1x < 20;

1y <10

в противном случае

2. Даны действительные числа x,y,R. Определить, принадлежит ли точка с координатами (x , y) геометрической фигуре: фигура, состоящая из треугольника с вершинами в точках (-2,0), (0,1), (0,-1) и правого полукруга радиуса R с центром в начале координат.

Вариант №19

 

 

{

 

 

}

{

}

 

 

 

a +min

 

ax ; yx ;ex+a

 

+max lg2 x;Sin3

 

x +a

 

;a

0 < x <8;

y >3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

2

 

 

 

 

 

 

 

 

1.

α = a + x

+ y

 

 

 

 

 

в

противном

случае

 

 

 

 

 

 

 

 

 

10 x

 

 

 

 

 

 

 

 

 

 

 

min{max{x; y}; yx}

 

 

 

 

x ≤ −0.5; y ≤ −3

 

2. Даны действительные числа x,y. Определить, принадлежит ли точка с координатами (x, y) геометрической фигуре: четырёхугольник с вершинами (0,1),

(0.5,0), (0,-1),(-0.5,0).

Вариант №20

 

a +Sin2 x y

 

 

4

x < −1;

y > x

 

 

 

 

 

1.

min{ex +1; yx}

 

 

;Sinex}; x +a + y}

 

 

 

 

a + x2

 

1x <5;

y = x

 

c = max{min{ln2

 

 

 

 

 

в противном случае

 

1+ax+y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.Даны координаты (как целые от 1 до 8) двух полей шахматной доски. Определить, может ли король за один ход перейти с одного из этих полей на другое.

Вариант №21

1.

min{max{x2 + y2;ax + ya};

 

 

 

}

x >a;

y >0

x

+

ax

min{a +b;xa+b}

 

 

x a; 0 y 3x

c =

 

 

 

 

 

 

 

 

 

 

 

1+a +ba

 

 

 

 

 

 

 

 

 

2

x + y

 

 

 

 

в

противном

случае

tg

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.Даны действительные числа x, y. Определить, принадлежит ли точка с координатами (x, y) геометрической фигуре: треугольник с координатами вершин (-1,1), (1,1) и (0,0) и круг с центром в точке (0,-1) и радиусом 1.

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 37

Вариант №22

 

 

 

 

x

y

;Sin2

 

 

x >3; y >4

 

min 1+e

 

(x + y2 );a Cosx

1.

 

x + y +a

 

 

 

 

 

 

 

 

 

 

 

2

(x + y)}

1< x 5;

3 < y 0

 

p = min{a + x;b y;Sin

 

 

 

 

x y

 

 

 

в

противном

случае

 

a +Cos2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Даны действительные числа x , y. Определить, принадлежит ли точка с координатами (x, y) геометрической фигуре: два треугольника с вершинами в точках (-1,1), (-1,-1), (0,0) и (1,1), (-1,1), (0,0).

Вариант №23

 

1

уx+y min

a + x2

;tg2 x; ye

[

x >0;

y >0

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

lg a

; y

ln a

; x + y}

 

0 x 3; y <1

1.

c = max{x

 

 

 

 

 

 

 

 

 

 

 

x

 

) + y

 

в

противном

случае

 

a +Cosa (Sin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.На карте координаты начала и конца строящегося прямолинейного участка дороги обозначены как (x1,y1) и (x2,y2). Карьер, откуда можно брать гравий для стройки имеет координаты (x0,y0). Определить минимальное расстояние от строящегося участка шоссе до карьера.

Вариант №24

 

3

 

Sin(x + y)

 

 

 

 

 

 

a

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

Sin

2

x

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. d = max x

 

;

 

 

 

;

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xya

 

 

 

 

 

 

 

 

 

 

 

1+b

x y < a

a x y 4

в противном случае

2.Определить номер квадранта, в котором находится точка, заданная координатами

(x, y).

Вариант №25

 

 

 

 

 

 

{

}

 

 

 

 

tg2 (x + yx

+a2 min

 

xy ;ex ;a

4 < x 1;

y > −2

 

 

 

 

 

 

 

 

 

 

 

 

 

1.

t =

max{x +a2; y}

 

 

1< x 5;

2 y <8

 

 

 

 

 

 

 

 

 

min{y Sinx;a}

 

 

 

 

 

2

 

e

x

 

 

 

в

противном

случае

 

 

 

 

 

 

 

 

b +Sin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Определить, имеются ли среди цифр заданного целого трехзначного числа одинаковые.

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 38

Вариант №26

 

 

2

 

 

ex

 

2

 

 

 

 

{

2

}

 

 

b

Cosx

 

tg(ax

 

b) max

 

a;x

;b

в противном случае

 

 

 

 

 

 

 

 

 

 

 

x}}

 

 

 

 

 

 

 

 

 

 

 

 

2

 

x >0; y >2

 

 

 

 

 

 

 

 

 

1.

a = min{ax; y;max{

 

 

x;Sin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b +x +a

 

 

 

 

 

 

 

 

 

0 x <1; 2 y <6

 

 

 

e

ay

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Даны координаты (как целые от 1 до 8) двух полей шахматной доски. Определить, может ли конь за один ход перейти с одного из этих полей на другое.

Вариант №27

 

Cos(1+ cx2 )

0 x <3

 

 

 

b

 

 

 

 

 

 

 

 

 

 

 

 

 

x;ax }

x <0

1.

d = max{3

 

 

 

 

 

 

 

min{max{

 

+ x;tg(x c2 )};ln(x2 +c}

в противном случае

 

a

 

 

 

 

 

 

 

2.Определить, есть ли в заданном целом трехзначном числе цифры, кратные друг другу.

Вариант №28

 

 

 

 

 

max{x;a}

; z}

 

 

1.

ln(x a +min{xa

 

 

 

 

 

x <0; z <0

 

 

 

 

 

 

 

 

 

 

в

противном случае

 

v = b +cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+max{ c;

 

x

 

; z}

 

0 x < 4; 0 z <3

 

lnb2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Числа a, b – катеты одного треугольника,

c,d – катеты другого треугольника.

 

Определить, подобны ли эти треугольники.

 

 

Вариант №29

 

 

 

 

 

 

 

x + y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

min

x; y;

 

 

 

 

 

 

x >0;

y >1

 

 

 

 

 

 

 

 

 

 

 

 

 

a + z

 

 

 

 

 

1.

δ =

min

;ax ;ex+y ; ya

}

 

 

 

x >0;

y <3

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

в противном

случае

 

 

max{y;amin{x;a}}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Заданы площади круга и квадрата. Определить, поместится ли круг в квадрате.

Вариант №30

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

tg

2 x +a

 

 

 

 

 

 

x >0;

y >1

 

1.

min{ax ;

 

x

 

;ex+y}

 

x

 

 

 

 

 

 

 

 

 

 

 

3 x 5; 0 y 1

 

 

 

 

k = min max{y Sin2 x +3;a}; y atg

 

 

 

 

{

 

 

 

 

 

 

 

 

 

2

 

}

 

 

 

 

 

 

max

{

 

 

 

}

 

 

 

 

 

x y z

 

 

 

 

 

в противном

случае

 

 

xCosx2; y x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Значения заданных переменных a,b и c перераспределите таким образом, что a,b,c станут, соответственно, наименьшим, средним и наибольшим значениями.

Тема 4.4. Программирование алгоритмов разветвляющихся структур Страница 39

4.4.3. Пример выполнения контрольной работы по теме «Программирование алгоритмов разветвляющихся структур»

1. Найти значение переменной r, выполнив все пункты общего задания 4.4.1:

 

2

,sin y,cosz),

если y < x

min(x

r = max(ex+y,lnz2 ),

если x ≤ y ≤ z

x + y + z,

впротивномслучае

 

 

 

 

Формализация задания:

Алгоритм решения данной задачи представляет собой комбинацию вычисления сложной функции с условием и выбора наименьшего (наибольшего) из нескольких значений. Он использует все виды разветвлений и программируется с использованием как однострочных, так и блочных операторов If.

Программный код решения задачи:

Данная задача решается с помощью процедуры-функции Razv(), которая, получив в качестве входных параметров аргументы x,y,z, возвращает вычисленное значение. В соответствии с требованиями задания разобьем решение задачи на несколько отдельных задач и создадим процедуры пользователя, реализующие эти задачи:

1)процедуру-функцию Function Razv( ), вычисляющую значение переменной r;

2)процедуру-функцию Function vvod( ) для ввода действительного числа из объекта типа TextBox;

3)Процедуру-подпрограмму Sub vivod( ) для вывода действительного числа в объект типа TextBox;

4)Событийную процедуру, которая должна содержать вызовы всех составленных

процедур.

 

Option Strict On

 

 

Option Explicit On

 

 

Imports System.Math

 

 

Public Class Form1

 

 

'Функция вычисления значения r разветляющейся задачи

 

 

Function Razv(ByVal x As Double, ByVal y As Double, _

 

 

ByVal z As Double) As Double

 

 

Dim r, r1, r2 As Double

 

 

If y < x Then

 

 

r1 = Sin(y) : r2 = Cos(z) : r = x ^ 2

 

 

If r1 < r Then r = r1

 

 

If r2 < r Then r = r2

 

 

ElseIf y <= z Then

 

 

r1 = Log(z ^ 2) : r2 = Exp(x + y)

 

 

If r1 > r2 Then r = r1 Else r = r2

 

 

Elser = x + y + z

 

 

End If

 

 

End If

 

 

Return r

 

 

End Function

 

 

'Функция ввода значения вещественного типа из TextBox

 

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 40

Function vvod(ByVal T As TextBox) As Double

Return CDbl(T.Text)

End Function

'Процедура вывода результата в TextBox

Sub vivod(ByVal Z As Double, ByRef T As TextBox)

T.Text = CStr(Z)

End Sub

Private Sub Button1_Click(...) Dim x, y, z, r As Double x = vvod(TextBox1)

y = vvod(TextBox2) z = vvod(TextBox3) r = Razv(x, y, z) vivod(r, TextBox4)

End Sub

End Class

2.Даны действительные числа x0 , y0. Определить, принадлежит ли точка с координатами (x0, y0) геометрической фигуре: ромб с вершинами в точках (0,1), (1,0), (0,-1), (-1,0).

Формализация задания:

Прежде всего, построим заданную геометрическую фигуру:

 

 

y

B

 

1

-1

0

C x

A

 

1

-1 D

Известно, что ax+by=c – это уравнение прямой, а ax+by≤c и ax+by≥c – это два множества, одно из которых лежит над прямой (включая точки этой прямой), а другое под этой прямой. Для того чтобы выяснить, какое из неравенств надо взять, необходимо подставить координаты любой точки M(x1, y1) в это неравенство (лучше взять точку M(0,0), чтобы упростить вычисления). Если ее координаты удовлетворяют этому неравенству, значит, эта точка M принадлежит указанному множеству, в противном случае – нет.

Запишем уравнения прямых – AB, BC, CD, DA: AB: x-y=-1; BC: x+y=1; CD: x-y=1; DA: x+y=-1.

Таким

образом,

для того

чтобы точка M0(x0,y0) принадлежала замкнутой

заштрихованнойобласти, необходимо выполнить следующие условия:

x - y -1

 

 

 

 

 

 

| x - y |1

 

x - y 1

 

.

 

1

 

x + y

 

| x + y |1

 

 

 

 

 

 

x + y -1

 

 

 

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 41

Программный код решения задачи:

В соответствии с требованиями общего задания 4.4.1 разобьем решение задачи на несколько отдельных задач и создадим процедуры пользователя, реализующие эти задачи:

1)процедуру-подпрограмму Sub Resh( ),которая возвращает по ссылке строку с ответом на вопрос, принадлежит ли точка с передаваемыми через параметры по значению координатами заданной геометрической фигуре;

2)процедуру-функцию Function vvod( ) для ввода действительного числа из объекта типа TextBox;

3)процедуру-подпрограмму Sub vivod( ) для вывода строки в объект типа TextBox;

4)Событийную процедуру, которая должна содержать вызовы всех составленных

процедур.

Option Strict On

Option Explicit On

Imports System.Math

Public Class Form1

' Процедура решения задачи

Sub Resh (ByVal x0 As Double,ByVal y0 As Double,ByRef z As String) If abs(x0 – y0) <= 1 And abs(x0 + y0) <= 1 Then

z = "Точка принадлежит фигуре"

Else

z = "Точка не принадлежит фигуре"

End If

End Sub

'Функция ввода значения вещественного типа из TextBox

Function vvod(ByVal T As TextBox) As Double

Return CDbl(T.Text)

End Function

'Процедура вывода результата в TextBox

Sub vivod(ByVal Z As String, ByRef T As TextBox)

T.Text = Z

End Sub

Private Sub Button1_Click(...)

Dim x, y As Double

Dim z As String

x = vvod(TextBox1) y = vvod(TextBox2) Resh(x,y,z) vivod(z, TextBox3)

End Sub

End Class

Перейти к Теме 4.3 Теме 4.5 Огл.

Тема 4.4. Программирование алгоритмов разветвляющихся структур

Страница 42

Соседние файлы в папке КЗ-Раз-4-Инф-210700