Files
2023-11-04 14:48:13 +00:00

86 lines
2.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 67f40681074b41ddac0e11b6675df3d628a0da62 Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.lcg-value" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>lcg_value</refname>
<refpurpose>Générateur de congruence combinée linéaire</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>float</type><methodname>lcg_value</methodname>
<void/>
</methodsynopsis>
<para>
<function>lcg_value</function> retourne un nombre pseudo aléatoire,
compris entre 0 et 1. <function>lcg_value</function> combine deux
générateurs de congruence, de périodes respectives
<literal>2^31 - 85</literal> et <literal>2^31 - 249</literal>.
La période de cette fonction est le produit de ces deux
nombres premiers (soit <literal>(2^31 - 85)*(2^31 - 249)</literal>).
</para>
&caution.cryptographically-insecure;
<caution>
<para>
Mettre à l'échelle la valeur de retour vers un intervalle différent en utilisant la multiplication
ou l'addition (une transformation affine) peut entraîner un biais
dans la valeur résultante car les nombres flottants ne sont pas également répartis sur la ligne des nombres.
Comme toutes les valeurs ne peuvent pas être exactement représentées par un nombre flottant, le
résultat de la transformation affine peut également donner des valeurs en dehors
de l'intervalle demandé.
</para>
<para>
Utilisez <methodname>Random\Randomizer::getFloat</methodname> pour générer un
nombre flottant aléatoire dans un intervalle arbitraire. Utilisez <methodname>Random\Randomizer::getInt</methodname>
pour générer un entier aléatoire dans un intervalle arbitraire.
</para>
</caution>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Une valeur pseudo aléatoire, dans l'intervalle de 0.0 à 1.0 inclus.
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>Random\Randomizer::getFloat</methodname></member>
<member><methodname>Random\Randomizer::getInt</methodname></member>
<member><function>random_int</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->