Séries Mystérieuse de multiple.

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

Séries Mystérieuse de multiple.

par SkyRîme » 23 Juil 2013, 19:59

Bonjour. Etant developer en C j'ai souvent besoin d'utiliser des mathématiques. Mais ce n'est pas la question. J'ai une série de chiffres quelques peu spécial. C'est simple 1 chiffre correspond a un autre chiffres (sans y être égal). J'aimerai trouver un calcul qui me permettrai de dire : si je met un nombre, son nombre correspondant est envoyé. (Par exemple 1 -> -256). Ce calcul est relativement simple si on a une suite de nombre basique, un petit exemple :
1 -> 256
2 -> 512
3 -> 768
Le calcul pour moi sera 1 -> 256*1 ou encore 2 -> 256*2 donc x -> 256*x. Le truc c'est que ma suite de nombre n'est pas du tout basique et après quelques heures de recherche impossible de trouver ce "lien". Je met la suite que j'ai pue obtenir ici. Les nombres non-noté ne veulent pas dire qu'ils n'existent pas. Si vous avez besoin de nombres supplémentaire dite-le moi. Merci d'avance de votre aide. Ci-dessous ma série :
1 -> -256 -> -1
2 -> +512 -> 2
3 -> +256 -> 1
4 -> -1024 -> -4
5 -> -1280 -> -5
6 -> -512 -> -2
7 -> -768 -> -3
8 -> +2048 -> 8
9 -> +1792 -> 7
10 -> +2560 -> 10
11 -> +2304 -> 9
12 -> +1024 -> 4
13 -> +768 -> 3
14 -> +1536 -> 6
15 -> +1280 -> 5
16 -> -4096 -> -16
17 -> -4352 -> -17
18 -> -3584 -> -14
19 -> -3840 -> -15
20 -> -5120 -> -20
21 -> -5376 -> -21
22 -> -4608 -> -18
23 -> -4864 -> -19
24 -> -2048 -> -8
25 -> -2304 -> -9
26 -> -1536 -> -6
27 -> -1792 -> -7
28 -> -3072 -> -12
29 -> -3328 -> -13
30 -> -2560 -> -10
31 -> -2816 -> -11
32 -> +8192 -> 32
33 -> +7936 -> 31
36 -> +7168 -> 28
37 -> +6912 -> 27
38 -> +7680 -> 30
39 -> +7424 -> 29
48 -> +4096 -> 16
49 -> +3840 -> 15
56 -> +6144 -> 24
57 -> +5888 -> 23
62 -> +5632 -> 22
63 -> +5376 -> 21
98 -> -7680 -> -30
99 -> -7936 -> -31
105 -> -6400 -> -25
110 -> -6656 -> -26



XENSECP
Habitué(e)
Messages: 6387
Enregistré le: 27 Fév 2008, 19:13

par XENSECP » 23 Juil 2013, 20:54

Salut,

Tu as essayé de faire une régression dans un tableur?

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 23 Juil 2013, 22:06

Non pas encore. (N'ayant aucun tableur sous la main). Un ami m'a parlé de modulo 8 avec en plus une incrémentation de chiffre facteur de 32. Je ne sais pas si il a raison ou tord et je n'ai pas pu "tester" sa méthode. Il n’arrive par contre pas a faire le calcul. Je précise que le plus grand nombre est 255 et que le nombre associé est toujours un multiple de 6.

Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

par chan79 » 23 Juil 2013, 22:10

Tu pourrais déjà diviser tous les nombres de la colonne de droite par 256

XENSECP
Habitué(e)
Messages: 6387
Enregistré le: 27 Fév 2008, 19:13

par XENSECP » 23 Juil 2013, 22:26

Je commence à voir un pattern en calculer

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 22:38

Pour les signes
1-, 2+, 4-, 8+, 16-....
Le premier nombre à chaque changement de signe si a=256 (ex 8a=2048 pour le changement de signe du rang 8) )
a, 2a, 4a, 8a, 16a

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 23 Juil 2013, 22:45

Premier Post édité avec les résultats divisés pas 256.

Effectivement tu as raison fma ! Il y a des "palliers" pour les signes. Mais après comment définir le nombre ? Les signes n'ont donc peu d'importance.

PS : Le calcul peux avoir des conditions. (ex : Si il est compris entre 8 et 15 le signe du résulta sera +)

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 22:48

Le 2éme chiffre suivant chaque changement de signe (pour le rang 16 changement de signe et deuxième chiffre 4352) est la somme du deuxième et troisième du rang précédent
ex : rang 16, on a 4352 = 1792+2560 du rang 8 = changement de signe)

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 23 Juil 2013, 22:58

