Animation Co-ordinates not being followed exactly(Solved)

When trying to animate an object the co-ordinates I input are not being followed exactly.

As an example… I want to move a cube 5 units along the Z axis, wait 2 seconds. then have it move back 5 units (to where it started)

So I set my keyframe to move 5 units/over 2 seconds (5 units along z axis)
Set my 2nd keyframe, then I set my 3rd keyframe 2 seconds after that with ‘no movement’
lastly I set my 4th keyframe back to the original position. (-5 units along z axis)

Now comes my problem… Instead of the cube moving 5 units and stopping, its actually moving 5.36… units, then travelling back.

Why doesn’t the cube come to a complete standstill? It overshoots my 5 unit limit and gradually comes to a stop. It’s almost like its bouncing backwards and forwards not coming to a nice crisp halt?

Any ideas guys ???

OK, managed to solve this, but I’ll explain for anybody who gets the same issues.

At the bottom of your animation tab (you need to have your object selected) you will see 2 tabs, ‘Dope Sheet’ and ‘Curves’. Click on the curves tab and you will see a wavy line that represents your objects movements.

(You can watch the animation in this window to get an idea oh how your object is moving).
Anyway, choose the keyframes that you want your object to be stationary between (in my case the keyframes at 2 seconds and 4 seconds)

Right click on the first keyframe and you will see some more options. Tick/highlight the ‘FLAT’ option and you will see the curve has been made flatter at that keyframe. Repeat this at your second keyframe and you will see the curve between those two points is now completely flat.

Run your animation again and you will see there is no bounce or over shooting movement. Your object will move to that keyframe, come to a stop and wait until the next keyframe before moving again.

Anyway, hope this helps