Самая красивая версия, говорите? Тогда давайте попробуем это в ...
The Marvelously Insane FizzBuzzJazz Program.
Lady Capulet, an old bossy woman that loves to count.
The Archbishop of Canterbury, an old fart who adores to spit out letters.
Act I: The only one of them.
Scene I: The Archbishop of Canterbury is a bastard.
[Enter The Archbishop of Canterbury and Lady Capulet]
The Archbishop of Canterbury:
You are nothing!
Scene II: Count, Lady Capulet, count.
The Archbishop of Canterbury:
You are as beautiful as the sum of yourself and a cat!
Lady Capulet:
Am I worse than the square of the product of the sum of a warm gentle flower and a rose
and my pretty angel?
The Archbishop of Canterbury:
If not, let us proceed to Scene VIII.
Scene III: Fizzing to no end!
The Archbishop of Canterbury:
Is the remainder of the quotient between yourself and the sum of a happy cow and a
chihuahua as good as nothing?
Lady Capulet:
If not, let us proceed to Scene IV. Thou art as handsome as the sum of the sum of
the sweetest reddest prettiest warm gentle peaceful fair rose and a happy proud kindgom
and a big roman. Speak thy mind!
Thou art as fair as the sum of thyself and a honest delicious cute blossoming peaceful
hamster. Thou art as cunning as the sum of the sum of an embroidered King and a horse
and thyself. Speak thy mind!
Thou art as amazing as the sum of the sum of a good happy proud rich hero and a hair and
thyself! Speak thy mind.
Speak your mind!
Scene IV: Milady, there is jazz in thy robe.
The Archbishop of Canterbury:
Is the remainder of the quotient between yourself and a proud noble kingdom as good as
nothing?
Lady Capulet:
If not, let us proceed to Scene V. You are as charming as the sum of the sum of a noble
cunning gentle embroidered brave mighty King and a big warm chihuahua and an amazing
pony! Speak your mind!
You are as prompt as the sum of yourself and a big black sweet animal. You are as noble
as the sum of the sum of a gentle trustworthy lantern and yourself and a hog. Speak your
mind!
You are as bold as the sum of the sum of yourself and a good delicious healthy sweet
horse and my smooth cute embroidered purse. You are as peaceful as the sum of a flower
and yourself. Speak your mind.
Speak your mind!
Scene V: Buzz me up, Scotty!
The Archbishop of Canterbury:
Is the remainder of the quotient between yourself and the sum of a gentle happy cow and a
chihuahua as good as nothing?
Lady Capulet:
If not, let us proceed to Scene VI. Thou art as handsome as the sum of the sweetest
reddest prettiest warm gentle peaceful fair rose and a small town. Speak your mind!
You are as prompt as the sum of yourself and a big healthy peaceful fair rich kingdom.
You are as loving as the sum of the sum of an embroidered King and a horse and thyself.
You are as amazing as the sum of yourself and a cute fine smooth sweet hamster. Speak
your mind!
You are as prompt as the sum of the sum of yourself and an amazing cunning Lord and a
hair. Speak your mind.
Speak your mind!
The Archbishop of Canterbury:
Let us proceed to Scene VII.
Scene VI: Output or die!
The Archbishop of Canterbury:
Open your heart!
Scene VII: Oh, to jump the line.
Lady Capulet:
You are as handsome as the sum of a proud noble rich kingdom and a rural town. Speak your
mind! You are as gentle as the sum of the sum of yourself and a green mistletoe and my
father. Speak your mind!
The Archbishop of Canterbury:
We must return to Scene II.
Scene VIII: Goodbye, cruel world!
[Exeunt]
Так, после моей борьбы с SPL здесь , я чувствовал , что я должен был сделать , по крайней мере , один представление с ним на любой вызов. И это все.
Итак, что же все это тогда?
Итак, во-первых, мы объявляем переменные, которые мы собираемся использовать в программе, которые должны исходить из пьес Шекспира. Сытый по горло Ромео, Джульеттой, Офелией и Отелло, я познакомился с архиепископом Кентерберийским и леди Капулетти . Их описания, а также названия Актов / Сцены игнорируются парсером, поэтому вы можете поместить туда практически все, что захотите.
Итак, давайте сделаем некоторый король перевода на что-то менее гибкое .
Акт I, Сцена I
Begin
Lady Capulet = 0;
Действие I довольно простое: мы инициализируем нашу переменную с 0.
Акт I, Сцена II
Lady Capulet += 1;
if(Lady Capulet < Math.pow((2*2*1+1)*(2*1),2))
continue;
else
goto Scene VIII;
Мы увеличиваем значение Lady Capulet и сравниваем его со 100 (да, это целое предложение служит исключительно для получения числа 100); если он не меньше, мы переходим к сцене VIII (конец); в противном случае мы переходим к следующей сцене.
Акт I, Сцена III
if(Lady Capulet % (2+1) == 0)
continue;
else
goto Scene IV;
The Archbishop of Canterbury = 2*2*2*2*2*2*1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2*2*2*2*1;
The Archbishop of Canterbury += 2*1+1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2*2*2*1+1;
System.out.print((char)The Archbishop of Canterbury);
System.out.print((char)The Archbishop of Canterbury);
Сначала мы увидим, равен ли модуль деления на 3 0; если это не так, мы переходим к сцене IV; если это так, мы начинаем выполнять арифметические операции и сохранять их в Archieperson, выводя их в виде символов, как только мы найдем искомую. Да, в конце концов, идея заключается в том, чтобы получить Fizz
.
Акт I, Сцена IV
if(Lady Capulet % (2*2) == 0)
continue;
else
goto Scene V;
The Archbishop of Canterbury = 2*2*2*2*2*2*1+2*2*1+2*1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2*2*1;
The Archbishop of Canterbury += 2*2*1+(-1);
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2*2*2*1+2*2*2*1;
The Archbishop of Canterbury += 1;
System.out.print((char)The Archbishop of Canterbury);
System.out.print((char)The Archbishop of Canterbury);
Сначала проверяется, равен ли модуль деления на 4 0, затем продолжается та же сцена, что и раньше, для Jazz
.
Акт I, Сцена V
if(Lady Capulet % (2*2+1) == 0)
continue;
else
goto Scene VI;
The Archbishop of Canterbury = 2*2*2*2*2*2*1+2*1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2*2*2*2*1;
The Archbishop of Canterbury += 2*1+1;
The Archbishop of Canterbury += 2*2*2*2*1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*2+1;
System.out.print((char)The Archbishop of Canterbury);
System.out.print((char)The Archbishop of Canterbury);
goto Scene VII;
Функции, подобные предыдущим двум, проверяют, возвращает ли модуль деления на 5 0, а затем пытается записать Buzz
; единственная разница в том, что, в конце концов, мы пропускаем сцену.
Акт I, Сцена VI
System.out.print(Lady Capulet);
Чтобы достичь этой сцены, число, принятое леди Капулетти, не должно было быть ни Fizz, ни Jazz, ни Buzz; Итак, мы выводим его в числовой форме.
Акт I, Сцена VII
The Archbishop of Canterbury = 2*2*2*1+2*1;
System.out.print((char)The Archbishop of Canterbury);
The Archbishop of Canterbury += 2*1+1;
System.out.print((char)The Archbishop of Canterbury);
goto Scene II;
Итак, это единственный способ, который я нашел, чтобы перейти к следующей строке: сначала выведите CR, затем LF; затем мы возвращаемся к сцене II, к которой мы можем продолжить программу.
Акт I, Сцена VIII
End.
Достаточно просто.
Я все еще пытаюсь увидеть, смогу ли я показать это в сети, но я не могу найти онлайн-компилятор - тот, который я знаю , кажется, плохо сочетается с какой-либо программой, кроме уже загруженной, или, может быть, есть какой-то проблемы с интерфейсом между клавиатурой и стулом ...
Обновление 1:
После комментария математики я отредактировал порядок сцен Джаза и Базза. Это должно быть сделано.