Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Array e random... ripetuto!

    Buongiorno/Buonanotte...
    Ho scritto questo:
    codice:
    massimo=29
    massimo=int(massimo)
    
    Redim pesca(massimo)
       for i=0 to massimo
          pesca(i) = "IMmagine" & i & ""
       next
    pescamax = ubound(pesca) + 1
    
    randomize()
    pescacaso = int(rnd() * pescamax)
    Tuttavia se nel body scrivo più di una volta il <% Response.Write(pesca(pescacaso)) & "
    " %> il valore che ottengo è sempre lo stesso ripetuto. Es:
    codice:
    IMmagine23
    IMmagine23
    IMmagine23
    IMmagine23
    IMmagine23
    IMmagine23
    ...
    Come faccio a poter disporre più volte l'elemento nella pagina (qui ho fatto una lista semplice separata col
    ma la mia necessità di impaginazione è un po' più articolata...) ottenendo ogni volta un valore casuale? Non mi interessa neppure che compaiano due valori uguali, va bene lo stesso.
    codice:
    IMmagine23
    IMmagine19
    IMmagine0
    IMmagine11
    IMmagine6
    IMmagine0
    ...
    Io lo farei ripetendo ogni volta tutto il codice con l'array e la randomizzazione ma mi sembra un po' "rimediata" come soluzione.......

    Credo bisogni utilizzare le Function ma non sono molto pratica, me la date una manina così cerco di capire?
    Beh, per ora vado a nanna, credo sia ora.
    Ciauz!
    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  2. #2
    Il tuo pescacaso funziona, e anche la diagnosi (credo bisogni usare le Function) è quella giusta.

    Scrivi

    codice:
    function pescacaso()
    massimo=29
    massimo=int(massimo)
    
    Redim pesca(massimo)
       for i=0 to massimo
          pesca(i) = "IMmagine" & i & ""
       next
    pescamax = ubound(pesca) + 1
    
    randomize()
    pescacaso = int(rnd() * pescamax)
    end function
    e poi, ogni volta che vorrai eseguirla, ti basterà scrivere l'istruzione

    codice:
    Response.Write(pesca(pescacaso()))
    La funzione poi si potrebbe generalizzare usando come argomento il numero di immagini presenti................
    E' nato www.lombardiamotori.it

    www.universocase.it: il primo portale italiano di annunci immobiliari gratuiti e autogestiti!

  3. #3
    Utente di HTML.it L'avatar di albis
    Registrato dal
    May 2002
    Messaggi
    912
    io farei così

    codice:
     
    <%
    function pescacasoArray(ArrValori)
    	pescamax = ubound(ArrValori) + 1
    	pescacasoArray = ArrValori(int(rnd() * pescamax))
    end function
    
    massimo=29
    massimo=int(massimo)
    
    Redim pesca(massimo)
    for i=0 to massimo
       pesca(i) = "IMmagine" & i & ""
    next
    randomize(timer)
    for i = 0 to 12
    	Response.Write pescacasoArray(pesca) & "
    "
    next
    
    %>
    Forza la magica ROMA

  4. #4
    Mi piaceva la funzioncina di teorema55 e l'avevo pure capita la trasformazione....... ma non funzia....!


    Mi dà errore al primo response.write che trova....

    Tipo non corrispondente: 'pesca'

    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  5. #5
    Utente di HTML.it L'avatar di albis
    Registrato dal
    May 2002
    Messaggi
    912
    prcchè
    pesca non è dichiarata e quindi asp la considera dichiarata nella funzione quando c'è scritto
    codice:
     Redim pesca(massimo)
    quindi dovresti scrivere
    codice:
     
     dim  pesca() 
    function pescacaso()
    massimo=29
    massimo=int(massimo)
    
    Redim pesca(massimo)
       for i=0 to massimo
          pesca(i) = "IMmagine" & i & ""
       next
    pescamax = ubound(pesca) + 1
    
    randomize()
    pescacaso = int(rnd() * pescamax)
    end function
    Response.Write(pesca(pescacaso()))

    però se mi posso permettere è più corretto come dico io

    la popolazione della array
    e il randomize
    è inutile rifarlo ogni volta
    nella funzione va messo solo l'estrazione del valore casuale
    Forza la magica ROMA

  6. #6
    Grazie mille albis, come al solito gentilissimo.....
    Per riconoscenza ho usato il tuo codice!!!


    A presto.
    Sto ancora imparando.... Chiedo comprensione!
    !...Send ME a message...!

  7. #7
    Utente di HTML.it L'avatar di albis
    Registrato dal
    May 2002
    Messaggi
    912
    Originariamente inviato da Picciola
    Grazie mille albis, come al solito gentilissimo.....
    Per riconoscenza ho usato il tuo codice!!!


    A presto.
    ti ringrazio umilmente per aver usato il mio codice



    Forza la magica ROMA

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.