593 messaggi dal 09 ottobre 2002
www.dotnetside.org
Bene, bene,
a beneficio dei più curiosi e senza nulla togliere all'ottima soluzione dell'array booleano di Lucio Torre (tra l'altro concettualmente identica), ecco quanto avevo suggerito nel mio precedente:

<%
Dim iMax, strNumeri, arrNumeri, strEstratto, i, n, x
Randomize()
 
iMax = 50 'Totale dei numeri da cui estrarre
'Costruzione automatica del "sacchetto" dei numeri
strNumeri = ","
FOR n = 1 TO iMax 
  strNumeri =strNumeri & n & ","
NEXT

' Estraiamo 10 numeri casuali e li eliminiamo dal "sacchetto"
FOR i = 1 TO 10
  arrNumeri = Split(strNumeri,",")
  x = Cint(Rnd()*UBound(arrNumeri))
  IF x <> LBound(arrNumeri) AND x <> UBound(arrNumeri) THEN
    Response.Write i & "° estratto: <b>" & arrNumeri(x) & "</b><br/>"
    strEstratto = "," & arrNumeri(x) & ","
    strNumeri = Replace(strNumeri,strEstratto,",")
  ELSE
    i = i - 1
  END IF
NEXT
%>

Ciao a tutti

Pochi post. Anzi, quasi quasi spengo
http://www.dotnetside.org/
62 messaggi dal 14 febbraio 2001
www.frisullo.it
Ciao Vitosulla,
non prendere questa mia risposta con tono polemico, lo considero solo un confronto piacevole e costruttivo...

la soluzione che hai proposto, per quanto valida, secondo me ha il carico inutile di ricreazione dell'array ad ogni iterazione, questo significa (anche se si tratta di un piccolo array) allocare e deallocare memoria...
per giunta, ad ogni iterazione, qualora il numero estratto sia "valido", viene chiamata la funzione Replace sulla stringa... funzione che richiede, nella sua esecuzione, altri controlli e calcoli (non semplici)...
per questo non vedo come puoi considerare la tua soluzione "identica" all'array booleano... che invece viene creato una sola volta...ed il cui costo di procedura è dato solo dai controlli sul duplicato (invevitabili)...

Riconosco che la mia proposta è valida solo nel caso richiesto nel post di cingianni...quindi con:
- un numero limitatissimo di estrazioni;
- in un piccolo intervallo di estrazione (con lbound bassissimo 0,1);

in altre situazioni non è sicuramente la soluzione ideale...

saluti
Lucio

Lucio
593 messaggi dal 09 ottobre 2002
www.dotnetside.org
Scusami Lucio,
ma tu dove lo vedi il tono polemico???

Non ho forse detto "l'ottima soluzione di Lucio Torre"?

L'identicità poi, come detto, è a puro titolo "concettuale" e non metodologico.
L'unico motivo per cui ho postato lo script è quello di illustrare in termini di codice quella che era la mia proposta non polemizzare sulla tua.

Spiacente per l'equivoco, del quale eventualmente me ne scuso, saluto tutti gli amici.

Pochi post. Anzi, quasi quasi spengo
http://www.dotnetside.org/

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.