Office中国论坛/Access中国论坛

标题: 如何判断质合 [打印本页]

作者: lingjiang    时间: 2011-8-2 21:40
标题: 如何判断质合
本帖最后由 lingjiang 于 2011-8-2 21:40 编辑

本人在编程时遇到难题,如附件,想判断指定数字是质数还是合数,是质数在质合判断列显示质数,反之则显示合数,请大家赐教!
作者: roych    时间: 2011-8-2 23:37
看来LZ要加强循环的学习了……
  1. Sub test()
  2. x = InputBox("请输入您要判断的数字")
  3.   For i = 2 To Int(x ^ (1 / 2))
  4.       If Val(x) Mod i = 0 Then
  5.         MsgBox ("此数为合数")
  6.         Exit Sub
  7.       End If
  8.   Next i
  9.   MsgBox ("此数为质数")
  10. End Sub
复制代码

作者: lingjiang    时间: 2011-8-3 07:46
此数据库共分两列,数字列输入数字,质合列为判断列,该数是质数还是合数,其结果都要在质合列显示出来

作者: roych    时间: 2011-8-3 13:10
很简单啊,把这个sub改成Function。做查询的时候,把函数引用进去就好了:
  1. Function NumType(x As Long) As String
  2. Dim i As Long
  3. If x = 1 Then
  4.     NumType = "既非质数亦非合数"
  5. Else
  6.     For i = 2 To Int(x ^ (1 / 2))
  7.         If x Mod i = 0 Then
  8.             NumType = "合数"
  9.             Exit Function
  10.         End If
  11.     Next i
  12.     NumType = "质数"
  13. End If
  14. End Function
复制代码

作者: todaynew    时间: 2011-8-3 15:28
roych 发表于 2011-8-3 13:10
很简单啊,把这个sub改成Function。做查询的时候,把函数引用进去就好了:

返回逻辑值为好




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3