Vous n'êtes pas connecté.
Forum : Blabla général Page : 1
Auteur Message
Charles Apollon
image du rang
Groupie officielle d'Uematsu


Posté le 20 décembre 2017 à 10:54 | Sujet : [Help] Il me faut un codeur
Bonjour.

Je suis une bille en code et j'ai besoin d'un code pour générer une suite de nombres aléatoire sous conditions pour les référencer dans une BDD.

Voici le schéma de dont j'ai besoin :

1) Les nombres générés doivent être compris entre 0 et 11, sous cette forme : [0, 1, 3, 5]. Pour plus de facilité on peut supprimer les symboles et les référencer dans la base de donnée en 0135. Le nombre de chiffres dans la suite s'appelle le cardinal. Ainsi, la suite de l'exemple a un cardinal de 4, et le 0 est le cardinal 1, le 1 le cardinal 2 etc...

2) La suite de nombre doit avoir des cardinaux compris entre 3 et 7. Donc il n'y aura pas de suite en dessous de 3 chiffres, et pas de suite au dessus de 7 chiffres. Cela a une raison : de telles suites ne me sont tout simplement pas utiles.

3) Les cardinaux des ensembles doivent être rangés dans l'ordre croissant (nommé « ordre normal ») de telle manière à ce que le premier et le dernier cardinal de l'ensemble aient la différence la plus petite (nommé «meilleur ordre normal »). Cette condition peut paraître contre nature, mais par exemple, la suite [10, 0, 2, 3] est le « meilleur ordre normal ». Explications. Ces chiffres sont régit sous le « modulo 12 ». Ainsi, 0 est équivalent à 12, 3 est équivalent à 15, etc. Pour trouver le meilleur l'ordre normal, il faut « permuter » les cardinaux en modulo 12. Reprenons l'exemple [10, 0, 2, 3].
J'ai 3, 2, 0 et 10 en chiffres. Je les met dans l'ordre normal et j'ai [0, 2, 3 10]. Mais mon premier et mon dernier cardinal ont une différence de 10. Pour trouver la plus petite différence, je vais les permuter. Première permutation, j'ai [2, 3, 10, 12]. Quand on permute, on place le premier cardinal à la place du dernier cardinal et on l'y ajoute 12. La différence est donc toujours de 10. Seconde permutation : [3, 10, 12, 14]. Différence de 11. On continue : [10, 12, 14, 15] différence de 5. On a donc ici une différence optimale comparée à 10 et 11. On rabat le tout sur des valeurs comprises entre 0 et 11 grâce au modulo 12 et on a donc [10, 0, 2, 3].

Avec ces conditions, il me faut toutes les combinaisons possible de meilleur ordre normal avec des ensemble de 3 cardinaux à 7 cardinaux. Le nombre d'ensemble sera énorme et je ne peux pas le faire à la main...

In fine, bien entendu l'idéal serait que la masse colossale d'ensemble soit dans une liste d'ordre croissant. En haut les premier ensemble de 3 cardinaux et en bas les derniers ensemble de 7 cardinaux.

Merci beaucoup !

#myst6re

[Ce message a été édité par son auteur pour la dernière fois le 20 décembre 2017 à 11:19]




Image

664 messages
Voir le profilLien du message Aller en haut de page
Acro
image du rang
Administrateur


Posté le 20 décembre 2017 à 13:30 | Sujet : [Help] Il me faut un codeur
Coucou

Est-ce que tu peux expliquer davantage le besoin pour que ce soit plus facile à comprendre ? Car comme ça, j'ai du mal à saisir ce que tu veux faire exactement. Et ça m'intéresse bien de te le faire. ^^

  Patch de retraduction de Final Fantasy VII, Néo-Midgar (inclus dans le pack SYW)

58037 messages
Voir le profilLien du message Aller en haut de page
ced199
image du rang
Pervers


Posté le 20 décembre 2017 à 15:43 | Sujet : [Help] Il me faut un codeur
Je pense que si tu pouvais faire une petit dessins , celà aiderait a comprendre
Image

" Paradise is a three centimeter space between the over knee-socks and miniskirt "

"Sans la Nekophilie, je serais encore vierge"
3420 messages
Voir le profilLien du message Aller en haut de page
Charles Apollon
image du rang
Groupie officielle d'Uematsu


