Else vs. Else If

Activity 1.2.5 part 4 “additional practice” item D.
I’ve made two motors run independently based on the state of two switches. One switch controls one motor the other switch controls the other motor.
Below I’m posting the code I used. The first program works fine. The second program works but causes the motors to jitter and run slowly.
Can anyone explain why the 1st version works and the 2nd doesn’t?
Thanks,
task main()//this worked fine. Both motors ran independently
{
while(true){
if(SensorValue(num3)==1)
{
startMotor(mot2,50);
}
else if(SensorValue(num3)==0)
{
stopMotor(mot2);
}
if(SensorValue(num4)==1)
{
startMotor(mot3,50);
}
else if(SensorValue(num4)==0)
stopMotor(mot3);
}
}
task main()//this one was jittery. motors ran slow.
{
while(true){
if(SensorValue(num3)==1)
{
startMotor(mot2,50);
}
else(SensorValue(num3)==0)
{
stopMotor(mot2);
}
if(SensorValue(num4)==1)
{
startMotor(mot3,50);
}
else(SensorValue(num4)==0)
stopMotor(mot3);
}
}

Looks like Cody answered this for you here.
https://vexforum.com/t/reply-else-vs-if-else/36217/1