[fpc-pascal] Super Large Integer Math Calculations

noreply at z505.com noreply at z505.com
Tue Jul 11 15:05:12 CEST 2017


On 2017-07-07 17:08, Bart wrote:
> On 7/7/17, noreply at z505.com <noreply at z505.com> wrote:
> 
>> For integers beyond 64 bit, or even beyond 32 bit on a 64 bit machine,
>> why can't the math be broken down into peices the way a human does it 
>> on
>> paper, and then theoretically any number can be added and subtracted,
>> even if it is beyond 32/64 bit?
>> 
>> Example:
>> 
>> type TSuperLargeInt = string;
>> 
>> var
>>    i, j: TSuperLargeInt;
>>    output: TSuperLargeInt;
>> begin
>>    i := '100000000000000000009';
>>    j := '100000000000000000001';
>>    output := AddLargeInts(i,j);
>>    writeln(output);
>> end.
> 
> http://svn.code.sf.net/p/flyingsheep/code/trunk/wtf/ncalc.pp does 
> exactly that
> (all dependenies are also found at
> http://svn.code.sf.net/p/flyingsheep/code/trunk/wtf).
...

> It's not lightning fast, but there is room for optimization I guess.
> 
> Bart

I knew someone had already invented this!
Any idea if it does square roots, and, decimal point numbers too..

Or, what math can it "not" do.. things like sin/tan/cos, or strange 
maths..

Probably a complex question requiring a complex answer




More information about the fpc-pascal mailing list