forum Ancestrologie
Ancestrologie - Le Programme => Ancestrologie - Rapports d'anomalies => Discussion démarrée par: DDdeBerdeux le 12 Mai 2006 à 12:04:29
-
Problème constaté avec l'aide de Roger1:
Audelà de la 50ième génération, les N° SOSA ne sont plus significatifs.
Ce nombre pouvant être très important, (un format INTEGER n'aurait pas permis de numéroter plus de 31 générations), c'est le format DOUBLE PRECISION qui est utilisé dans Ancestrologie pour mémoriser le N°SOSA.
Or s'il permet de mémoriser de très grands nombres, ce format n'a une précision que de 15 chiffres, ce qui signifie qu'après la 50ième génération, par exemple le père et la mère ont le même SOSA.
Je ne vois pas de solution simple (stocker le SOSA sous forme de chaîne de caractères et programmer la multiplication et l'addition de cette chaîne, c'est pas simple...).
Les autres types:
NUMERIC(18,0) autorise 60 générations
BIGINT autorise 63 générations
mais provoquent une erreur audelà de ces limites, et ne peuvent aujourd'hui être affichés par le logiciel qui attend un nombre à virgule flottante.
A+
André
-
Comme à ce niveau on n'est plus dans la généalogie mais dans la science fiction, la fable , le rêve .... ça n'a pas beaucoup d'importance :!: :D
-
Tu n'as pas tout à fait tort :wink:
Je voulais surtout signaler ce fait pour que certains n'en soient pas surpris.
A+
André
-
Tout à fait, cela relevait plus d'ailleurs, d'une possibilité informatique.
-
Et les DOUBLE PRECISION ne peut-on pas les utiliser en "unsign" (c.a.d sans le signe moins) ce qui double la capacité :?: :?:
-
Sans certitude, je ne le pense pas, car il s'agit d'un codage sous forme logarithmique (caractéristique + mantisse).
Il n'en est pas de même pour le INTEGER, BIGINT et SMALLINT dont le bit de poids fort est utilisé pour le signe. UNSIGN doit permettre de récupérer ce bit, mais j'ignore si c'est applicable dans FB.
A+
André
PS: un bit supplémentaire= doubler la capacité ne permet de gagner qu'une seule génération