Учеб_мет_пос_Пустовалова_Кишкурно
.pdfIf x < 0 And n < 0 Then y = n * x + 2
MsgBox ((“y=” & y) 'Вывод результата
End Sub
Пример 3 программы вычисления значения функции y с вложенным оператором If:
x |
5, |
при x |
0 |
|
|
|
|
|
|
y |
3x, |
при 0 |
x 5 |
|
x2 , |
при x |
5 |
Private Sub CommandButton1_Click() Dim x As Single, y As Single
x = Val(InputBox("Ввелите x "))
If x<0 Then y =x+5 Else If x<=5 Then y=Sqr(3*x) Else y =x^2 MsgBox (y)
End Sub
Пример 4 (использование блочного оператора If). Вычислить зна-
чения y = sin2x, w = ctgx, если х < 5; y = 1–sinx, w = arctgx, если х 5. x = {9; 0.1; -4; 5; 12}
Private Sub CommandButton1_Click() Dim x As Single, y As Single, z As Single Dim w As Single, I As Integer
For i=1 to 5
x = Val(InputBox("Введите значение х"))
'Проверка условий и расчет значений
If x > 5 Then
y = Sin(x)^2
w = cos(x)/sin(x) Else
y = 1 - Sin(x) w = Atn(x) End If
MsgBox (“x=” & x & “ y=” & y & “ w=” & w)
Next End Sub
Пример 5. Вычислить значение функции :
cos2 ( jx), |
xj |
2s |
, x = 1,7 s = 5,2 значение j задать |
||
v 2 |
tg( jx), |
2s xj 3s |
|||
самостоятельно. |
|||||
|
|
|
|
||
5 |
ex/ 2 , |
xj |
3s |
|
51
Оформим Лист2 согласно образцу (рис. 6.1). Переименуем «Лист2» в «Условный оператор», вставим расчетные формулы и введем исходные данные.
Рис. 6.1. Образец оформления программы с разветвлением на листе Excel
Для кнопки «Расчет If» напишем следующую процедуру:
Private Sub CommandButton1_Click()
Worksheets("Условный оператор").Range("c2") = "Вычисления с раз-
ветвлением" ‘вносит текст в ячейку «С2» листа «Условный оператор»
Dim x As Single, s As Single, v As Single, j As Single x=Val(InputBox(“Введите значение х”)) s=Val(InputBox(“Введите значение s”))
j = Worksheets("Условный оператор ").Range("i19")
If x * j < 2 * s Then v = Cos(x * j) ^ 2 Else If x * j >= 2 * s And _ x * j <= 3 * s Then v = 2 * Tan(j * x) Else v = 5 - Exp(x / 2)
MsgBox ("Значение v=" & Format(v, "##.####"))
End Sub
Для проверки результата вычисления надо ввести в ячейку D23 формулу:
=ЕСЛИ(D19*I19<2*F19;COS(I19*D19)*COS(I19*D19);ЕСЛИ(И (D19*I19>=2*F19;D19*I19<=3*F19);2*TAN(I19*D19);5- EXP(D19:D19/2)))
Результат вычислений, полученный с помощью формул Excel и процедуры VBA, должен совпасть.
52
6.3.Содержание заданий
1.Выполнить приведенные выше примеры программ с разветвлением.
2.Составить программу по условиям, приведенным в табл. 6.1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 6.1 |
||
№ |
|
|
|
|
|
|
|
|
|
Формула для вычислений |
|
Исходные данные |
||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a |
1,774; |
|
|
|
|
|
|
a |
|
m2 |
|
x2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m |
5; x |
3,2(0,2)5 |
|
|
||||||||||||||
|
|
|
(a |
|
x) |
m |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
y |
1, |
|
|
|
|
|
|
|
|
|
|
|
| y | |
1 |
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
z |
|
|
sin2 y, |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| y | 1 |
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
2 |
|
|
|
|
a |
bi, |
|
|
|
|
|
|
|
|
|
|
i |
3b |
|
|
|
|
b |
0, 05; a |
1, 72; |
|
|
|||||||||||
|
d |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
tgb |
ai, |
|
|
|
|
|
i |
|
|
3b |
|
i |
5(2)5 |
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
da |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
z |
|
|
|
|
|
|
|
|
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
e1 d |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
(3ab |
e4 |
|
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
100 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
ln( |
|
|
|
i |
) |
|
|
|
|
|
|
|
|
|
x |
8;1,99; |
4; 0, 2 ; |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
s |
e |
a x |
|
|
|
|
|
|
xm |
|
|
|
|
|
|
|
|
a |
105 10 |
4 |
; |
|
|
||||||||||||||
|
|
|
|
|
|
|
ln2 |
|
m |
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m |
4; i |
7 |
|
|
|
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
p |
|
|
( is)2 , |
|
|
|
|
|
|
|
|
s |
|
2x |
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
sin( |
6s), |
s |
2x |
|
|
|
|
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
|
|
|
(ctgy)2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
2, 75; a |
|
5,5 10 |
4 |
; |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
( j |
2ay) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
j |
6; |
8,1; 15; 4, 2 |
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
j , |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
e |
|
|
|
|
|
|
|
x |
y |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
|
z |
|
|
|
0,5 y |
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
( |
) |
, |
|
|
|
|
|
|
x |
|
y |
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
5 |
|
|
|
|
|
|
sin ( |
|
j |
) |
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
y |
1, 4 10 3 ; x 0, 2; |
|
|
||||||||
p |
|
|
e |
|
|
|
|
|
|
|
ln ( |
|
|
x |
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
y ) |
|
|
m |
4; j |
5(2)11 |
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
p |
|
, |
|
|
|
|
|
|
|
|
|
p |
|
|
y2 |
|
|
|
|
|
|
|
|
|||||||
|
q |
|
|
|
|
|
m |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
2x |
|
|
|
, |
|
|
|
|
|
|
p |
y2 |
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
(j |
|
|
|
|
p) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
53
Продолжение табл. 6.1
№ |
|
|
|
|
|
|
|
|
|
|
|
|
Формула для вычислений |
|
Исходные данные |
|||||||||||||||||||||||||||
6 |
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a |
4,2; |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
d |
i |
|
|
|
(t |
i) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
t |
5; 1,75; |
3; 1; 2,9; |
1 ; |
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
4 |
|
|
|
|||||||
|
(1 |
|
|
|
|
|
2a |
2 |
) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
t |
i, |
|
|
|
|
|
|
|
d |
|
|
|
t(t |
i) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
f |
|
|
et |
|
d |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
9(a i), |
|
d |
|
|
|
t(t i) |
|
|
|
|
|
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
7 |
x |
|
tg(a2 |
1) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
c |
3, 7(0,1)5; |
|
|
|||||||||||||||
|
|
|
|
(d |
|
|
|
1) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
d |
51, 9 10 5 ; |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
y |
|
|
ak |
|
|
|
d , |
|
|
|
|
|
|
3x |
ac |
|
|
|
|
|
a |
4; k |
1 |
|
|
||||||||||||||||
|
|
|
cos(ak) ea 1, |
|
|
3x |
ac |
|
|
|
|
|
||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||
8 |
t |
|
|
|
|
|
|
|
|
ai |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b |
3; i 8(4)24; |
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(a2 |
|
|
|
b) e a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
c 6 10 4 ; a 6 |
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
x |
4,8 10 3 |
|
|
|
ia, |
|
t |
|
|
|
5c |
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
a |
|
|
i2 t, |
|
|
|
|
t |
5c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
9 |
s |
|
|
|
|
|
|
w |
|
|
|
|
|
|
|
|
ln | w | |
|
|
|
|
|
|
|
|
|
|
|
w |
4 10 3 ; |
|
|
||||||||||
|
|
(w2 |
|
|
|
j) |
|
|
|
|
|
|
|
|
|
|
|
|
|
j |
1(0,5)5; |
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
e j , |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f |
0, 25 |
|
|
|
||||||
|
|
|
|
|
s |
|
|
|
|
|
|
|
|
s |
3 f |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
y |
|
|
|
|
|
|
s |
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
, |
|
|
|
|
|
s |
3 |
|
|
f |
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
(w |
|
|
|
1) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m |
|
|
|
|
|
a |
1, 2; k |
3; |
|
|
|
|
|
|
|
|
|
|
0,2x |
|
k, |
x |
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 10 3 ; |
|
|
||||||||||||||||||||
|
w |
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
x |
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
e |
|
2 x k |
, |
|
|
|
|
|
|
x |
|
|
|
|
|
m |
4(0, 2)6 |
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
v |
|
|
|
|
|
w3 |
| |
|
x |
|
|
|
a | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
ln(1 |
|
|
a) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
|
|
|
|
|
|
x |
|
|
|
|
|
(x |
|
|
a) |
|
|
|
|
|
|
|
|
|
|
|
a |
1, 33 10 3 ; x |
6,8; |
|
||||||||||
d |
|
|
e j |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k |
6; j |
0, 2; 1; |
3; |
6,1 |
|||||||
|
|
|
|
|
|
|
|
|
|
ln x |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
|
3,6 |
|
|
d |
x, |
|
|
|
|
|
|
d |
|
k |
|
a |
|
|
|
|
|
||||||||||||||||||||
|
b |
|
|
|
|
|
|
|
|
|
|
a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
sin( |
|
|
|
|
1), |
|
|
|
d |
|
|
k |
|
|
a |
|
|
|
|
|
||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
12 |
c |
2tg( |
|
f |
) |
|
|
|
ln t |
|
|
|
|
|
|
|
|
|
|
|
f |
125 10 6 ; |
|
|
||||||||||||||||||
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
1,711; t |
1,1(0,1)2; |
|
||||||||||||||||||||||
|
d |
|
|
|
y |
e 2t |
|
|
|
f , |
c |
3 |
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
y |
|
|
|
y3 , |
|
|
|
|
|
|
c |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54
Окончание табл. 6.1
№ |
|
|
|
|
|
|
|
|
Формула для вычислений |
|
Исходные данные |
|||||||||
13 |
y |
cos |
2 |
|
x2 |
|
|
|
|
|
|
a |
1, 055; x |
0, 6; |
|
|||||
|
| |
x | |
|
|
|
|
|
|
n |
6(2)14 |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
| y |, |
|
|
|
|
|
y |
a |
x n |
|
|
|
|
||||||
|
z |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
|
e |
y , |
|
y |
a x n |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|||||||||||||
14 |
w |
|
s3 |
e |
2s |
|
|
|
s |
5, 2; |
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
5; 0, 04; |
2,1; 6 |
; |
|
|
cos2 ( jx), |
|
2s |
xj |
j |
10, 4 104 |
|
|
|||||||||||
|
|
|
|
|
|
|
||||||||||||||
|
v |
2 |
|
tg( jx), |
|
(2s |
xj) и (xj 3s) |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
5 |
|
e 2 , |
|
|
|
xj |
3s |
|
|
|
|
|
||||||
15 |
|
|
|
|
|
|
|
|
s |
|
|
|
|
|
|
x |
4 10 3 ; s |
1,1; |
|
|
b |
12s |
|
e 2 |
(x |
j) |
|
|
|||||||||||||
|
|
|
j |
4(0,5)7 |
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
z |
|
|
|
2xj |
b, |
|
b |
1, 5 |
|
|
|
|
|||||||
|
|13x |
|
|
j | b, |
|
b |
1, 5 |
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7. ВЫЧИСЛЕНИЕ СУММ, ПРОИЗВЕДЕНИЙ, ЭКСТРЕМУМОВ
Рассмотрим примеры, демонстрирующие возможности использования в программах операторов цикла и условных операторов.
7.1. Примеры вычисления сумм и произведений
Пример 1. Программа вычисления суммы элементов b = {5, 2; 4,5; 1; 2,9; 3}.
Sub CommandButton1_Click()
Dim b As Single, s As Single, i As Integer s = 0
For i = 1 To 5
b = Val(InputBox(«Введите элемент массива b»)) s = s + b
Next
MsgBox (“Сумма элементов массива равна= ” & s)
End Sub
Здесь элементы b вводятся с клавиатуры по одному числу, сумма чисел вычисляется в переменной s.
55
Пример 2. Программа вычисления произведения элементов
t = {0,4; –1,5; 2,8; 3; 0,9; 7,3} и значения w в соответствии с фор-
мулой: w 2 |
6 sin (tk ) |
|
k 1 |
Sub CommandButton2_Click() Dim t As Single, w As Single Dim p As Single, k As Integer P=1
For k = 1 To 6
t = Val(InputBox(“t=”)) p=p*sin(t(k))
Next w=2+p MsgBox w End Sub
7.2. Одномерные массивы. Вычисление экстремумов
Массивами называются совокупности данных одного типа, объединенные одним именем. Элементы массивов называются индексированными переменными.
Одномерные массивы имеют один индекс, например a(i), где a – имя массива, i – номер элемента массива.
Массивы до их использования в программе должны быть объявлены в операторе Dim, например:
Dim a(5) As Single
Здесь определено, что будет использоваться одномерный массив с 6-ю элементами вещественного типа одинарной точности. Число в скобках указывает номер последнего доступного для использования номера индекса. Нумерация индексов начинается с нуля.
После объявления элементы массива могут использоваться в выражениях подобно простым переменным, но с указанием индекса в круглых скобках. Например, после приведенного выше объявления массива а(i) в программном коде можно обращаться к следующим элементам массива: а(0), а(1), а(2), а(3), а(4), а(5).
Если необходимо использовать определенную нумерацию элементов массива, например с 5 до 10, то это указывается при объявлении массива следующим образом:
Dim a(5 to 10) As Single
56
После этого в программном коде будут доступны следующие элементы массива: а(5), а(6), а(7), а(8), а(9), а(10).
Пример 3. Программа определения максимального элемента массива d = {12; 0,4; 30; –2; 5; 9,3} и номера этого элемента.
Sub CommandButton2_Click()
Dim d(1 To 6) As Single, max As Single, n As Integer, i As Integer For i = 1 To 6
d(i) = Val(InputBox(«Введите элемент массива d»))
Next
max = d(1) : n = 1 For i = 1 To 6
If d(i) > max Then max = d(i): n = i Next
MsgBox (“Макс. знач. =” & max & “ имеет элемент с номером ” & n)
End Sub
Пример 4. В таблице на рис. 7.1 представлены значения температуры воздуха. Необходимо определить среднюю, минимальную и максимальную температуры, а также количество дней с положительной и отрицательной температурой.
Для решения этой задачи оформим лист Excel согласно образцу (рис. 7.1). Переменные можно объявить в разделе General (на листе программы в самом верху перед первым Sub), и тогда они могут быть использованы для расчета в разных процедурах рабочей книги:
Dim i As Integer, Ndata As Integer
Dim Nplus As Integer, Nminus As Integer
Dim sum As Single, mx As Single, disp As Single Dim min As Single, max As Single, x As Single
Процедура для кнопки «Среднее значение» (расчет средней температуры):
Private Sub CommandButton1_Click() i = 6
Do Until Worksheets("Лист1").Cells(i, 4) = "" i = i + 1
Loop
Ndata = i – 1 ‘количество расчетных дней ‘Вычисление суммарной температуры
sum = 0 ‘ ячейка с именем Sum обнуляется ‘ цикл для просмотра всех строк таблицы
57
For i = 7 To Ndata
x = Worksheets("Лист1").Cells(i, 4) ‘ ввод значения температуры из i-й строки 4-го столбца
sum = sum + x ‘суммирование значений температуры
Next i
mx = sum / (Ndata - 6) ‘определение среднего значения
Worksheets("Лист1").Cells(Ndata + 2, 4) = "Средняя температура"
Worksheets("Лист1").Cells(Ndata + 2, 7) = mx End Sub
Рис. 7.1. Образец оформления программы расчета температуры
Для кнопки «min» (расчет минимальной температуры) процедура имеет вид:
Private Sub CommandButton2_Click() Dim l as Integer
min = Worksheets("Лист1").Cells(Ndata - 6, 4)
l=7 ‘номер строки, с которой начинается таблица
For i = 7 To Ndata
x= Worksheets("Лист1").Cells(i, 4) If x < min Then
min = x
58
l=i ‘запоминание номера строки с минимальной температурой
End If Next i
Worksheets("Лист1").Cells(Ndata+3,4) = "Минимальная температура" Worksheets("Лист1").Cells(Ndata + 3, 7) = min Worksheets("Лист1").Cells(Ndata + 3, 9) = "Была " Worksheets("Лист1").Cells(Ndata + 3, 10) = Cells(l, 3)
End Sub
В данной процедуре переменной min присваивается значение температуры из первой строки таблицы. Затем каждое очередное значение сравнивается со значением min. Если очередное значение температуры оказывается меньше min, то это число посылается в min.
Процедура для кнопки «max» (расчет максимальной температуры):
Private Sub CommandButton3_Click()
min = Worksheets(" Лист1 ").Cells(Ndata - 6, 4) For i = 7 To Ndata
x = Worksheets(" Лист1 ").Cells(i, 4) If x > max Then max = x
Next i
Worksheets(" Лист1 ").Cells(Ndata + 4, 4) = " Максимальная температура " Worksheets(" Лист1 ").Cells(Ndata + 4, 7) = min
End Sub
Для кнопки «>0 и <0» (расчет количества дней с положительной и отрицательной температурой):
Dim k1 As Integer, k2 As Integer k1 = 0: k2 = 0
For i = 7 To Ndata
x = Worksheets(" Лист1 ").Cells(i, 4)
‘расчет количества дней с положительной температурой k1 и отрицательной температурой k2
If x > 0 Then k1 = k1 + 1 Else k2 = k2 + 1 Next
Worksheets(" Лист1 ").Cells(Ndata + 5, 4) = "Кол. дней с плюсовой темп." Worksheets(" Лист1 ").Cells(Ndata + 5, 7) = k1
Worksheets(" Лист1 ").Cells(Ndata + 6, 4) = " Кол. дней с минусовой темп." Worksheets(" Лист1 ").Cells(Ndata + 6, 7) = k2
End Sub
59
7.3.Содержание заданий
1.Разработать программу по условиям, приведенным в табл. 7.1.
2.Создать кнопку «Сумма» и написать программу, вычисляющую сумму элементов массива из табл. 7.1.
3.Для командной кнопки «Произведение» создать и выполнить программу, вычисляющую произведение элементов массива.
4.Для командной кнопки «Максимум» создать и выполнить программу, вычисляющую максимальный элемент массива.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 7.1 |
№ |
|
|
Формула для вычислений |
|
|
Исходные данные |
||||||||||||||||
|
h |
d |
|
|
n |
|
|
|
2 |
|
|
|
n |
5; d 12,55 10 4 ; |
|
|||||||
1 |
i 1 |
ai |
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
a |
0,8; 4; 0,17; 2; 0,9;1 |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
g |
c |
m (b |
j |
1)2 |
|
|
|
m |
4; c |
|
0, 0045; |
|
|||||||||
|
|
|
|
|
j 1 |
|
|
|
|
|
|
|
|
b |
0, 49; 0,55; |
2; |
0, 71 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
z |
0,1 x |
|
|
|
m (x |
2)2 |
m |
5; |
|
|
|
|
|||||||||
|
|
|
|
|
3 |
|
|
i |
1 |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
2,1; 0, 6; 1,1; 2, 7; 4 |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
f |
|
2 k |
|
|
|
|
|
|
|
|
k |
6; |
|
|
|
|
|||||
4 |
g |
|
|
|
|
f |
|
|
|
|
|
|
|
|
a |
2, 3; 7; |
7, 2; 4; 9 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
5 ( |
ai |
) |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
i 1 |
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
a |
|
vi , |
|
vi 0 |
a |
1, 75; b |
|
4,15; |
|
|||||||||
5 |
wi |
|
|
|
|
b |
, |
|
|
vi |
0 |
v |
1;1,5; |
|
4; |
12,9; 3 |
||||||
|
|
|
|
|
vi |
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
n |
|
|
|
|
|
|
|
|
|
|
|
n |
5; y |
2; 3; |
1,5; |
2;1 ; |
||||
|
q |
|
(xi |
|
yi ) |
|
|
|||||||||||||||
6 |
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
i 1 |
|
|
|
|
|
|
|
|
|
|
|
x |
2, 7; |
|
5; 4; 3,5; |
7, 7 |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
n |
6; b |
2,3; 4; 0,5; 2; 3; 9 ; |
|||
|
ci |
|
|
ai |
|
bi |
|
|
|
|
||||||||||||
7 |
|
|
n |
c |
|
|
|
|
|
|
|
|
a |
0,5; 2; 2,5;1; 0; 0, 7 |
||||||||
|
d |
( |
|
|
i |
) |
|
|
|
|
|
|
||||||||||
|
|
i |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
i 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
8 |
d |
n1 a |
|
c |
|
n2 (b |
1)2 |
n1 |
6; n2 |
5; b |
19;1; 24; 4, 2; 8 ; |
|||||||||||
|
|
|
|
|
|
i |
|
|
|
|
i |
|
|
a |
0,8;12; |
4; 39, 2; 3; 0, 4 |
||||||
|
|
i 1 |
|
|
|
|
|
|
|
i 1 |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
9 |
ai |
|
(d |
|
|
e xi |
|
sin xi ) |
d |
51, 05 10 4 ; |
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
( |
|
5 |
|
|
|
cos xi ) |
x |
0, 7; 6; |
7; 0, 9; |
0, 2; 1 |
||||||||||||
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60