objective-c - 我希望程序产生一个值,但它没有这样做并以响应代码 0 退出

标签 objective-c xcode compiler-errors runtime-error

关闭。这个问题需要details or clarity .它目前不接受答案。












想改进这个问题?通过 editing this post 添加详细信息并澄清问题.

8年前关闭。




Improve this question




好吧,我今天一直在做项目欧拉问题,我看到了问题 3,并开始在其中使用 Objective-C 进行编程,它似乎无法正常运行。下面是我的代码,请检查并告诉我我犯了什么错误。我目前正在使用 Xcode,脚本的目的是返回输入的数字最大素数。

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

@autoreleasepool {
    int number,primefactor, x;
    bool isPrime;
    NSLog (@"Please enter a number:");
    scanf ("%i", &number);
    for (primefactor = number;primefactor > 0;--primefactor)
    {
        if (number % primefactor == 0)
        {
            for (x = 2;x < primefactor;++x)
            {
                if (primefactor % x == 0)
                {
                    isPrime = FALSE;
                }
            }
        }
        if (isPrime == TRUE)
        {
            NSLog (@"%i", primefactor);
            break;
        }
    }
}
return 0;
}

我希望程序返回一个值,但它没有这样做并以退出代码 0 退出。您可以在 http://tinypic.com/r/24d28hv/8 处查看输出。

最佳答案

您的代码中的错误是 isPrime必须设置为 TRUE每次之前primefactor检查候选人:

for (primefactor = number;primefactor > 0;--primefactor)
{
    if (number % primefactor == 0)
    {
        bool isPrime = TRUE; // <---- HERE
        for (x = 2;x < primefactor;++x)
        {
            if (primefactor % x == 0)
            {
                isPrime = FALSE;
            }
        }
        if (isPrime == TRUE)
        {
            NSLog (@"%i", primefactor);
            break;
        }
    }
}

(注意解决http://projecteuler.net/problem=3为数字600851475143
您必须使用更大的数据类型。该数字不适合 32 位整数。
您可能还必须找到更有效的算法。)

关于objective-c - 我希望程序产生一个值,但它没有这样做并以响应代码 0 退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22793403/

相关文章:

ios - 通过界面构建​​器转到另一个 Storyboard

ios - 如何使 UITextView 适合 xcode 中的形状

iphone - 使用 NSDateFormatter 解析 Twitter 字符串

iphone - 我应该在我的 Cocos2d 应用程序中的什么地方实现我的 facebook ios sdk 代码?

iphone - 将背景button2更改为button1 iPhone

iphone - 从不兼容类型 'id<MFMessageComposeViewControllerDelegate>' 分配给 'MainViewController *'

ios - 什么 NSDateFormat 是 1991-07-26T05 :45:50. 163

ios - xcode 7 + 核心数据 : cannot import module being compiled

ios - Xcode 中的错误 "Use of undeclared type"不会消失

objective-c - Xcode 8.1 未检测到何时未定义 Objective-c 方法