Hi, just some quick notes.
You update sensorValue just once per loop(), because it's outside the while(runWeight) {} block. I don't see how you can get out of that while() cycle.
I think you got the battery type recognition logic wrong. When working with analoRead() you usually check the value against a range, not for an exact value.
For example (pseudocode):
value = analogRead(0)
if (value >= 100 and value < 200) batteryType = 1
else if (value >= 200 and value < 300) batteryType =2
etc.