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.9999749448
inc = floIncrementor Object
(
[last_value_calculated] => 30.9999749448
[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] => -1.09641343636E-6
[return_value] => 20.9999989036
)
[1] => Array
(
[starting_value] => 20.9999989036
[target_increment] => 10
[tollerance_adjusted] => -3.18026369091E-6
[return_value] => 21.9999957233
)
[2] => Array
(
[starting_value] => 21.9999957233
[target_increment] => 9
[tollerance_adjusted] => 4.88961709091E-6
[return_value] => 23.0000006129
)
[3] => Array
(
[starting_value] => 23.0000006129
[target_increment] => 8
[tollerance_adjusted] => 1.30970761818E-6
[return_value] => 24.0000019226
)
[4] => Array
(
[starting_value] => 24.0000019226
[target_increment] => 7
[tollerance_adjusted] => -8.56767954545E-6
[return_value] => 24.999993355
)
[5] => Array
(
[starting_value] => 24.999993355
[target_increment] => 6
[tollerance_adjusted] => 6.81332337273E-6
[return_value] => 26.0000001683
)
[6] => Array
(
[starting_value] => 26.0000001683
[target_increment] => 5
[tollerance_adjusted] => -8.18040527273E-6
[return_value] => 26.9999919879
)
[7] => Array
(
[starting_value] => 26.9999919879
[target_increment] => 4
[tollerance_adjusted] => 6.08074127273E-6
[return_value] => 27.9999980686
)
[8] => Array
(
[starting_value] => 27.9999980686
[target_increment] => 3
[tollerance_adjusted] => -8.66146732727E-6
[return_value] => 28.9999894072
)
[9] => Array
(
[starting_value] => 28.9999894072
[target_increment] => 2
[tollerance_adjusted] => -8.57090036364E-6
[return_value] => 29.9999808363
)
[10] => Array
(
[starting_value] => 29.9999808363
[target_increment] => 1
[tollerance_adjusted] => -5.89150295455E-6
[return_value] => 30.9999749448
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
5 more => $inc->increment(NULL, 5, "Adding 5 more."): 35.9999964484
inc = floIncrementor Object
(
[last_value_calculated] => 35.9999964484
[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] => -1.09641343636E-6
[return_value] => 20.9999989036
)
[1] => Array
(
[starting_value] => 20.9999989036
[target_increment] => 10
[tollerance_adjusted] => -3.18026369091E-6
[return_value] => 21.9999957233
)
[2] => Array
(
[starting_value] => 21.9999957233
[target_increment] => 9
[tollerance_adjusted] => 4.88961709091E-6
[return_value] => 23.0000006129
)
[3] => Array
(
[starting_value] => 23.0000006129
[target_increment] => 8
[tollerance_adjusted] => 1.30970761818E-6
[return_value] => 24.0000019226
)
[4] => Array
(
[starting_value] => 24.0000019226
[target_increment] => 7
[tollerance_adjusted] => -8.56767954545E-6
[return_value] => 24.999993355
)
[5] => Array
(
[starting_value] => 24.999993355
[target_increment] => 6
[tollerance_adjusted] => 6.81332337273E-6
[return_value] => 26.0000001683
)
[6] => Array
(
[starting_value] => 26.0000001683
[target_increment] => 5
[tollerance_adjusted] => -8.18040527273E-6
[return_value] => 26.9999919879
)
[7] => Array
(
[starting_value] => 26.9999919879
[target_increment] => 4
[tollerance_adjusted] => 6.08074127273E-6
[return_value] => 27.9999980686
)
[8] => Array
(
[starting_value] => 27.9999980686
[target_increment] => 3
[tollerance_adjusted] => -8.66146732727E-6
[return_value] => 28.9999894072
)
[9] => Array
(
[starting_value] => 28.9999894072
[target_increment] => 2
[tollerance_adjusted] => -8.57090036364E-6
[return_value] => 29.9999808363
)
[10] => Array
(
[starting_value] => 29.9999808363
[target_increment] => 1
[tollerance_adjusted] => -5.89150295455E-6
[return_value] => 30.9999749448
)
)
)
[1] => Array
(
[start_value] => 30.9999749448
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999749448
[target_increment] => 5
[tollerance_adjusted] => -1.750166712E-5
[return_value] => 31.9999574431
)
[1] => Array
(
[starting_value] => 31.9999574431
[target_increment] => 4
[tollerance_adjusted] => 1.417643896E-5
[return_value] => 32.9999716195
)
[2] => Array
(
[starting_value] => 32.9999716195
[target_increment] => 3
[tollerance_adjusted] => 2.68187864E-6
[return_value] => 33.9999743014
)
[3] => Array
(
[starting_value] => 33.9999743014
[target_increment] => 2
[tollerance_adjusted] => 1.361353476E-5
[return_value] => 34.9999879149
)
[4] => Array
(
[starting_value] => 34.9999879149
[target_increment] => 1
[tollerance_adjusted] => 8.533459E-6
[return_value] => 35.9999964484
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
undo => $inc->undo(): 30.9999749448
inc = floIncrementor Object
(
[last_value_calculated] => 30.9999749448
[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] => -1.09641343636E-6
[return_value] => 20.9999989036
)
[1] => Array
(
[starting_value] => 20.9999989036
[target_increment] => 10
[tollerance_adjusted] => -3.18026369091E-6
[return_value] => 21.9999957233
)
[2] => Array
(
[starting_value] => 21.9999957233
[target_increment] => 9
[tollerance_adjusted] => 4.88961709091E-6
[return_value] => 23.0000006129
)
[3] => Array
(
[starting_value] => 23.0000006129
[target_increment] => 8
[tollerance_adjusted] => 1.30970761818E-6
[return_value] => 24.0000019226
)
[4] => Array
(
[starting_value] => 24.0000019226
[target_increment] => 7
[tollerance_adjusted] => -8.56767954545E-6
[return_value] => 24.999993355
)
[5] => Array
(
[starting_value] => 24.999993355
[target_increment] => 6
[tollerance_adjusted] => 6.81332337273E-6
[return_value] => 26.0000001683
)
[6] => Array
(
[starting_value] => 26.0000001683
[target_increment] => 5
[tollerance_adjusted] => -8.18040527273E-6
[return_value] => 26.9999919879
)
[7] => Array
(
[starting_value] => 26.9999919879
[target_increment] => 4
[tollerance_adjusted] => 6.08074127273E-6
[return_value] => 27.9999980686
)
[8] => Array
(
[starting_value] => 27.9999980686
[target_increment] => 3
[tollerance_adjusted] => -8.66146732727E-6
[return_value] => 28.9999894072
)
[9] => Array
(
[starting_value] => 28.9999894072
[target_increment] => 2
[tollerance_adjusted] => -8.57090036364E-6
[return_value] => 29.9999808363
)
[10] => Array
(
[starting_value] => 29.9999808363
[target_increment] => 1
[tollerance_adjusted] => -5.89150295455E-6
[return_value] => 30.9999749448
)
)
)
)
[increment_history_for_redo] => Array
(
[0] => Array
(
[start_value] => 30.9999749448
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999749448
[target_increment] => 5
[tollerance_adjusted] => -1.750166712E-5
[return_value] => 31.9999574431
)
[1] => Array
(
[starting_value] => 31.9999574431
[target_increment] => 4
[tollerance_adjusted] => 1.417643896E-5
[return_value] => 32.9999716195
)
[2] => Array
(
[starting_value] => 32.9999716195
[target_increment] => 3
[tollerance_adjusted] => 2.68187864E-6
[return_value] => 33.9999743014
)
[3] => Array
(
[starting_value] => 33.9999743014
[target_increment] => 2
[tollerance_adjusted] => 1.361353476E-5
[return_value] => 34.9999879149
)
[4] => Array
(
[starting_value] => 34.9999879149
[target_increment] => 1
[tollerance_adjusted] => 8.533459E-6
[return_value] => 35.9999964484
)
)
)
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)
redo => $inc->redo(): 35.9999964484
inc = floIncrementor Object
(
[last_value_calculated] => 35.9999964484
[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] => -1.09641343636E-6
[return_value] => 20.9999989036
)
[1] => Array
(
[starting_value] => 20.9999989036
[target_increment] => 10
[tollerance_adjusted] => -3.18026369091E-6
[return_value] => 21.9999957233
)
[2] => Array
(
[starting_value] => 21.9999957233
[target_increment] => 9
[tollerance_adjusted] => 4.88961709091E-6
[return_value] => 23.0000006129
)
[3] => Array
(
[starting_value] => 23.0000006129
[target_increment] => 8
[tollerance_adjusted] => 1.30970761818E-6
[return_value] => 24.0000019226
)
[4] => Array
(
[starting_value] => 24.0000019226
[target_increment] => 7
[tollerance_adjusted] => -8.56767954545E-6
[return_value] => 24.999993355
)
[5] => Array
(
[starting_value] => 24.999993355
[target_increment] => 6
[tollerance_adjusted] => 6.81332337273E-6
[return_value] => 26.0000001683
)
[6] => Array
(
[starting_value] => 26.0000001683
[target_increment] => 5
[tollerance_adjusted] => -8.18040527273E-6
[return_value] => 26.9999919879
)
[7] => Array
(
[starting_value] => 26.9999919879
[target_increment] => 4
[tollerance_adjusted] => 6.08074127273E-6
[return_value] => 27.9999980686
)
[8] => Array
(
[starting_value] => 27.9999980686
[target_increment] => 3
[tollerance_adjusted] => -8.66146732727E-6
[return_value] => 28.9999894072
)
[9] => Array
(
[starting_value] => 28.9999894072
[target_increment] => 2
[tollerance_adjusted] => -8.57090036364E-6
[return_value] => 29.9999808363
)
[10] => Array
(
[starting_value] => 29.9999808363
[target_increment] => 1
[tollerance_adjusted] => -5.89150295455E-6
[return_value] => 30.9999749448
)
)
)
[1] => Array
(
[start_value] => 30.9999749448
[inc_value] => 5
[precision] => 0.0001
[comments] => Adding 5 more.
[min_value] => 0
[max_value] => 100
[recursion] => Array
(
[0] => Array
(
[starting_value] => 30.9999749448
[target_increment] => 5
[tollerance_adjusted] => -1.750166712E-5
[return_value] => 31.9999574431
)
[1] => Array
(
[starting_value] => 31.9999574431
[target_increment] => 4
[tollerance_adjusted] => 1.417643896E-5
[return_value] => 32.9999716195
)
[2] => Array
(
[starting_value] => 32.9999716195
[target_increment] => 3
[tollerance_adjusted] => 2.68187864E-6
[return_value] => 33.9999743014
)
[3] => Array
(
[starting_value] => 33.9999743014
[target_increment] => 2
[tollerance_adjusted] => 1.361353476E-5
[return_value] => 34.9999879149
)
[4] => Array
(
[starting_value] => 34.9999879149
[target_increment] => 1
[tollerance_adjusted] => 8.533459E-6
[return_value] => 35.9999964484
)
)
)
)
[increment_history_for_redo] => Array
(
)
[errors] => Array
(
)
[shiftiness:private] => 1000000000
)