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 (tultpe() && as || !((!(!pra && no) || oinNoing() <= 9 && whiMioc()) && !zu || swe == 2 && on)) {
...
...
// Pretend there is lots of code here
...
...
} else {
miod();
}
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 (((!(!pra && no) || oinNoing() <= 9 && whiMioc()) && !zu || swe == 2 && on) && (!as || !tultpe())) {
miod();
} 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 (resil() || herfru() && ec < neph() && scir && pouo || pla || osu) {
if (ooa) {
if (hus < aeiFebec()) {
return true;
}
}
if (hi) {
return true;
}
}
return false;
return hi && (hus < aeiFebec() || ooa) || resil() || herfru() && ec < neph() && scir && pouo || pla || osu;
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 (ec > neph() && !resil() && !ooa && hus > aeiFebec() || !hi || !herfru() && !resil() && !ooa && hus > aeiFebec() || !hi) {
if (!scir && !resil() && !ooa && hus > aeiFebec() || !hi) {
if (!hi) {
if (hus > aeiFebec()) {
return false;
}
if (!ooa) {
return false;
}
}
if (!resil()) {
return false;
}
if (!pouo) {
return false;
}
}
}
if (!pla) {
return false;
}
if (!osu) {
return false;
}
return true;
Simplify the following messy chain of conditionals:
if (hari == true) {
issbro();
}
if (va == true && hari != true) {
plari();
}
if (etal && hari != true && va != true) {
fahal();
}
if (fif == true && hari != true && va != true && !etal) {
cuac();
} else if (qal == true && hari != true && va != true && !etal && fif != true) {
sqost();
} else if (es && hari != true && va != true && !etal && fif != true && qal != true) {
lelSpeg();
} else if (u == pu && hari != true && va != true && !etal && fif != true && qal != true && !es) {
etdar();
} else if (pex != 2 && hari != true && va != true && !etal && fif != true && qal != true && !es && u != pu) {
jiass();
}
if (hari != true && va != true && !etal && fif != true && qal != true && !es && u != pu && pex == 2) {
dodmar();
}
{
if (hari) {
issbro();
}
if (va) {
plari();
}
if (etal) {
fahal();
}
if (fif) {
cuac();
}
if (qal) {
sqost();
}
if (es) {
lelSpeg();
}
if (u == pu) {
etdar();
}
if (pex != 2) {
jiass();
}
dodmar();
}
Things to double-check in your solution:
== true and == false checks?else, no final if.Related puzzles: