2,463
社区成员
发帖
与我相关
我的任务
分享
Option Explicit
Sub Main()
Call f(1, 1, 1)
Call f(1, 1, 2)
Call f(1, 2, 1)
Call f(1, 2, 2)
Call f(2, 1, 1)
Call f(2, 1, 2)
Call f(2, 2, 1)
Call f(2, 2, 2)
End Sub
Function f(ByVal m As Long, ByVal n As Long, ByVal a As Long) As String
Dim s As String
If m = 1 Then
s = IIf(n = 1, "1", "√" & n)
Else
s = IIf(n = 1, m, m & "√" & n)
End If
If (m <> 1) And (n <> 1) And (a <> 1) Then
s = "(" & s & ")"
End If
s = s & IIf(a = 1, "", "/" & a)
Debug.Print "f(" & m & ", " & n & ", " & a & ") : " & s
f = s
End Function
f(1, 1, 1) : 1
f(1, 1, 2) : 1/2
f(1, 2, 1) : √2
f(1, 2, 2) : √2/2
f(2, 1, 1) : 2
f(2, 1, 2) : 2/2
f(2, 2, 1) : 2√2
f(2, 2, 2) : (2√2)/2
Option Explicit
Sub Main()
Call f(1, 1, 1)
Call f(1, 1, 2)
Call f(1, 2, 1)
Call f(1, 2, 2)
Call f(2, 1, 1)
Call f(2, 1, 2)
Call f(2, 2, 1)
Call f(2, 2, 2)
End Sub
Function f(ByVal m As Long, ByVal n As Long, ByVal a As Long) As String
Dim s As String
If m = 1 Then
s = IIf(n = 1, "1", "n")
Else
s = IIf(n = 1, "m", "mn")
End If
s = s & IIf(a = 1, "", "/a")
Debug.Print "f(" & m & ", " & n & ", " & a & ") : " & s
f = s
End Function
f(1, 1, 1) : 1
f(1, 1, 2) : 1/a
f(1, 2, 1) : n
f(1, 2, 2) : n/a
f(2, 1, 1) : m
f(2, 1, 2) : m/a
f(2, 2, 1) : mn
f(2, 2, 2) : mn/a