永发信息网

关于VB求素数的程序的一些疑问...请高手解答

答案:3  悬赏:70  手机版
解决时间 2021-04-28 09:08
  • 提问者网友:了了无期
  • 2021-04-27 15:01

Private Sub Command1_Click()
x = Val(InputBox("输入一个数值", "检查数值"))
For i = 2 To x - 1
If x Mod i = 0 Then
Text1 = x & "不是素数"
Exit For
Else
Text1 = x & "是素数"
End If
Next
End Sub

 

我觉得我这条程序错了...但是他输出的结果又正确.....我想问下VB中  FOR 语句先执行完IF语句再执行ELSE???

最佳答案
  • 五星知识达人网友:不想翻身的咸鱼
  • 2021-04-27 15:21
不是啊,如果要是满足if的条件就执行了if就不执行else了,要是不满足if的条件就不执行if而执行else了。
全部回答
  • 1楼网友:摆渡翁
  • 2021-04-27 17:00

结果没有错误,不过对1和2不会检查

另外在 for循环结束后再得出是素数的结果要合理些,当然这不影响最后的结果,只是for循环中输出的结果就有问题了

  • 2楼网友:山河有幸埋战骨
  • 2021-04-27 16:35

这个程序是错误的,这样的程序把所有的奇数都看成素数了

Private Sub Command1_Click()

x = Val(InputBox("输入一个数值", "检查数值"))
For i = 2 To x - 1
If x Mod i = 0 Then
Text1 = x & "不是素数"
Exit For
Else

Next i    '把next移到上面来
Text1 = x & "是素数"
End If
End Sub

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