When I do math in my head, I usually combine a few approaches:

 * Try to re-use math I have memorized (such as the multiplication tables, powers of 2, powers of 3, common square roots, common trig ratios, *et cetera*)
 * Use "carrying" to split each number into a round number and an "error" term.  Often, the first operations will be on the number(s) that are closest to round numbers.
 * Use memorized values to handle round number inputs to square roots or trig functions, and linear interpolation to adjust for the "error" terms.
 * Chunk four-digit numbers into pairs of digits.
 * Use my fingers to store values as Roman numerals.  (This allows storing a pair of digits on my hands.)

For example:

 * 99 * 58 = (100 - 1) * 58 = 5800 - 58 = 5700 + 100 - 58 = 5742
 * 2048 + 1296 = 2048 + 1300 - 4 = 2044 + 1300 = 3344
 * 506 + 998 = 506 + 1000 - 2 = 504 + 1000 = 1504

Since the original poster asked (in a comment) about square roots:

 * sqrt(0.3048 meters * 2 / (9.80665 meters/second^2))  
= sqrt(0.3048 * 2 second^2 / 9.80665)  
= 1 second * sqrt(0.3048 * 2 / 9.80665)  
~ 1 second * sqrt(0.3 * (1 + 1.6%) * 2 / (10 * (1 - 2%)))  
~ 1 second * sqrt(0.6 / 10 * (1 + 1.6% + 2%))  
~ 1 second * sqrt(0.06 * (1 + 3.6%))  
~ 0.1 second * sqrt(6 * (1 + 3.6%))  
~ 0.1 second * sqrt(6.216)  
~ 0.01 second * sqrt(621.6)  
~ 0.01 second * (sqrt(625) - 3.4/(625 - 576))  
~ 0.01 second * (25 - 3.4/50)  
~ 0.01 second * (25 - 6.8/100)  
~ 0.01 second * (25 - 0.07)  
= 0.01 second * 24.93  
= 0.2493 seconds.  
(Actual value is 0.249322 seconds, at 45 degrees latitude on Earth.)