how to stop matlab from rounding my values and keep them at same precision during calculations?
The precision is kept. It is just the display values that are truncated. 

Type format long to change the displayed precision.