PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Entier trop court pour mes calculs de combinaisons
Entier trop court pour mes calculs de combinaisons
Débuté par FRED23, 20 fév. 2017 11:48 - 6 réponses
Membre enregistré
28 messages
Posté le 20 février 2017 - 11:48
Bonjour

Je développe actuellement un programme me permettant de calculer toutes les combinaisons.
Par exemple:
Liste de caractères: ABC sur une longueur de deux mon programme me retournera
AA BA CA
AB BB CB
AC BC CC

Donc neuf combinaisons possibles

Pour une petite liste et une petite longueur je ne rencontre aucun soucis
Par contre quand la liste s'augmente et la longueur aussi je me retrouve vite limité en sachant que la valeur max d'un entier sur 8 octet est de 9 x 10^18.
Avez-vous déjà rencontré ce problème et surtout comment l'avez-vous contourné

Cordialement
Posté le 20 février 2017 - 11:56
Bonjour,
D'après l'aide en ligne, le type Numérique permet d'avoir 32 chiffres
significatifs pour la partie entière (donc jusqu'à 10^32).
Est-ce suffisant ?

Frédéric.

"FRED23" a écrit dans le message de groupe de discussion :
2017452fb7a936176cbdfeba297bacdf83eb@news.pcsoft.fr...

Bonjour

Je développe actuellement un programme me permettant de calculer toutes les
combinaisons.
Par exemple:
Liste de caractères: ABC sur une longueur de deux mon programme me
retournera
AA BA CA
AB BB CB
AC BC CC

Donc neuf combinaisons possibles

Pour une petite liste et une petite longueur je ne rencontre aucun soucis
Par contre quand la liste s'augmente et la longueur aussi je me retrouve
vite limité en sachant que la valeur max d'un entier sur 8 octet est de 9 x
10^18.
Avez-vous déjà rencontré ce problème et surtout comment l'avez-vous
contourné

Cordialement
Membre enregistré
2 571 messages
Popularité : +222 (260 votes)
Posté le 20 février 2017 - 13:02
Bonjour,

As tu essayé d'utiliser un numérique du style :
NbCombinaison est numerique(38,0)


--
Cordialement,

Philippe SAINT-BERTIN
Géode Informatique
Membre enregistré
28 messages
Posté le 20 février 2017 - 13:40
Parfait cela fonctionne bien pour mon nombre
par contre je saisis tout dans un tableau je ne peux pas appeler cette variable dans mon code:
exemple:

Montableau est un tableau de NbCombinaison chaines car ce n'est pas un entier

de plus Windev me retourne une erreur : mémoire insuffisante lorsque j'utilise la fonction tableauajouteligne si le nombre est trop grand
Message modifié, 20 février 2017 - 13:46
Membre enregistré
28 messages
Posté le 20 février 2017 - 13:41
J'ai oublié:
Merci beaucoup à vous deux pour la réponse rapide, je ne connaissais pas encore cette fonction

Cordialement
Membre enregistré
2 571 messages
Popularité : +222 (260 votes)
Posté le 20 février 2017 - 14:07
C'est sûr que stocker tout ça en mémoire ça semble peu cohérent. Imagine la quantité de RAM qu'il te faudrait

--
Cordialement,

Philippe SAINT-BERTIN
Géode Informatique
Membre enregistré
28 messages
Posté le 24 février 2017 - 14:40
Merci a tous pour vos conseils,
Philippe SB, je suis donc passé par des fichiers d'analyse générés automatiquement, c'est tout aussi rapide et je n'ai plus le problème de mémoire insuffisante

Bon développement à tous et encore merci pour vos réponses