D'accord mais cela ne marche pas pour le premier changement de signe, +256 n'est pas égal au 2e + 3e du pallié précédent vue qu'ils n'existent pas.

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 23:03

SkyRîme a écrit:D'accord mais cela ne marche pas pour le premier changement de signe, +256 n'est pas égal au 2e + 3e du pallié précédent vue qu'ils n'existent pas.


Oui, tu as raison

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 23:13

Pour le deuxième chiffre de chaque rang a, 2a, 4a, on peut dire que c'est = rang -a
exemple pour le rang 8a : 7a (deuxième chiffre rang 9)=8a(le rang 8)-a
pour-5a (deuxième chiffre rang 5) = -4a-a

Maintenant il faut vérifier sur toute la suite, car si on fait pareil pour le troisième chiffre, avec + ou -2 selon le signe, ça fonctionne pour les "marches" 4a, 8a, 16a mais pas pour 32a ou c'est -4a pour son troisième chiffre
Pour le quatrième, idem, on passe de +a ou-a, à -5 a pour la marche 32a

"Un ami m'a parlé de modulo 8 avec en plus une incrémentation de chiffre facteur de 32" ... à voir donc

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 23:41

Pour le deuxième chiffre,
1a, 5a, 7a, 17a, 31a.... ?
ça, peut-être, en bas

http://en.wikipedia.org/wiki/Jacobsthal_number

fma
Membre Rationnel
Messages: 506
Enregistré le: 03 Mar 2013, 13:36

par fma » 23 Juil 2013, 23:57

Pour le deuxième chiffre donc :
2n+(-1)^n
Pour le troisième
[2n+(-1)^n] +ou-3
pour le quatrième
[[2n+(-1)^n] +ou-3]+ou-1
?

Bonne insomnie Image


P.S. : http://jm.davalan.org/mots/suites/index.html

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 24 Juil 2013, 04:30

Bon pas grave je vais passer par un autre chemin :D

Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 24 Juil 2013, 07:03

slt,

on a déjà u_{2^n} = -(-1)^n 2^n
ex:
n=0 =>u_{1} = -1 *1 = -1
n=3 =>u_{8} = 1 *8 = 8

Ensuite, si on regarde les intervalles [2^n; 2^{n+1}[, on remarque:
u_{2^n+1} = u_{2^n} -1 (idem le terme apres vaut le terme d'avant moins un)
u_{2^n+2}=u_{2^n}+2
u_{2^n+3}=u_{2^n}+1
u_{2^n+4}=u_{2^n}-4
u_{2^n+5}=u_{2^n}-5
u_{2^n+6}=u_{2^n}-2

Les additions à droite... (-1,2,1,-4,-5,-2) ne sont autres que les premiers termes de la suite!

Autrement dit
u_{2^n+k} = u_{2^n} + u_k, avec u_0=0 pour k < 2^n
la vie est une fête :)

Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 24 Juil 2013, 07:40

ahah, ce n'est autre que la somme des digits de la représentation binaire du nombre! (moyennant si l'index du digit est pair ou pas)

Code: Tout sélectionner
function getValue(n){
   var bin=n.toString(2).split('').reverse().join('');//genre 18 associe 16+2=>10010 => 01001
   var sum=0;
   for(var i=0; i'+val);
}
la vie est une fête :)

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 24 Juil 2013, 13:23

Donc imaginons que j'ai juste 1, il me suffira d'utiliser la fonction getvalue( 1 ) pour le transformé en le nombre associé c'est ça ?

Code: Tout sélectionner
int   nombre;
int   nombreconverti;

nombreconverti = getvalue( nombre );


EDIT: Cette fonction me pose quelques problèmes.
Ça : "n.toString(2).split('').reverse().join('')" je suis perdu dedans.
MinGW ne capte pas ces "var" j'ai donc remplacer par int.
Math.pow je ne sais pas d'ou il vient non plus.
Et c'est tout.

SkyRîme
Messages: 8
Enregistré le: 23 Juil 2013, 19:46

par SkyRîme » 24 Juil 2013, 18:19

Ok i have understand. This is a C# code :) I need to convert him to normal C.

Avatar de l’utilisateur
fatal_error
Membre Légendaire
Messages: 6610
Enregistré le: 22 Nov 2007, 12:00

par fatal_error » 24 Juil 2013, 18:32

c'est pas du C# mais du javascript.

Tu as plus vite fait de comprendre l'algorithme (qui est somme toute assez simple) si tu ne connais pas ces fonctions (plutot que de chercher ce qu'elles font puis de voir s'il en existe un équivalent en C)
la vie est une fête :)


 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 47 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite