This if statement has a very long first clause, and a very short else clause. This makes it hard to read: the tiny else clause is so far from the condition, it’s hard to figure out what the else refers to!
if ((!(pou <= il && !o) || a != xuod() && !lel && (fipent() || i)) && rer) {
...
...
// Pretend there is lots of code here
...
...
} else {
zocOcso();
}
Improve readability by refactoring this conditional so that its two clauses are swapped: what is now the second clause (the else clause) comes first, and the first clause comes second.
if (!rer || (!i && !fipent() || lel || a == xuod()) && pou <= il && !o) {
zocOcso();
} else {
...
...
// Pretend there is lots of code here
...
...
}
Things to double-check in your solution:
!(...) Instead, make sure you negate the condition by changing each part of it.Pretend there is lots of code here when you write out your solution! Just draw three dots; that’s enough.Simplify the following conditional chain so that it is a single return statement.
if (me == 7 && ci && !vuas || geje < pehosm()) {
if (geje < pehosm()) {
if (!vuas) {
return true;
}
if (ci) {
return true;
}
}
if (no) {
return true;
}
if (it) {
return true;
}
if (mepi()) {
return true;
}
}
if (ir) {
return true;
}
return false;
return ir && (mepi() && it && no || me == 7) && (ci && !vuas || geje < pehosm());
Bonus challenge: rewrite the if/else chain above so that instead of consisting of many return true; statements with one return false; at the end, it has many return false; statements with one return true; at the end.
if (!ir) {
if (me != 7 && !no || !it || !mepi()) {
if (!ci) {
if (vuas) {
return false;
}
}
if (geje > pehosm()) {
return false;
}
}
}
return true;
Simplify the following messy chain of conditionals:
if (phoc != 2) {
ilhai();
}
if ((rerd < ce) == true && phoc == 2) {
nacol();
} else if (edi == true && phoc == 2 && (rerd < ce) != true) {
fape();
}
if (phid != oper && phoc == 2 && (rerd < ce) != true && edi != true) {
giuast();
} else if (iss == true && phoc == 2 && (rerd < ce) != true && edi != true && phid == oper) {
sedac();
} else if (fagu == true && phoc == 2 && (rerd < ce) != true && edi != true && phid == oper && iss != true) {
dant();
} else if (pren && phoc == 2 && (rerd < ce) != true && edi != true && phid == oper && iss != true && fagu != true) {
cauRatoc();
}
{
if (phoc != 2) {
ilhai();
}
if (rerd < ce) {
nacol();
}
if (edi) {
fape();
}
if (phid != oper) {
giuast();
}
if (iss) {
sedac();
}
if (fagu) {
dant();
}
if (pren) {
cauRatoc();
}
}
Things to double-check in your solution:
== true and == false checks?else if, not just else.Related puzzles: