How to always rotate clockwise

Hello, I have an object that I need to rotate clockwise only around Z axis until it matches a specific angle that will be decided randomly at run time. If I use any of Quaternion static functions they all choose the shortest rotation and sometimes it rotates anti-clockwise. Any ideas?

Edit: I forgot to mention that the rotation shouldn’t be instantaneous, it will be Lerp like, the problem with Quaternion static functions is that they always rotate in the shortest direction and I need to always rotate in clockwise direction.

Hello, can you post the code you are using now?

Have you tried

Quaternion rotation = Quaternion.Euler(0, 0, myRotationInDegrees);

for lerping a quaternion not trough the shortest route, i recommend something custom made

public class QuaternionLerp : MonoBehaviour {

	public float zAngleTarget;
	public float secondsToLerp;
	float t;

	// Use this for initialization
	void Start () {
		t = 0;
	// Update is called once per frame
	void Update () {
		t += Time.deltaTime / secondsToLerp;
		transform.rotation = Quaternion.Euler(0, 0, Mathf.Lerp(0,zAngleTarget, t));