floIncrementor
This is a PHP class that was written mainly to be an obsurd method of adding two numbers together. This task can normally be applied by "a = b + c", however, this pertuclar class uses 150 lines of code to prove that it doesn't have to be that simple. (Sorry about the page width on this.)
Though this class is finished, I have put it under "Under Development" because I want to add a form that visitors can use to do their own calculations.
Increment 20 by 11 => $inc->increment(20, 11, "Comment: Incrementing 20 by 11 with a precision of .0001, accepting results between 0 and 100.", .0001, 0, 100): 30.9999962168
inc = floIncrementor Object
(
[last_value_calculated] => 30.9999962168
[last_increment_value] => 11
[last_precision] => 0.0001
[last_max_value] => 100
[last_min_value] => 0
[increment_history_for_undo] => Array
(
[0] => Array
(
[start_value] => 20
[inc_value] => 11
[precision] => 0.0001
[comments] => Comment: Incrementing 20 by 11 with a precision of .0001, accepting results between 0 and 100.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 20
[target_increment] => 11
[tollerance_adjusted] => -5.86869478182E-6
[return_value] => 20.9999941313
)
[1] => Array
(
[starting_value] => 20.9999941313
[target_increment] => 10
[tollerance_adjusted] => -2.94729918182E-7
[return_value] => 21.9999938366
)
[2] => Array
(
[starting_value] => 21.9999938366
[target_increment] => 9
[tollerance_adjusted] => -1.85555521818E-6
[return_value] => 22.999991981
)
[3] => Array
(
[starting_value] => 22.999991981
[target_increment] => 8
[tollerance_adjusted] => 4.4664867E-6
[return_value] => 23.9999964475
)
[4] => Array
(
[starting_value] => 23.9999964475
[target_increment] => 7
[tollerance_adjusted] => 6.75618628182E-6
[return_value] => 25.0000032037
)
[5] => Array
(
[starting_value] => 25.0000032037
[target_increment] => 6
[tollerance_adjusted] => 3.33160285455E-6
[return_value] => 26.0000065353
)
[6] => Array
(
[starting_value] => 26.0000065353
[target_increment] => 5
[tollerance_adjusted] => 2.87563881818E-6
[return_value] => 27.0000094109
)
[7] => Array
(
[starting_value] => 27.0000094109
[target_increment] => 4
[tollerance_adjusted] => -7.42745718182E-6
[return_value] => 28.0000019835
)
[8] => Array
(
[starting_value] => 28.0000019835
[target_increment] => 3
[tollerance_adjusted] => -3.7164492E-6
[return_value] => 28.999998267
)
[9] => Array
(
[starting_value] => 28.999998267
[target_increment] => 2
[tollerance_adjusted] => -8.67576887273E-6
[return_value] => 29.9999895913
)
[10] => Array
(
[starting_value] => 29.9999895913
[target_increment] => 1
[tollerance_adjusted] => 6.62549103636E-6
[return_value] => 30.9999962168
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
5 more => $inc->increment(NULL, 5, "Adding 5 more."): 36.0000035011
inc = floIncrementor Object
(
[last_value_calculated] => 36.0000035011
[last_increment_value] => 5
[last_precision] => 0.0001
[last_max_value] => 100
[last_min_value] => 0
[increment_history_for_undo] => Array
(
[0] => Array
(
[start_value] => 20
[inc_value] => 11
[precision] => 0.0001
[comments] => Comment: Incrementing 20 by 11 with a precision of .0001, accepting results between 0 and 100.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 20
[target_increment] => 11
[tollerance_adjusted] => -5.86869478182E-6
[return_value] => 20.9999941313
)
[1] => Array
(
[starting_value] => 20.9999941313
[target_increment] => 10
[tollerance_adjusted] => -2.94729918182E-7
[return_value] => 21.9999938366
)
[2] => Array
(
[starting_value] => 21.9999938366
[target_increment] => 9
[tollerance_adjusted] => -1.85555521818E-6
[return_value] => 22.999991981
)
[3] => Array
(
[starting_value] => 22.999991981
[target_increment] => 8
[tollerance_adjusted] => 4.4664867E-6
[return_value] => 23.9999964475
)
[4] => Array
(
[starting_value] => 23.9999964475
[target_increment] => 7
[tollerance_adjusted] => 6.75618628182E-6
[return_value] => 25.0000032037
)
[5] => Array
(
[starting_value] => 25.0000032037
[target_increment] => 6
[tollerance_adjusted] => 3.33160285455E-6
[return_value] => 26.0000065353
)
[6] => Array
(
[starting_value] => 26.0000065353
[target_increment] => 5
[tollerance_adjusted] => 2.87563881818E-6
[return_value] => 27.0000094109
)
[7] => Array
(
[starting_value] => 27.0000094109
[target_increment] => 4
[tollerance_adjusted] => -7.42745718182E-6
[return_value] => 28.0000019835
)
[8] => Array
(
[starting_value] => 28.0000019835
[target_increment] => 3
[tollerance_adjusted] => -3.7164492E-6
[return_value] => 28.999998267
)
[9] => Array
(
[starting_value] => 28.999998267
[target_increment] => 2
[tollerance_adjusted] => -8.67576887273E-6
[return_value] => 29.9999895913
)
[10] => Array
(
[starting_value] => 29.9999895913
[target_increment] => 1
[tollerance_adjusted] => 6.62549103636E-6
[return_value] => 30.9999962168
)
)
)
[1] => Array
(
[start_value] => 30.9999962168
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999962168
[target_increment] => 5
[tollerance_adjusted] => -1.10584341E-5
[return_value] => 31.9999851583
)
[1] => Array
(
[starting_value] => 31.9999851583
[target_increment] => 4
[tollerance_adjusted] => -1.39663985E-5
[return_value] => 32.9999711919
)
[2] => Array
(
[starting_value] => 32.9999711919
[target_increment] => 3
[tollerance_adjusted] => 1.370113104E-5
[return_value] => 33.999984893
)
[3] => Array
(
[starting_value] => 33.999984893
[target_increment] => 2
[tollerance_adjusted] => 1.102608146E-5
[return_value] => 34.9999959191
)
[4] => Array
(
[starting_value] => 34.9999959191
[target_increment] => 1
[tollerance_adjusted] => 7.58195538E-6
[return_value] => 36.0000035011
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
undo => $inc->undo(): 30.9999962168
inc = floIncrementor Object
(
[last_value_calculated] => 30.9999962168
[last_increment_value] => 11
[last_precision] => 0.0001
[last_max_value] => 0
[last_min_value] => 100
[increment_history_for_undo] => Array
(
[0] => Array
(
[start_value] => 20
[inc_value] => 11
[precision] => 0.0001
[comments] => Comment: Incrementing 20 by 11 with a precision of .0001, accepting results between 0 and 100.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 20
[target_increment] => 11
[tollerance_adjusted] => -5.86869478182E-6
[return_value] => 20.9999941313
)
[1] => Array
(
[starting_value] => 20.9999941313
[target_increment] => 10
[tollerance_adjusted] => -2.94729918182E-7
[return_value] => 21.9999938366
)
[2] => Array
(
[starting_value] => 21.9999938366
[target_increment] => 9
[tollerance_adjusted] => -1.85555521818E-6
[return_value] => 22.999991981
)
[3] => Array
(
[starting_value] => 22.999991981
[target_increment] => 8
[tollerance_adjusted] => 4.4664867E-6
[return_value] => 23.9999964475
)
[4] => Array
(
[starting_value] => 23.9999964475
[target_increment] => 7
[tollerance_adjusted] => 6.75618628182E-6
[return_value] => 25.0000032037
)
[5] => Array
(
[starting_value] => 25.0000032037
[target_increment] => 6
[tollerance_adjusted] => 3.33160285455E-6
[return_value] => 26.0000065353
)
[6] => Array
(
[starting_value] => 26.0000065353
[target_increment] => 5
[tollerance_adjusted] => 2.87563881818E-6
[return_value] => 27.0000094109
)
[7] => Array
(
[starting_value] => 27.0000094109
[target_increment] => 4
[tollerance_adjusted] => -7.42745718182E-6
[return_value] => 28.0000019835
)
[8] => Array
(
[starting_value] => 28.0000019835
[target_increment] => 3
[tollerance_adjusted] => -3.7164492E-6
[return_value] => 28.999998267
)
[9] => Array
(
[starting_value] => 28.999998267
[target_increment] => 2
[tollerance_adjusted] => -8.67576887273E-6
[return_value] => 29.9999895913
)
[10] => Array
(
[starting_value] => 29.9999895913
[target_increment] => 1
[tollerance_adjusted] => 6.62549103636E-6
[return_value] => 30.9999962168
)
)
)
)
[increment_history_for_redo] => Array
(
[0] => Array
(
[start_value] => 30.9999962168
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999962168
[target_increment] => 5
[tollerance_adjusted] => -1.10584341E-5
[return_value] => 31.9999851583
)
[1] => Array
(
[starting_value] => 31.9999851583
[target_increment] => 4
[tollerance_adjusted] => -1.39663985E-5
[return_value] => 32.9999711919
)
[2] => Array
(
[starting_value] => 32.9999711919
[target_increment] => 3
[tollerance_adjusted] => 1.370113104E-5
[return_value] => 33.999984893
)
[3] => Array
(
[starting_value] => 33.999984893
[target_increment] => 2
[tollerance_adjusted] => 1.102608146E-5
[return_value] => 34.9999959191
)
[4] => Array
(
[starting_value] => 34.9999959191
[target_increment] => 1
[tollerance_adjusted] => 7.58195538E-6
[return_value] => 36.0000035011
)
)
)
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
redo => $inc->redo(): 36.0000035011
inc = floIncrementor Object
(
[last_value_calculated] => 36.0000035011
[last_increment_value] =>
[last_precision] =>
[last_max_value] =>
[last_min_value] =>
[increment_history_for_undo] => Array
(
[0] => Array
(
[start_value] => 20
[inc_value] => 11
[precision] => 0.0001
[comments] => Comment: Incrementing 20 by 11 with a precision of .0001, accepting results between 0 and 100.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 20
[target_increment] => 11
[tollerance_adjusted] => -5.86869478182E-6
[return_value] => 20.9999941313
)
[1] => Array
(
[starting_value] => 20.9999941313
[target_increment] => 10
[tollerance_adjusted] => -2.94729918182E-7
[return_value] => 21.9999938366
)
[2] => Array
(
[starting_value] => 21.9999938366
[target_increment] => 9
[tollerance_adjusted] => -1.85555521818E-6
[return_value] => 22.999991981
)
[3] => Array
(
[starting_value] => 22.999991981
[target_increment] => 8
[tollerance_adjusted] => 4.4664867E-6
[return_value] => 23.9999964475
)
[4] => Array
(
[starting_value] => 23.9999964475
[target_increment] => 7
[tollerance_adjusted] => 6.75618628182E-6
[return_value] => 25.0000032037
)
[5] => Array
(
[starting_value] => 25.0000032037
[target_increment] => 6
[tollerance_adjusted] => 3.33160285455E-6
[return_value] => 26.0000065353
)
[6] => Array
(
[starting_value] => 26.0000065353
[target_increment] => 5
[tollerance_adjusted] => 2.87563881818E-6
[return_value] => 27.0000094109
)
[7] => Array
(
[starting_value] => 27.0000094109
[target_increment] => 4
[tollerance_adjusted] => -7.42745718182E-6
[return_value] => 28.0000019835
)
[8] => Array
(
[starting_value] => 28.0000019835
[target_increment] => 3
[tollerance_adjusted] => -3.7164492E-6
[return_value] => 28.999998267
)
[9] => Array
(
[starting_value] => 28.999998267
[target_increment] => 2
[tollerance_adjusted] => -8.67576887273E-6
[return_value] => 29.9999895913
)
[10] => Array
(
[starting_value] => 29.9999895913
[target_increment] => 1
[tollerance_adjusted] => 6.62549103636E-6
[return_value] => 30.9999962168
)
)
)
[1] => Array
(
[start_value] => 30.9999962168
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999962168
[target_increment] => 5
[tollerance_adjusted] => -1.10584341E-5
[return_value] => 31.9999851583
)
[1] => Array
(
[starting_value] => 31.9999851583
[target_increment] => 4
[tollerance_adjusted] => -1.39663985E-5
[return_value] => 32.9999711919
)
[2] => Array
(
[starting_value] => 32.9999711919
[target_increment] => 3
[tollerance_adjusted] => 1.370113104E-5
[return_value] => 33.999984893
)
[3] => Array
(
[starting_value] => 33.999984893
[target_increment] => 2
[tollerance_adjusted] => 1.102608146E-5
[return_value] => 34.9999959191
)
[4] => Array
(
[starting_value] => 34.9999959191
[target_increment] => 1
[tollerance_adjusted] => 7.58195538E-6
[return_value] => 36.0000035011
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)