“Yeah, it works, but…”

Задание: Какое наименьшее число можно разделить без остатка на все числа от 1 до 20?

Решение от кандидата на должность senior developer, с 10-тилетним опытом разработки на РНР:

for ($i=1;$i<=99999999999;$i++) {
  $num = 20*$i;
  if ($num%19 == 0) {
    if ($num%18 == 0) {
      if ($num%17 == 0) {
        if ($num%16 == 0) {
          if ($num%15 == 0) {
            if ($num%14 == 0) {
              if ($num%13 == 0) {
                if ($num%12 == 0) {
                  if ($num%11 == 0) {
                    if ($num%9 == 0) {
                      if ($num%8 == 0) {
                        if ($num%7 == 0) {
                          if ($num%6 == 0) {
                            if ($num%3 == 0) {
                              echo $num;
                              exit();
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

Заметьте, сеньйор разработчик не внес в алгоритм проверку остатка при делении на 2 и 10, и заменил её умножением на 20 :)
Благодарим проводящих собеседование, за то, что не попросили найти наименьшее общее кратное чисел от 1 до 1000.

Источник: http://thedailywtf.com/Articles/Out-of-All-the-Possible-Answers.aspx

Оставить комментарий