J'essaie de résoudre un problème mathématique par programmation. Avoir un moyen de générer des numéros de base 3, il serait très facile de résoudre le problème. Connaissez-vous un langage qui a un support intégré pour travailler avec des nombres de base non trivial? Ce serait tout aussi génial si vous pouviez me diriger vers un outil qui peut m'aider à générer une séquence de nombres de base 3moyen le plus facile de générer des numéros de base 3
Répondre
Le langage de programmation J (http://jsoftware.com/) a comme fonctions principales Base et Antibase. Ce sont entièrement numériques, pas de manipulations de caractères. Les entrées de vocabulaire pour ces primaires sont http://jsoftware.com/help/dictionary/d401.htm et http://jsoftware.com/help/dictionary/d402.htm
L'utilisation de ces il est simple de travailler avec la base-3 représentations. Voici un exemple de définition de programme et d'utilisation interactive dans une console:
base3=: 3& #. ^:_1
base3 8
2 2
base3 i. 19
0 0 0
0 0 1
0 0 2
0 1 0
0 1 1
0 1 2
0 2 0
0 2 1
0 2 2
1 0 0
1 0 1
1 0 2
1 1 0
1 1 1
1 1 2
1 2 0
1 2 1
1 2 2
2 0 0
Faites simplement un divmod répété de 3 pour les chiffres jusqu'à ce que vous vous retrouviez avec 0. Multipliez et ajoutez pour restaurer l'original. python
peut convertir de la base 3 en utilisant int('012',3)
qui est 5 et Python elegant inverse function of int(string,base) a l'inverse de ce que
nombres ne possèdent pas intrinsèquement une base. Les représentations des numéros le font. Typiquement, vous exprimez le concept de "représentation de base 3 d'un nombre" en utilisant une chaîne composée uniquement des caractères "0", "1" et "2" (et éventuellement un signe décimal ou un signe négatif ou autre).