数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: ysr

目前难于分解的合数

[复制链接]
 楼主| 发表于 2025-10-8 11:18 | 显示全部楼层
本帖最后由 ysr 于 2025-10-9 04:22 编辑

Private Function mbc2(sa As String, sb As String, sd As String) As String 'chengfa jingdu daifh
Dim ja
If Val(sa) = 0 Or Val(sb) = 0 Then
mbc2 = 0
Else
ja = MbC(Trim(sa), Trim(sb))


mbc2 = Left(ja, Val(Len(ja) - sd))

End If
End Function
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-10-8 11:19 | 显示全部楼层
Private Function mcc2(sa As String, sb As String, sd As String) As String 'chufa jingdu daifh
Dim ja

ja = MCC1(Trim(sa) & String(sd, "0"), Trim(sb))
If InStr(ja, "/") = 0 Then
mcc2 = ja
Else

mcc2 = Left(ja, InStr(ja, "/") - 1)

End If
End Function

Private Function qdqiandao0(sa As String) As String
Do While Left(sa, 1) = "0"
sa = Mid(sa, 2)
Loop
If Len(sa) = 0 Then
qdqiandao0 = 0
Else
qdqiandao0 = sa
End If
End Function
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-10-8 11:20 | 显示全部楼层
Private Function jsmssushu(sa As String) As String
Dim B
B = 1
Do While c <= sa - 1
B = MbC(Trim(B), 2)
c = c + 1
Loop
jsmssushu = MPC(Trim(B), 1)
End Function

Private Function fenjieyinzi0(a As String) As String
x = 3
Do While InStr(MCC(Trim(a), 2), "/") = 0 And MBJC(Trim(a), 4) >= 0

  
If B = 0 Then
fenjieyinzi0 = fenjieyinzi0 & "2"
B = 1
Else
fenjieyinzi0 = fenjieyinzi0 & "*2"
End If
a = MCC(Trim(a), 2)
k = a
  
Loop

Do While MBJC(Trim(a), "0001") > 0
Do While MBJC(Trim(x), zhengchuqy(MBBC(Trim(a)))) <= 0
Do While InStr(MCC1(Trim(a), Trim(x)), "/") = 0 And MBJC(Trim(a), MbC(Trim(x), Trim(x))) >= 0
  
If B = 0 Then
fenjieyinzi0 = fenjieyinzi0 & x
B = 1
Else
fenjieyinzi0 = fenjieyinzi0 & "*" & x
End If
a = MCC1(Trim(a), Trim(x))
Loop
  
x = MPC1(Trim(x), 2)
Loop
  
k = a
a = 1
Loop
  
If B = 1 Then
fenjieyinzi0 = fenjieyinzi0 & "*" & k
Else
fenjieyinzi0 = "这是一个质数"
End If
End Function



Private Function fenjieyinzi(sa As String) As String
Dim x, a, B, k As String
a = Val(sa)

x = 3
If a <= 1 Or a > Int(a) Then
If a = 1 Then
fenjieyinzi = "它既不是质数,也不是合数"

Else
MsgBox "error"
End If
  
Else

Do While a / 2 = Int(a / 2) And a >= 4
  
If B = 0 Then
fenjieyinzi = fenjieyinzi & "2"
B = 1
Else
fenjieyinzi = fenjieyinzi & "*2"
End If
a = a / 2
k = a
  
Loop

Do While a > 1
Do While x <= Sqr(a)
Do While a / x = Int(a / x) And a >= x * x
  
If B = 0 Then
fenjieyinzi = fenjieyinzi & x
B = 1
Else
fenjieyinzi = fenjieyinzi & "*" & x
End If
a = a / x
Loop
  
x = x + 2
Loop
  
k = a
a = 1
Loop
  
If B = 1 Then
fenjieyinzi = fenjieyinzi & "*" & k
Else
fenjieyinzi = "这是一个质数"
End If
  
  
  
  

End If

End Function
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2025-10-14 17:44 , Processed in 0.075717 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表