It should be noted that no ethically-trained software engineer would ever consent to write a DestroyBaghdad procedure. Basic professional ethics would instead require him to write a DestroyCity procedure, to which Baghdad could be given as a parameter.
P.S. Пошёл гуглить и нашёл бонус-трек.
Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.