z{}xxxx≥x≥x≥xXUqXxq≤qq≤q *R_IIRq q *R_I0II*IRqxXq≤qxqxq CR_0II÷Rq0*
Wypróbuj tutaj!
Uwaga: ilekroć qtutaj jest mowa o wyjściu lub wyjściu, nie pojawia się on, ponieważ wyskakujące wyjście (którekolwiek oOpP) jest niedostępne lub nie wypisuje poprzedzającego nowego wiersza.
Objaśnienie (nieaktualne, zmieniło się to, że „H” jest drukowane przy użyciu liter alfabetu):
$ push "$"
R_ convert to an array of ordinals, then push all the contents to the stack
0II push 0+1+1 = 2
* multiply by that
R convert to character
q output
z push the lowercase alphabet
{} iterate over it, pushing each char, and do nothing. Stack: ["H","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]
stack manipulation:
xxxx ["H","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r"]
≥ ["r","H","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q"]
x ["r","H","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o"]
≥ ["o","r","H","a","b","c","d","e","f","g","h","i","j","k","l","m","n"]
x ["o","r","H","a","b","c","d","e","f","g","h","i","j","k","l"]
≥ ["l","o","r","H","a","b","c","d","e","f","g","h","i","j","k"]
xxx ["l","o","r","H","a","b","c","d","e"]
q output the "e"
≤ ["o","r","H","a","b","c","d","e","l"]
qq output the "l" twice
≤ ["r","H","a","b","c","d","e","l","o"]
q output the "o"
* push "*",
R_ convert to an array of ordinals, then push all to stack
II increase by 2
R convert back to character
q output
q push a space, then output
* push "*"
R_ convert to an array of ordinals, then push all to stack
I increase that
0II push 0+1+1 = 2
* multiply
I increase
Rq output as character
stack manipulation: (starting stack: ["r","H","a","b","c","d","e","l","o",","," ","W"])
x ["r","H","a","b","c","d","e","l","o",","]
X ["r","H","a","b","c","d","e","l","o"]
q output the "o"
≤ ["H","a","b","c","d","e","l","o","r"]
q output the "r"
x ["H","a","b","c","d","e","l"]
q output the "l"
x ["H","a","b","c","d"]
q output the "d"
C push "C"
R_ convert to ordinal as before
0II÷ floor divide by 2
Rq output as character
0* multiply by 0 so nothing extra would be outputted
Ciekawostka: wszystkie znaki z dozwolonych znaków znajdują się na stronie kodowej SOGL: D