ios - Swift 错误或编码错误?结构中的 For 循环

标签 ios iphone swift for-loop struct

所以我正在尝试制作一个 iOS 应用程序来检查输入字段中的质数作为练习。我重构了我的代码,使其具有专门用于 isPrime 等计算函数的结构。出于某种原因,我的 for 循环在结构中时无法正常工作。如果我将它重构回 Controller ,它就会起作用。

func isPrime(number:Int) -> Bool{
    let start = 2
    for var i = number-1; i > 1; i-- {
        if (number % i == 0){
            return true
        }
    }
    return false
}    

调试器返回这些输入: 在文本字段中输入 12


数字 = 12

我 = 14070095816392014214


为什么我在 for 循环中的变量 i 这么大?我还测试了在函数中放置一个杂散变量,它做了同样的事情(例如;start_int = 14214124123232423)?

最佳答案

您是否尝试在函数内打印数字变量的值?

你的逻辑好像颠倒了。如果一个数 x 可以被另一个小于 x 的数整除,则 x 不是质数。如果 x 可整除,则返回 true。它应该是假的。

关于ios - Swift 错误或编码错误?结构中的 For 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27727613/

相关文章:

iphone - AVAudioPlayer 在 iOS sdk 的振动模式下播放一点点

ios - 从 Realm 删除项目(Swift 4.2)

iOS:当数据来自网络服务作为响应时,如何获取多个经度和纬度的位置名称?

ios - 抬起键盘时向上移动元素

iphone - 为什么 NSFileManager 无法打开文件?

iphone - 我们可以将 UI 自动化工具与 iPhone 模拟器一起使用吗?

ios - 如何使用 Alamofire/SwiftyJSON 将 JSON 数据加载到单元格中?

ios - 根据 UIsegmented 控件名称执行操作

python - 如何在 RealityKit 中指定双面 Material ?

ios - 添加时 PFQueryCollectionViewController 不显示新数据