turret shooting missile

Hello guys ,
So I have a turret that shoots missiles . I need to place it in 4 angle position 0 , 90 , 180 and -90 degrees.
I rotate the turret in the scene (no problem with that)
then from instantiate , I have been able to rotate the bullet same direction of the turret
then placed if conditions for the myrigid.velocity as shown below in the scripts .
I realised that the whole if conditions system is not working cause in real the bullet is not -90 but -90.00001 . How can I fix this?
Thank you in advance you will find the scripts down below :

Script applied on the shooter:

using UnityEngine;
using System.Collections;

public class Shooter : MonoBehaviour {
public float min_delay;
public float max_delay;
float delay_time;
public Transform shooting_point;
public GameObject bullet;
// Use this for initialization
void Start ()
{
delay_time = Random.Range(min_delay, max_delay);
}

// Update is called once per frame
void Update () 
{
	
	delay_time -= Time.fixedDeltaTime;
	if (delay_time < min_delay) 
	{
      
		Instantiate (bullet, shooting_point.transform.position, transform.rotation);
       

		delay_time = max_delay;
	}
}

}

Script applied on missile

using UnityEngine;
using System.Collections;

public class bullet : MonoBehaviour {
public float speed;
public int reduce_health;
Rigidbody2D myrigid;
// Use this for initialization
void Start ()
{
myrigid = GetComponent ();
}

void Update()
{
    if(transform.rotation.z == 0)
		myrigid.velocity = new Vector2 (speed, 0);
    else if(transform.rotation.z > 0 && transform.rotation.z <= 90)
        myrigid.velocity = new Vector2(-speed, 0);
    else if(transform.rotation.z > 90 && transform.rotation.z <=180)
        myrigid.velocity = new Vector2(0, speed);
    else if(transform.rotation.z<0 && transform.rotation.z >= -90)
        myrigid.velocity = new Vector2(0, -speed);
}

// Update is called once per frame
void OnCollisionEnter2D (Collision2D other)
{
	if (other.gameObject.tag == "collider") 
	{
		Destroy (gameObject);
		if(other.gameObject.name == "Player")
		{
		other.gameObject.GetComponent<Player_Health> ().Update_health (reduce_health);
		}
	}
}

}

It’s just a floating point inaccuracy and it’s nothing to worry about. Your script seems to be working fine.

It’s a general computer science issue, not just Unity. If you Google “floating point inaccuracy” you’ll find loads of info eg http://effbot.org/pyfaq/why-are-floating-point-calculations-so-inaccurate.htm