Le 05/09/2011 20:22, VEDEL Patrice a écrit :
Erreur :
Libo ne reproduit pas
Et msgbox STR(nb)& " occurences à 1" serait plus adapté...
;)
From: [email protected]
To: [email protected]
Subject: [fr-users] [Basic] Bug Rnd
Date: Mon, 5 Sep 2011 18:17:58 +0000
Bonsoir
Les fonctions Rnd, Random, ou quel que soit leur nom renvoient normalement un
nombre supérieur ou égal à 0 et strictement inférieur à 1.
L'aide LibO (comme OOo) précise :
Fonction Rnd [Exécution]
Renvoie un nombre aléatoire entre 0 et 1..../...
La fonction Rnd renvoie uniquement des valeurs comprises
entre 0 et 1.
Ce qui n'est pas très clair concernant 0 et totalement faux concernant 1 :
Sub TestRnd
Dim i As Long, nb As Long
For i = 1 To 1000000
if rnd() = 1 Then nb = nb + 1
Next i
msgbox STR(i)& " occurences à 1"
End Sub
Testé en 3.4.2.
La fréquence d'apparition de 1 est hallucinatoire...
Le bug est connu et déjà référencé sur Bugzilla :
http://openoffice.org/bugzilla/show_bug.cgi?id=116920
Testé sous Ubuntu 10.04 et LO 3.3.3 : aucune occurrence [occurrence avec
2 c et 2 r] à 1 et aucune occurrence à 0 non plus, même avec 10 millions
d'occurrences. Et accessoirement, pourquoi utiliser la fonction STR ? On
obtient le même résultat sans.
--
R. L.
--
Envoyez un mail à [email protected] pour savoir comment vous
désinscrire
Les archives de la liste sont disponibles à
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne
pourront pas être supprimés