Latest 0.0.5
Homepage https://github.com/kirsteins/JKBigInteger
License MIT
Platforms osx , ios , tvos , watchos , requires ARC

JKBigInteger

About JKBigInteger

JKBigInteger is a small library to facilitate easy working with big integers in Objective-C. JKBigInteger is a Objective-C wrapper around LibTomMath C library. It is inspired by the Java’s BigInteger.

Example

JKBigInteger *int1 = [[JKBigInteger alloc] initWithString:@"123"];

NSLog(@"%@ + %@ = %@", int1, int1, [int1 add:int1]);

JKBigInteger *int2 = [[JKBigInteger alloc] initWithString:@"10000001234567890123"];
JKBigInteger *int3 = [[JKBigInteger alloc] initWithString:@"123"];

NSLog(@"%@ - %@ = %@", int2, int3, [int2 subtract:int3]);

JKBigInteger *int4 = [[JKBigInteger alloc] initWithString:@"11111111111111111111"];

NSLog(@"%@ * %@ = %@", int4, int4, [int4 multiply:int4]);

JKBigInteger *int5 = [[JKBigInteger alloc] initWithString:@"10000001234567890123123123123"];
JKBigInteger *int6 = [[JKBigInteger alloc] initWithString:@"123"];

NSLog(@"%@ / %@ = %@", int5, int6, [int5 divide:int6]);

unsigned int numBytesInt5 = [int5 countBytes];
unsigned char bytes[numBytesInt5];

[int5 toByteArrayUnsigned:bytes];

for(unsigned i = 0; i < numBytesInt5; i++)
{
     NSLog(@"Byte %d: %X", i, bytes[i]);
}

JKBigDecimal *dec1 = [[JKBigDecimal alloc] initWithString:@"2015.987"];
JKBigDecimal *dec2 = [[JKBigDecimal alloc] initWithString:@"5.4"];
NSLog(@"%@ + %@ = %@", dec1, dec2, [dec1 add:dec2]);
NSLog(@"%@ - %@ = %@", dec1, dec2, [dec1 subtract:dec2]);
NSLog(@"%@ * %@ = %@", dec1, dec2, [dec1 multiply:dec2]);
NSLog(@"%@ / %@ = %@", dec1, dec2, [dec1 divide:dec2]);
NSLog(@"%@ %% %@ = %@", dec1, dec2, [dec1 remainder:dec2]);

JKBigDecimal *dec3 = [[JKBigDecimal alloc] initWithString:@"0.99"];
NSLog(@"%@ pow 365 = %@", dec3, [dec3 pow:365]);

Installation

You can easily add JKBigInteger to your project with CocoaPods by adding it to your Podfile:

pod 'JKBigInteger', '~> 0.0.1'

Read the ‘Pod’ Syntax Reference for more details.

Credits

JKBigInteger was created by Jānis Kiršteins.
JKBigDecimal was created by Midfar Sun.

License

JKBigInteger is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "JKBigInteger2",
    "version": "0.0.5",
    "requires_arc": true,
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "homepage": "https://github.com/kirsteins/JKBigInteger",
    "authors": "Ju0101nis Kiru0161teins",
    "summary": "Library for working with big integers in Objective-C.",
    "description": "JKBigInteger is a small library to facilitate easy working with big integers in Objective-C. JKBigInteger isna Objective-C wrapper around LibTomMath C library. It is inspired by the Java's BigInteger.",
    "social_media_url": "https://twitter.com/janiskirsteins",
    "source": {
        "git": "https://github.com/astruts/JKBigInteger.git",
        "tag": "0.0.5"
    },
    "source_files": "JKBigInteger/**/*.{c,h,m}",
    "platforms": {
        "osx": null,
        "ios": null,
        "tvos": null,
        "watchos": null
    }
}

Pin It on Pinterest

Share This