En informatique, en utilisant le chiffre 4 exactement quatre fois, et deux signes exactement et deux opérations + exactement comment obtenir 10?

a marqué ce sujet comme résolu.

Le code source n’est jamais compressé, je ne vois pas ce que ça apporterait. Par ailleurs, c’est ici un cas précis sans aucun sens (aucune utilité, aucune possibilité de le généraliser à sur un code), et tu négliges toujours le coût de la déclaration des fonctions.

+0 -0

Imaginer que je veux calculer 100*100 Dans mon example, soit 1 valeur (4), soit 1 addition (4 + 4), soit 2 additions (4 + 4 + 4) Dans le cas classique, cela va faire à peu près 5050 cas à gérer

employé: Et boss, il faut gérer 5050 cas c’est chaud boss: mais non, il y a le stagiaire. Et il y a aussi Jean-Louis de la compta. Depuis qu’il fait des scripts Excel, il veut devenir développeur. employé: Okay boss

extrazlove

Bon, c’est normal que ça ne fasse aucun sens, ce message est récupéré depuis une réponse sur le topic similaire chez developpez.com.

+1 -0

Bonjour,

Vu qu’il y a besoin de définir une fonction qui n’est même pas comprise dans le problème, je trouve que ce n’est même pas rigolo ou sympathique.

Pour le coup, je préfère largement la version mathématique, avec une variante: écrire les nombres de 1 à X en n’utilisant que le chiffre 4 un minimum de fois. ON peut le faire aussi avec un autre chiffre que 4, avec 9 c’est pas mal non plus. Par exemple jusqu’à 10 j’arrive avec 23 fois le chiffre 4 (et même 21 si on autorise un petit truc en plus). C’est certes toujours aussi inutile, mais au moins c’est rigolo et créatif.

Je pense qu’il y a un autre intérêt pour écrire le code avec moins de caractères, l’intérêt serait La compression ,plus dans un texte il y a des caractères répétitives plus la compression serait efficace.

Dans ce cas précis, ce n’est même pas intéressant avec la compression.

Selon la page wikipedia de JSFuck:

< JSFuck code is extremely "verbose": In JavaScript, the code `alert(" Hello World!")` , which causes a pop-up window to open with the text "Hello world", is 21 characters long. In JSFuck, the same code has a length of 4325 characters.

ON a 6 caractères différents, on a donc besoin de log2(6) = 2.585 bits par caractères, soit 11181 bits au total, contre 21 * 8 = 168 bits pour la version normale. A partir de là j’ai du mal à croire que les algorithmes sans perte arrivent à compresser à 98%, et on n’a pas pris en compte qu’on peut compresser aussi le JS normal (et gagner sûrement quelques bits). OK, le calcul est faux, la distribution statistique des 6 caractères n’est pas uniforme, mais je ne pense pas que ça change grand chose à la conclusion.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte