How do I compute most mathematical operations/functions by hand?

117 Views Asked by At

Assume you're stranded on an island, and you've got some really important maths to do. Obviously you don't have a calculator with you, so you need to find another way.

I know this sounds absurd, but it quite annoys me that, apart from maybe addition to division, computing any other value always ends up at "Plug it into the calculator". How do I do square roots? How do I compute sine? Powers, logarithms?

Is there a collection of algorithms for these mathematical functions that are efficient enough to do by hand? They don't have to be insanely accurate, just good-enough approximations. I don't mind arbitrary precision ones, though :)

2

There are 2 best solutions below

0
On

The topic of this question is very interesting. It may deserve a book on its own. I am sure that there are books that discussed bits of this topic.

Computers rely on algorithms to perform function calculations. Mathematicians in the past must have relied on elementary devices, tools, tables and approximation algorithms.

The method known as "Taylor Series" is a very good way to calculate an approximate value for a continuous function at a given point. This method turn a function into a power series. The more terms you use the more accurate your answer gets.

A better algorithm is to use "Padé approximant".

The above methods can be used for many functions but require significant arithmetic work.

For some functions such as roots, one may use the "N-th root algorithm", there are simpler methods for square root calculations.

There are several books on the history of mathematical tables and the formulas used to generate such tables. You may find some of them useful.

To implement the methods into a computer program, it takes real good knowledge of the software development language and mathematics since machine accuracy could cause wrong answers (specially with floating point arithmetic) and machine power (specially in the old days) was of concern. Some very intelligent approaches are/were used for example "Feynman's algorithm" to calculate $log(x)$.

Here are some references you may want to examine for further information:

N-th Root Alg.

Taylor Series

Pade Approximant

How To Calc. Sin, Cos manually

Feynman's_algorithm

0
On

Like any algorithm, it will depend on your math skills, and knowledge.Here is an algorithm for $\frac{1}{x}$ for example. sqrt can be done by babylonian method:

  1. guess
  2. divide by guess
  3. average first two steps as new guess.
  4. repeat 2 and 3, until precision wanted is reached or surpassed.

for very small angle $sin x\approx x$

for things like exponents you can use

binary exponentiation

for remainders of "power towers" repeatedly use things like Fermat and Euler's theorems, etc. ex.

$213^{451^{4301^{6701^{5403^{3401}}}}} \bmod 100\equiv 13^{1 1^{13^{5^{3^{1}}}}}\equiv 37$

As to logs, I'm not skilled myself.