Autore Topic: Calcolo combinatorio (anche per Formulinux)  (Letto 3208 volte)

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Calcolo combinatorio (anche per Formulinux)
« il: 23 Marzo 2013, 00:12:50 »
Et voilà: calcolo combinatorio.  :)
Per calcolare disposizioni, permutazioni e combinazioni di tot elementi prendendone x alla volta, comprese le ripetizioni (escluse le permutazioni perchè complicava troppo il programma).
Alla fine ho ceduto a Picavbg ed ho usato le variabili float con la notazione scientifica. Pazienza.  :P
Se intravvedete dei possibili miglioramenti e/o/u/i errori ditemelo pure.  :)
Contento Michy?  ;)
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline Michy9393

  • Gran Maestro dei Gamberi
  • *****
  • Post: 570
  • Ubuntu: Linux for Human Beings
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #1 il: 23 Marzo 2013, 00:21:12 »
Ho visto che hai spostato la risposta aprendo un nuovo topic :) hai fatto bene! Comunque grazie vedo subito!

Offline 9bit

  • Grande Gambero
  • ***
  • Post: 191
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #2 il: 26 Marzo 2013, 22:33:19 »
Sembra che funzioni alla grande! Complimenti  :2birre:

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #3 il: 27 Marzo 2013, 00:28:04 »
Grazie. Comunque spremetelo bene per cercare qualsiasi mancanza che mi sia sfuggita. :)
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline 9bit

  • Grande Gambero
  • ***
  • Post: 191
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #4 il: 27 Marzo 2013, 12:14:56 »
Ho notato che quando lo compilo mi vengono fuori 8 Warnings...cosa sono?
Riga
32   global variable hidden by local declaration: Elemdausare
32   global variable hidden by local declaration: Ripetizioni
46   global variable hidden by local declaration: Elemtotali
46   global variable hidden by local declaration: Elemdausare
46   global variable hidden by local declaration: Ripetizioni
48   global variable hidden by local declaration: Permutazioni
46   global variable hidden by local declaration: Disposizioni
72   global variable hidden by local declaration: Elemdausare

Premetto che il programma funziona correttamente  :ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #5 il: 27 Marzo 2013, 13:04:45 »
Hai dichiarato e usato variabili con nome uguale a proprietà

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.724
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #6 il: 27 Marzo 2013, 13:13:49 »


Hai posto una medesima variabile sia in modalità globale che locale.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #7 il: 27 Marzo 2013, 18:35:59 »
Non dovrebbero essere due entità indipendenti?
Allora cambio un pò di nomi. :coder:
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.724
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #8 il: 27 Marzo 2013, 18:51:40 »
Non dovrebbero essere due entità indipendenti?

          :rolleyes:
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline Picavbg

  • Senatore Gambero
  • ******
  • Post: 1.620
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #9 il: 28 Marzo 2013, 01:22:34 »
Hai posto una medesima variabile sia in modalità globale che locale

No, non incide, però occorre chiarire bene cosa intendiamo per variabile globale. Se essa è estesa a tutto il progetto deve essere dichiarata Public in un modulo e deve essere intercettata con NomeModulo.Variabile. In questo caso se nella :


Codice: [Seleziona]
' Gambas class file
Private Variabile as integer

Public Sub MiaProcedura_Click()
.......bla.......bla.......bla.......
if Variabile = 100 then
   print "Sto utilizzando la Variabile dichiarata [i]Private[/i] nella Form"
Endif
End
Sono sicuro di interrogare la variabile globale a livello di Form

Se invece ho:
Codice: [Seleziona]
' Gambas class file
Private Variabile as integer

Public Sub MiaProcedura_Click()
Dim Variabile as Integer
.......bla.......bla.......bla.......
if Variabile = 100 then
   print "Sto utilizzando la [i]Variabile[/i] locale"
Endif
End
Posso incappare in un esito non prevedibile, perchè sto pensando di utilizzare la variabile dichiarata come Private a livello di Form, mentre Gambas assume come corrente quella dichiarata nella DIM in testa alla stessa procedura.
Quindi bisogna stare ben attenti a quello che si sta scrivendo.

Spero di essermi spiegato con sufficienza.
 :ciao:
« Ultima modifica: 28 Marzo 2013, 10:47:33 da Picavbg »
:ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #10 il: 28 Marzo 2013, 12:30:27 »
Sì, come ha descritto picavbg, gambas prende in considerazione la variabile dichiarata all'interno della funzione come definizione.

Il mio consiglio, e si può anche notare nella documentazione e negli esempi, è di dichiarare le variabili dell'oggetto anteponendo il carattere del dollaro "$" prima del nome, così da distinguerle dalle variabili normali.

Ricordo, inoltre, che i metodi e le variabili con anteposto un carattere di sottolineatura "_", istruisce il compilatore gambas a nascondere il riferimento nel caso la classe venga utilizzata come libreria.

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #11 il: 28 Marzo 2013, 23:42:36 »
Corretti i nomi. Ora non dovrebbe più creare problemi. :)
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline Michy9393

  • Gran Maestro dei Gamberi
  • *****
  • Post: 570
  • Ubuntu: Linux for Human Beings
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #12 il: 29 Marzo 2013, 15:28:21 »
Continua a migliorarlo mi raccomando :) formulinux ha bisogno di tutto e di tutti  ;)

Offline simo97

  • Gran Maestro dei Gamberi
  • *****
  • Post: 501
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #13 il: 29 Aprile 2013, 21:46:06 »
------su formulinux------
non ciò capto molto però avviando mi fa "too many arguments"...
forse un problema di integrazione...
non sò.. ma io non avendoci capito niente non posso neache capire "cos'ha" :hatecomputer: :hatecomputer:

dagli un occhiata...
;D

Offline simo97

  • Gran Maestro dei Gamberi
  • *****
  • Post: 501
    • Mostra profilo
Re: Calcolo combinatorio (anche per Formulinux)
« Risposta #14 il: 29 Aprile 2013, 21:58:40 »
aggiornato all'ultima ver...
adesso va :-\
;D