servo controlled buttons

I’m trying to control a servo with a button. Ideally when I push the button it will go from 0-180 and when I push it again it will go 180-0. Any help is greatly appreciated. Heres my code so far.
#include <Servo.h>

Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created

int pos = 0; // variable to store the servo position
const int buttonPin = 2;
int buttonState = 0;
void setup()
{
pinMode(buttonPin, OUTPUT);
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}

void loop()
{
buttonState = digitalRead(buttonPin); //sets up button
if (buttonState == HIGH) {
pos = 0;
}
if (buttonState == LOW){
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees

{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=180; pos=1) // keeps arm at 180 degrees
{
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
}
}

Shouldn't your post title be "Button controlled servos ? " (since servo controlled buttons makes no sense)

FYI,
Try using the "Code" button when posting code.

Your right. I kinda feel stupid now.