99 бутылок: R
60. R. Как многие наверное помнят, в качестве хобби я время от времени пишу на разных языках программирования американскую «Песню о пиве»
Это довольно известное развлечение — реализовывать на куче языков что-то простое, обычно выбирают числа Фибоначчи, «Песню» или ещё что-то незатейливое.
Я выбрал именно «Песню о пиве», так как не всем языкам из моего списка, под силу что-то большее. До сегодняшнего дня в списке было 57 языков, сегодня, 58-м пунктом, к ним вполне ожидаемо присоединится язык «Эр», о нём я уже немного писал, собираюсь писать и дальше как время образуется.
# Written by Evgeny Stepanischev, 2017
bottles <- function(beer) {
ifelse(beer == 0, "no bottles",
ifelse(beer > 1, paste(beer, "bottles"), "1 bottle")
)
}
for (i in 99:1) {
paste(bottles(i), "of beer") -> b
cat(b, " on the wall, ", b, ".\n", sep = "")
cat("Take one down and pass it around,", bottles(i - 1), "of beer on the wall.\n\n")
}
cat("No more bottles of beer on the wall, no more bottles of beer.\n")
cat("Go to the store and buy some more, 99 bottles of beer on the wall.\n")
Ура!