iOS 實現(xiàn)判斷一個數(shù)組是不是斐波那契數(shù)

- (void)viewDidLoad {
    [super viewDidLoad];
    NSArray *arr = @[@"8", @"2", @"4", @"6"];
    NSLog(@"======%d",[self isPeiBoWithArray:arr]);
   }

- (BOOL)isPeiBoWithArray:(NSArray *)arr {
    
    BOOL nm = YES;
    
    for (int i = 0; i < arr.count - 2; i++) {
        
        if ([arr[i] integerValue] + [arr[i + 1] integerValue] != [arr[i + 2] integerValue]) {
            
            nm = NO;
            break;
            
        }
        if (i == arr.count || [arr[i] integerValue] + [arr[i + 1] integerValue] == [arr[i + 2] integerValue]) {
            
            nm = YES;
           
        }
        
    }

    BOOL isP = NO;
    for (int i = 0; i < arr.count; i++ ) {
        
        isP = [self ispeiboWith:[arr[i] intValue]];
        
        NSLog(@"數(shù)子是不是%d", isP);
        if (isP == NO) {
            
            break;
        }
    }

    if (nm && isP) {
        
        return YES;
        
    }else {
        
        return NO;
    }
    
}

- (BOOL)ispeiboWith:(int)t {
    
    int i = 0;
    BOOL nm = YES;
    
    for (i = 1; [self fib:i] <= t; i++) {
        
        if ([self fib:i] == t) {
            nm = YES;
        }else {
            nm = NO;
        }
    }

    return nm;
}

- (int)fib:(int)n {
    
    if (n == 1 || n == 2) {
        return 1;
    }else {
        return [self fib:n - 1] + [self fib:n - 2];
    }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 工程車基本上已經(jīng)把路消滅掉了!然后到了鹽堿地那邊了。 圖為 吳博士在現(xiàn)場指導 ...
    忘憂農(nóng)場申寶豐閱讀 480評論 0 0
  • js特效 - Day3 一、client家族 1.1 clientWidth和clientHeight 網(wǎng)頁可見區(qū)...
    Jackson_yee_閱讀 464評論 0 1
  • 兒子出題目,說讓寫寫《兩棵樹》中,兩棵被墻分開的樹,等到最后再相見時,彼此會說些什么。) 現(xiàn)在左側(cè)的大樹叫綠夢,右...
    晨光微曉閱讀 555評論 7 4
  • 聽到關(guān)于你的消息 沉默著 盡量表現(xiàn)的自然 然而偶然蹦出的一個字眼 都能頓在心里 久久化不開
    挑骨頭呢閱讀 225評論 1 1

友情鏈接更多精彩內(nèi)容