Hello, Can somone write this code in another way like to make it short at least
ID: 3833320 • Letter: H
Question
Hello,
Can somone write this code in another way like to make it short at least ?
Thanks!
FUNCTION sim()
IF run = FALSE THEN
run = TRUE;
WHILE (run) DO
IF Pump_2 = 1 AND Pump_1 = 0 THEN
level = level + ( (Speed_Pump_2) / 10 );
IF level >= 1000 THEN
level = 1000;
END
ELSE
level = level
END
IF Pump_2 = 0 AND Pump_1 = 1 THEN
level = level - ( (Speed_Pump_1) / 10 );
IF level <= 0 THEN
level = 0;
END
ELSE
level = level
END
IF Pump_2 = 1 AND Pump_1 = 1 THEN
IF Speed_Pump_1 >= Speed_Pump_2 THEN
level = level - ( (Speed_Pump_1 - Speed_Pump_2) / 10 );
IF level <= 0 THEN
level = 0;
END
END
ELSE
level = level
END
IF Pump_2 = 1 AND Pump_1 = 1 THEN
IF Speed_Pump_2 >= Speed_Pump_1 THEN
level = level + ( (Speed_Pump_2 - Speed_Pump_1) / 10 );
IF level >= 1000 THEN
level = 1000;
END
END
ELSE
level = level
END
SleepMS(100);
END
END
END
Explanation / Answer
FUNCTION sim()
IF run = FALSE THEN
run = TRUE;
WHILE (run) DO
IF Pump_2 = 1 AND Pump_1 = 0 THEN
level = level + ( (Speed_Pump_2) / 10 );
IF level >= 1000 THEN
level = 1000;
END
ELSE IF Pump_2 = 0 AND Pump_1 = 1 THEN
level = level - ( (Speed_Pump_1) / 10 );
IF level <= 0 THEN
level = 0;
END
ELSE IF Pump_2 = 1 AND Pump_1 = 1 THEN
IF Speed_Pump_1 >= Speed_Pump_2 THEN
level = level - ( (Speed_Pump_1 - Speed_Pump_2) / 10 );
IF level <= 0 THEN
level = 0;
END
ELSE
level = level + ( (Speed_Pump_2 - Speed_Pump_1) / 10 );
IF level >= 1000 THEN
level = 1000;
END
END
ELSE
level = level
END
SleepMS(100);
END
END
END
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.