Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - Codice visual Basic
Forum - Visual Basic 6 - Codice visual Basic

Avatar
manuel0810 (Normal User)
Newbie


Messaggi: 1
Iscritto: 11/03/2010

Segnala al moderatore
Postato alle 17:11
Giovedì, 11/03/2010
Ciao a tutti, sono nuovo, inesperto e ignorante.

Mi servirebbe una mano riguardante un codice da inserire in visual basic per la mia tesi. Riuscirei a farlo a mano in excel più o meno, ma mi piacerebbe automatizzarlo tramite macro.

Io devo cercare tutte le permutazioni possibili di 8 numeri da un campione di 4 a disposizione (in progressione 1,2,3,...,60). e fin qui persino io potrei non avere problemi. In aggiunta però mi servono alcuni filtri ovvero:
- degli 8 numeri necessariamente devo averne 2 pari (textbox che mi chiede quanti numeri pari voglio che io abbia in uscita per esempio potrebbe andare bene??)
- la somma degli 8 numeri deve restare tra 360 e 440 (oppure la media tra 45 e 55)
- le permutazioni non si devono ripetere
- se possibile scegliere almeno un numero all'interno della permutazione (ovvero voglio che ci sia almeno l'8 nelle combinazioni da me trovate).

Cosa dite? se non sono stato chiaro (cosa molto probabile) ditemelo pls.

Grazie


PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 21:20
Giovedì, 11/03/2010
allora, io ho capito che tu hai 8 numeri da 1 a 60 e che devi applicarvi dei filtri giusto?
se si...
Testo quotato

Postato originariamente da manuel0810:
- degli 8 numeri necessariamente devo averne 2 pari


basta che usi un ciclo for e per vedere se è pari usa la funzione

Private Function NumPari(Byval num as integer) as boolean
if num Mod 2 = 0 then 'lo divido per 2 e se il resto è 0
NumPari = True 'allora è pari
else
NumPari = False ' altrimenti dispari
end if
End Function

Testo quotato


- la somma degli 8 numeri deve restare tra 360 e 440 (oppure la media tra 45 e 55)


dipende da dove ce li hai questi numeri... in un array? in una textbox? dove?
Comunque sia basta che li sommi e con un if controlli...
if (risultato > 360) AND (risultato < 440) then ...

Testo quotato


- le permutazioni non si devono ripetere


ehmm... che sono le permutazioni? :-|

Testo quotato


- se possibile scegliere almeno un numero all'interno della permutazione (ovvero voglio che ci sia almeno l'8 nelle combinazioni da me trovate).


sempre con un ciclo vedi se vi è il numero 8

PM Quote