05dd039151
```
do {
X
if (B) break;
} while (A)
```
to
```
do {
X
} while (!B && A)
```
Add inversion that takes boolean expression and applies negation to it, simplifying if possible (like !!a => a).
20 lines
358 B
JavaScript
Vendored
20 lines
358 B
JavaScript
Vendored
var global = "";
|
|
|
|
function foo(x) {
|
|
global += x + ";";
|
|
return x;
|
|
}
|
|
|
|
function box() {
|
|
var i = 1;
|
|
var sum = 0;
|
|
while (foo(i) < 10 && foo(sum) <= 30) {
|
|
sum += i;
|
|
i++;
|
|
}
|
|
|
|
if (global != "1;0;2;1;3;3;4;6;5;10;6;15;7;21;8;28;9;36;") return "fail1: " + global;
|
|
if (sum != 36) return "fail2: " + sum;
|
|
|
|
return "OK"
|
|
} |