Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   RandG (https://www.clubdelphi.com/foros/showthread.php?t=46461)

Gugao 01-08-2007 17:58:14

RandG
 
hola

como asocio a un avariable "R" la cantidad de números aleatorios que la función RandG genera hasta que se produzca un número que supere un valor "L" definido?

Tengo algo asi

repeat
P:= rang()
until
P>L

Además como obtener n valores de R para poder calcular el promedio de números aleatorios hasta que se supera el valor “L”.

delphi.com.ar 01-08-2007 18:02:22

¿Estas preguntando como usar un acumulador o quieres calcular el ciclo del algoritmo?

Código Delphi [-]
var
  R: Integer;
begin
  R := 0;
  repeat
    inc(R);
  until Rang > L;
  { Suponiendo que Rang es tu función de RNG }


Saludos!

Neftali [Germán.Estévez] 01-08-2007 18:06:52

:confused::confused::confused::confused::confused:

Lee la Guía de estilo
Coloca títulos a tus hilos que sean descriptivos.
Usa TAG's.

Por lo demás bienvenido al ClubDelphi.
No puedo responder porque "mi no entender".

Gugao 01-08-2007 19:36:52

Duda con la función RandG
 
Hola

Existe una función incluida en delphi llamada RandG (mean, StdDev) que genera números aleatorios con una distribución normal (gausiana) .


P:= RandG(0,1);


Necesito un programa que contabilice la cantidad de números aleatorios generados por RandG hasta que se supere un valor “L”

Solo llevo esto:

Repeat

P:= RandG(0,1);

until

P>L

Como puede verse, los números generados por RanG son con media 0 y desviación 1, es decir, se generan números alrededor de 0.
Si lo hago manualmente para L=2 y usando solamente:

P:= RandG(0,1);


Tuve que clicar 39 veces para conseguir un valor superior a 2

Necesito un programa que realice esto último automáticamente, es decir, que me asocie el valor 39 a una variable “R”.

Agradezco a la persona que me pueda ayudar

delphi.com.ar 01-08-2007 20:28:49

Básicamente el código que te he mostrado hace eso, algo un poco mas completo:
Código Delphi [-]
var
  R: Integer;
begin
  Randomize;
  R := 0;
  repeat
    inc(R);
  until RandG(0, 1) > 2;
  ShowMessageFmt('Cantidad de Intentos: %d', [R]);
end;

Gugao 01-08-2007 20:36:15

Muchas gracias ya te comentaré como me fué.


La franja horaria es GMT +2. Ahora son las 04:01:14.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi