ForeverDev

fibonacci w/ array tracking

Nov 25th, 2014
221
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #import <Foundation/Foundation.h>
  2.  
  3. @interface Fibonacci: NSObject {
  4.         NSMutableArray *calculated;
  5.     }
  6.     - (int) getNumber: (int) n;
  7. @end
  8.  
  9. @implementation Fibonacci
  10.     - (id) init {
  11.         self = [super init];
  12.         calculated = [NSMutableArray array];
  13.         for (int i = 0; i < 2; i++) {
  14.             [calculated addObject: [NSNumber numberWithInt: 1]];
  15.         }
  16.         return self;
  17.     }
  18.     - (int) getNumber: (int) n {
  19.         if (n > calculated.count - 1) {
  20.             [calculated addObject: [NSNumber numberWithLong: [self getNumber: n - 1] + [self getNumber: n - 2]]];
  21.         }
  22.         return [[calculated objectAtIndex: n] intValue];
  23.     }
  24. @end
  25.  
  26. int main() {
  27.     Fibonacci *fib = [[Fibonacci alloc] init];
  28.     for (int i = 0; i < 25; i++) {
  29.         NSLog(@"\nThe %dth number in the Fibonacci Sequence is %d", i, [fib getNumber: i]);
  30.     }
  31. }
Advertisement
Add Comment
Please, Sign In to add comment