Posté le 20 décembre 2017 à 22:44 | Sujet : [Help] Il me faut un codeur
J'ai besoin d'une liste de tout ces ensembles pour m'en servir dans une base de données.

Les "chiffres" correspondent à des notes (0 pour Do, 1 pour Do#/Ré bémol, 2 pour Ré etc...). Donc les ensembles sont des suites de notes. Par exemple, l'ensemble de cardinal 3 [0, 1, 3] correspond à Do, Ré bémol, Mi.
Pourquoi j'en ai besoin ? Trop compliqué à expliquer.
Pourquoi les "permutations" ? Car c'est comme ça que le mec a théorisé cette technique d'analyse en 1977 l'a fait.

Pour donner un autre exemple de permutation :
J'ai 4 notes : 4, 2, 8, 7. (Mi, Ré, La bémol, Sol). Peut importe leur place sur la partition.

Dans l'ordre "normal", c'est à dire croissant on a donc [2, 4, 7, 8]. La différence entre le premier cardinal (2) et le dernier cardinal (8) est égal à 6 (8-2= 6 pour ceux qui suivent pas...).
Maintenant d'après la technique d'analyse d'Allen Forte, il faut vérifier si cet ordre là est optimum, c'est à dire que la différence entre le dernier et le premier cardinal est la plus petite. Pour cela, on va permuter.

Première permutation :
Je passe le premier cardinal (2) à la place du dernier (donc à la place de 8) ce qui va tout décaler. Pour faire ça correctement, vu que les notes de musique sont modulo 12, je vais passer le 2 au modulo 12 ce qui donne 14 :
[4, 7, 8, 12]. La différence entre 12 et 4 est de 8. Non, ça ne me plait pas.

Seconde permutation :
[7, 8, 12, 16] -> 9

Troisième permutation :
[8, 12, 16, 19] -> 11.

L'ordre "normal" optimum est donc le premier : [2, 4, 7, 8].

Il faut maintenant faire ça pour tous les ensembles possibles et imaginables contenant entre 3 et 7 cardinaux.

[Ce message a été édité par son auteur pour la dernière fois le 20 décembre 2017 à 22:46]




Image

664 messages
Voir le profilLien du message Aller en haut de page
Acro
image du rang
Administrateur


Posté le 21 décembre 2017 à 00:39 | Sujet : [Help] Il me faut un codeur
J'ai compris.
Par contre, ça m'a l'air chiant à faire et j'ai du mal à voir où l'on s'arrête.
Par exemple, [0, 1, 2] en est un, non ?

  Patch de retraduction de Final Fantasy VII, Néo-Midgar (inclus dans le pack SYW)

58037 messages
Voir le profilLien du message Aller en haut de page
Charles Apollon
image du rang
Groupie officielle d'Uematsu


Posté le 22 décembre 2017 à 01:14 | Sujet : [Help] Il me faut un codeur
Oui, juste pas de doublons comme [0, 1, 1]. Du coup ben, [0, 1, 2], c'est le premier.




Image

664 messages
Voir le profilLien du message Aller en haut de page
Rand
image du rang
Duo infernal


Posté le 22 décembre 2017 à 02:31 | Sujet : [Help] Il me faut un codeur
Si tu faisais des graphes ça serait plus simple.
La grandeur de l'homme est sa force de conviction qui lui permet de soulever des montagnes alors qu'il occupe une infime place dans l'univers !
12456 messages
Voir le profilLien du message Aller en haut de page
ced199
image du rang
Pervers


Posté le 22 décembre 2017 à 04:11 | Sujet : [Help] Il me faut un codeur
Rand a dit :
Si tu faisais des graphes ça serait plus simple.


il a demandé un codeur pas un graphiste *ok je sors*
Image

" Paradise is a three centimeter space between the over knee-socks and miniskirt "

"Sans la Nekophilie, je serais encore vierge"
3420 messages
Voir le profilLien du message Aller en haut de page
Page : 1
Qui est en ligne ?Lecteur audio
Aucun utilisateur en ligne dans les 5 dernières minutes.
Lecteur désactivé (à activer dans le profil)
Jeux entre forumeurs
Le Tarot des Anciens



Inscrits : yuyu, Acro, RJ, Yui
Skull King



Inscrits : yuyu, Acro, RJ
Interrupted by Hanabi



SpeciNames



Le Démineur de MSN