Circular Motion Using - tranform

guys , this is my code … trying to rotate a sphere which has this script on it

but the sphere is acting weird … the x is increasing monstrously …

using UnityEngine;
using System.Collections;

public class Circular : MonoBehaviour {

	public float speed = 1;
	void Awake()
	{

	}

	void Update () 
	{

		transform.Translate( 5, 0 ,Mathf.Lerp( 0 , 5 , Time.deltaTime*speed));
	}

}

can u guys … explain it’s behavior … and also a perfect script to rotate my sphere …

but not with the function transform.RotateAround

Translate() moves something. It does not rotate something. In addition, the movement is local and relative. For example your code will move your object to the objects right 5 units every frame. If your average frame rate is 60 fps, then your object will move to its right at 300 units per second. If you just want to rotate the object, then you can do:

transform.Rotate(0.0f, 0.0f, Time.deltaTime * speed);

Since your ‘speed’ is set to ‘1’, this will rotate your object on it’s local ‘z’ axis at one degree per second. Increase ‘speed’ for a faster rotation. Be sure to set the ‘speed’ in the Inspector, not in the script.