Le puzzle à quatre fours est un puzzle mathématique récréatif populaire qui consiste à utiliser exactement quatre 4 (et aucun autre nombre) et un ensemble défini d'opérations pour atteindre chaque nombre de 0 à un maximum donné.
Dans cette version, les seuls opérateurs suivants sont autorisés:
- Tous les symboles de regroupement peuvent être utilisés
- Addition (
+
), Soustraction (-
), Multiplication (*
), Division (/
) - Factorielle (
!
), fonction Gamma (Γ
) - Exponentiation (
^
), Racine carrée (√
) - Concaténation (par exemple,
44
est deux4
s) - Point décimal (par exemple,
4.4
deux4
s), Overbar (par exemple.4~ = 4/9
)
L'ordre des opérations standard s'applique.
Votre programme devrait générer, pour une entrée comprise entre 0 et 100 inclus, une solution correcte pour cette entrée. Si le programme génère une solution non valide sur une entrée, ce programme n'est pas valide.
Par exemple, avec une entrée de 0
, votre programme pourrait générer 44-44
.
L'utilisation de modules externes n'est pas autorisée. Seul _.4~
est autorisé pour l'opérateur overbar - c'est-à-dire qu'un seul 4
peut être derrière le point décimal.
C'est le golf de code, donc la solution la plus courte l'emporte.
Edit : Pour être plus clair, le programme doit sortir un ensemble des opérations ci-dessus appliquées à exactement quatre 4
s - ni plus, ni moins. En outre, .4 = 4/10
est un terme valide et compte pour n'en utiliser qu'un 4
.
!(4)
plutôt que (4)!
)?