Simplified, but uncompiled and untested.
#include <Servo.h>
const int trigger=3;
const int echo=2;
const int nAngles = 5;
Servo xServo;
const int angles [nAngles] = {0, 45, 90, 135, 180};
float ranges [nAngles];
void setup()
{
Serial.begin(9600);
pinMode(trigger,OUTPUT);
pinMode(echo,INPUT);
xServo.attach(10);
}
void loop()
{
for (int i = 0; i < nAngles; ++i) {
xservo.Write (angles [i]);
delay (500);
ranges [i] = getRange ();
delay(50);
}
for (int i = 0; i < nAngles; ++i) {
Serial.println(ranges [i]);
}
}
float getRange ()
{
digitalWrite(trigger,LOW);
delayMicroseconds(5);
digitalWrite(trigger,HIGH);
delayMicroseconds(10);
digitalWrite(trigger,LOW);
return pulseIn(echo,HIGH) * 0.0001657;
}