а) для цикла с параметром
Private Sub Command1_Click()
S = Val(S.Text)
P = Val(P.Text)
Z1 = S
Z = Str(Z1)
For i = 1 To 12
Z = Z + S * P / 100
Next i
MsgBox Z, , «Вывод суммы денег, которую сотрудник получит за год»
End Sub
б) для цикла с предусловием
Private Sub Command1_Click()
S = Val(S.Text)
P = Val(P.Text)
Z1 = S
Z = Str(Z1)
i = 1
Do While i Z = Z + S * P / 100
i = i + 1
Loop
MsgBox Z, , «Вывод суммы денег, которую сотрудник получит за год»
End Sub
в) для цикла с постусловием
Private Sub Command1_Click()
S = Val(S.Text)
P = Val(P.Text)
Z1 = S
i = 1
Z = Str(Z1)
Do
Z = Z + S * P / 100
i = i + 1
Loop While i MsgBox Z, , «Вывод суммы денег, которую сотрудник получит за год »
End Sub
Задача: С клавиатуры вводятся числа K,L,M. Найдите максимальное из этих чисел.
VBA в Excel. Циклы.
Private Sub Command1_Click()
Dim K1, L1, M1 As Single
K1 = Val(K.Text)
L1 = Val(L.Text)
M1 = Val(M.Text)
If K1 > L1 And K1 > M1 Then
MsgBox «K-max», , «Среди чисел K,L,M»
Else
If L1 > M1 Then
MsgBox «L-max», , «Среди чисел K,L,M»
Else
If M1 > L1 Then
MsgBox «M-max», , «Среди чисел K,L,M»
End If
End If
End If
End Sub
Источник: mmbuilder.ru
Как составить блок схему по программе vba
Нужно составить блок-схему на vba к этим трем решенным задачам, уважаемые форумчане, нужна ваша помощь, времени нету разобраться, отблагодарю, чем смогу.
Function Task(A() as integer) as integer
S%=0
max%=A(1,1)
for i%=1 to Ubound(A,1)
for j%=1 to Ubound(A,2)
if i%=j% then S%=S%+A(i%,j%)
if A(i%,j%) > max% then max%=A(i%,j%)
next j%
next i%
Task=S%-max%
End Function
Sub asdf()
Dim mARR(), ArrTOP(), ArrBOTT(), i, n
n = CLng(InputBox(«Write down your size», , 10))
ReDim mARR(1 To n, 1 To n): ReDim ArrTOP(1 To n * n): ReDim ArrBOTT(1 To n * n)
n = 0: Randomize:
For i = LBound(mARR, 1) To UBound(mARR, 1)
For j = LBound(mARR, 2) To UBound(mARR, 2)
mARR(i, j) = Int((20 — (-10) + 1) * Rnd() + (-10))
Select Case j
Case Is > i: n = n + 1: ArrTOP(n) = mARR(i, j)
Case Is < i: k = k + 1: ArrBOTT(k) = mARR(i, j)
End Select
Next ‘j
Next ‘i
MsgBox «Top. Max:» Application.Max(ArrTOP) _
«Bottom. Max:» Application.Max(ArrBOTT)
If Application.Max(ArrTOP) > Application.Max(ArrBOTT) Then _
MsgBox «The TOP more than the BOTTOM»
Самый подробный урок про Блок-схемы, Понимание, Чтение и Создание блок-схем
If Application.Max(ArrTOP) < Application.Max(ArrBOTT) Then _
MsgBox «The BOTTOM more than the TOP»
If Application.Max(ArrTOP) = Application.Max(ArrBOTT) Then _
MsgBox «Equal to each other»
End Sub
Sub pr4()
Dim i, a(), SumUp As Double, SumDown As Double
Cells.Clear
i = 10: j = 10 ‘размерность матрицы
With [a1].Resize(i, j)
.Value = «=RANDBETWEEN(150,350)»: .Value = .Value
a = .Value
End With
For i = 1 To UBound(a, 1)
For j = 1 To UBound(a, 2)
Select Case j
Case Is < i
SumDown = SumDown + a(i, j)
Case Is > i
SumUp = SumUp + a(i, j)
End Select
Next
Next
MsgBox «Сумма выше главной диагонали » SumDown, «больше», «меньше») на » https://www.programmersforum.ru/showthread.php?t=248211″ target=»_blank»]www.programmersforum.ru[/mask_link]
Как составить блок схему по программе vba
1)множественное ветвление:
Private Sub CommandButton1_Click()
Dim f, y, z As Single
x = Val(TextBox1.Text)
z = (Abs(z — 2 — Sin(x))) ^ (1 2)
If x >= 5 Then y = z * Sin(x — 1)
If x < 5 And x >= 0 Then y = z * (x — 1)
f = y + Log(Abs(10 — (x ^ 2) — x))
Label2.Caption = «f= » + Str(f)
2)ветвление:
Dim a, b, c As Double
Private Sub CommandButton1_Click()
a = Mid(CSng(TextBox1.Text), 1, 1)
b = Mid(CSng(TextBox1.Text), 2, 1)
c = Mid(CSng(TextBox1.Text), 3, 1)
If a = b Then f = f + 1
If a = c Then f = f + 1
If b = c Then f = f + 1
If f = 1 Then f = f + 1
Private Sub Label1_Click()
Private Sub TextBox1_Change()
Источник: www.tehnari.ru