Un quine cyclique semi-cardinal est un quine cyclique à deux états, l'un perpendiculaire à l'autre.
Règles
Vous pouvez décider quelle rotation vous souhaitez mettre en œuvre, dans le sens horaire ou antihoraire.
Une fois la rotation effectuée, tout espace dans votre code doit être remplacé par des espaces pour préserver le positionnement.
Votre programme doit répondre à la définition communautaire d'un quine .
C'est le golf de code, donc le programme le plus court dans chaque langue gagne. Votre premier programme est utilisé pour votre nombre d'octets.
Les failles standard sont interdites.
Exemples
Si votre programme est:
$_='print';eval
Ensuite, l'itération suivante doit être soit:
$
_
=
'
p
r
i
n
t
'
;
e
v
a
l
ou
l
a
v
e
;
'
t
n
i
r
p
'
=
_
$
qui doit sortir le programme d'origine:
$_='print';eval
Si votre programme est:
;$_=';
;$_=';
print
Ensuite, l'itération suivante doit être soit:
;;
''t
==n
__i
$$r
;;p
ou:
p;;
r$$
i__
n==
t''
;;
qui doit sortir le programme d'origine:
;$_=';
;$_=';
print
la source
Réponses:
CJam ,
191715 octetsEssayez-le en ligne! Essayez la rotation.
Explication
Dans le code pivoté, nous avons des sauts de ligne partout:
Comme Lynn l'a remarqué lors du défi de quine précédent de Dom, l' insertion de sauts de ligne forme en fait toujours une quine valide, car les sauts de ligne à l'intérieur du bloc seront de toute façon conservés textuellement, et il y aura également des sauts de ligne dans la
"_~"
chaîne pour que ces deux caractères à la fin apparaissent sur leur propre ligne. Donc{s"_~"+...}_~
(avec les sauts de ligne) est toujours un framework de quine valide (bien qu'il y aura un saut de ligne supplémentaire à la fin de la chaîne).N*
insère maintenant encore plus de sauts de ligne dans cette chaîne, mais nous ne nous en soucions pas vraiment: car a maintenant""-
un saut de ligne à l'intérieur de cette chaîne, donc il supprime en fait tous les sauts de ligne de la représentation du programme. Nous nous retrouvons donc avec la forme horizontale du code à nouveau, annulant la rotation.la source
Stax , 28 octets
Exécutez et déboguez le premier formulaire
Exécutez et déboguez le deuxième formulaire
la source
> <> , 22 octets
Essayez-le en ligne!
Tourné dans le sens inverse des aiguilles d'une montre:
Essayez-le en ligne!
Le premier imprime la ligne en sens inverse avec des nouvelles lignes entrecoupées, et le second l'imprime en sens inverse sans les nouvelles lignes.
la source
05AB1E ,
3634 octetsEssayez la première itération ou essayez la prochaine itération
la source