Gambas-it

Gambas3 => Domande tecniche => Topic aperto da: vuott - 26 Giugno 2013, 11:47:52

Titolo: [Risolto] L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 11:47:52
Non capisco  :-\ perché, se scrivo questa riga:
Codice: gambas [Seleziona]

   Print 16 \ 2 ^ 3

ottengo questo errore:
Type mismatich: wanted Integer, got Float instead
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: md9327 - 26 Giugno 2013, 12:18:14
Credo ci sia un problema con la PRINT... sicuro un bug...
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 12:23:58
Credo ci sia un problema con la PRINT... sicuro un bug...
Dà il medesimo errore anche senza il comando Print.

Ho comunicato la cosa a Minisini, ma ancora non risponde.  :-\
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 13:47:39
Codice: gambas [Seleziona]

   Print 16 \ 2 ^ 3


forse 16 / (2^3)

ma il fratto non è al contrario???
questo \ e questo /.....
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: md9327 - 26 Giugno 2013, 13:50:44
Già...non ci avevo fatto caso neppure io... (ha! la vecchiaia...)
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 13:55:11
Codice: gambas [Seleziona]

   Print 16 \ 2 ^ 3


forse 16 / (2^3)

ma il fratto non è al contrario???
questo \ e questo /.....

Esiste anche questo operatore aritmetico \ .

Dalla guida in linea:
" Restituisce il quoziente dei due numeri Integer troncando il risultato. "

Provate l'esempio:
Codice: gambas [Seleziona]

   Print 3 \ 2, 3 / 2



Già...ha! la vecchiaia...
Mi sa di sì !
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 13:57:07
aaaa neanche lo sapevo....
ok....


comunque con le parentesi và???
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 13:58:22
comunque con le parentesi và???

Ci avevo già provato: no, purtroppo !
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 14:00:21
bò....
mi pare che da qualche parte l'avevo usato (e funzionava...).... prova con le variabili...

adesso fò due prove poi faccio sapere...
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 14:02:24
mi pare che da qualche parte l'avevo usato (e funzionava...).... prova con le variabili...

Funziona con l'operatore da te indicato: / .

Con una variabile, se non sbaglio, ugualmente non funziona.

Attualmente si è costretti a porre una funzione di conversione:
Codice: gambas [Seleziona]

   Print 16 \ CInt(2 ^ 3)
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 14:08:30
si può ovviare anche così....
Codice: gambas [Seleziona]

Public Sub Button1_Click()
Dim n As Integer = 2 ^ 3
  TextBox1.Text = 16 \ n
End
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 15:20:52
si può ovviare anche così....

Sì, ma io preferirei un calcolo diretto. Se, poi, proprio devo optare, sceglierei la funzione di conversione, che mi evita di dichiarare una variabile.
Ad ogni modo, sarebbe opportuno, ovvamente, che Minisini eliminasse il bug.   :hard:
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 15:45:03
si....

facci sapere...
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: Michy9393 - 26 Giugno 2013, 17:03:54
SI è un errore ricorrente anche nel progetto (formulinux)...dipende da come lo scrivi...sennò da errori!
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 17:06:04
coooosa?????
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: Michy9393 - 26 Giugno 2013, 17:11:18
Tranquillo l'ho risolto il problema delle potenze ecc ;) basta vedere il teorema di pitagora :)
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 17:18:21
...dipende da come lo scrivi...sennò da errori!

Propenderei per un bug, in vero, e non per una questione "grafica".
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: Michy9393 - 26 Giugno 2013, 17:19:22
non parlavo di grafica...comunque si mi sono accorto di questo errore ma non l'ho segnalato! Pardon! Ho dovuto scriverli in altro modo  8)
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 26 Giugno 2013, 17:21:02
non parlavo di grafica...comunque si mi sono accorto di questo errore ma non l'ho segnalato! Pardon! Ho dovuto scriverli in altro modo  8)
Sì, capisco.

Ma il problema va eliminato; e Minisini ancora non mi ha risposto alla mia rilevazione del problema !
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: Michy9393 - 26 Giugno 2013, 22:04:38
Fatto bene a segnalare! Bravo Vuott!
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: Top Fuel - 26 Giugno 2013, 22:32:00
Ma il problema va eliminato; e Minisini ancora non mi ha risposto alla mia rilevazione del problema !

Sta ancora cercando il medium per la seduta spiritica. Sai, deve contattare un AMBASCIATORE fantasma... :skull:
Titolo: Re: L'elevazione a potenza restituisce un Float ?
Inserito da: simo97 - 26 Giugno 2013, 22:39:17
 :rotfl: :rotfl: :rotfl:
bisognerebbe che il nostro ambasciatore si ricomponga (nel vero senso della parola) e riformuli la domanda... da vivo (e soprattutto non in vuottiano arcano... ;D)
poi vedrete che Minisini risponderà....
Titolo: Re: [Risolto] L'elevazione a potenza restituisce un Float ?
Inserito da: vuott - 27 Giugno 2013, 20:25:19
Allora ho avuto una risposta soddisfacente dalla M.L.I:

" x \ y doesn't take floats (x / y however does), and exponent will return
float instead of integer.
Not sure this is what Benoit intended. I would expect automatic conversion,
though that might lead to hidden unexpected behaviour which is worse.

This should work:
Print 16 \ cint(2 ^ 3)

Jussi
"

Quindi in sostanza l'operatore aritmetico \ non accetta il divisore a virgola mobile, ma deve essere un intero.

Amen !
Titolo: Re: [Risolto] L'elevazione a potenza restituisce un Float ?
Inserito da: Michy9393 - 27 Giugno 2013, 23:27:02
Perfetto Grazie!