Toglilo pure, era una prova di una funzione trovata sul forum (Frac) che dovrebbe tornare la parte di 'resto' di un float.
Il 'numeraccio' probabilmente è dato dagli arrotondamenti.
Quello che a te interesse dovrebbe essere solo la parte relativa al mod, ovvero dove viene 'settata' la variabile binario.
Dec2Bin convertitore in binario in bennu
- gigios
- Newser OC.it
- Posts: 851
- Joined: 4 May 2011, 9:08
- Console open: Wiz; Caanoo
- Location: Lombardia
Re: Dec2Bin convertitore in binario in bennu
Questa è la funzione che ho provato ad aggiungere al tuo esempio, chiamandola poi internamente dove premi i tasti.
Mettendo il say prima rel return vedo il valore corretto nella console, ma se metto il valore tornato dalla funzione in una variabile 'plottata' poi con un write_string ottengo dei numeri (sembra la somma di qualche cosa...)
Code: Select all
FUNCTION string NumberToBinString (int number)
PRIVATE
string resultString;
int n;
BEGIN
n = number;
resultString = "";
while(n >= 1)
resultString = (n mod 2) + resultString;
n = n / 2;
end
say (resultString);
RETURN resultString;
END
- Zip
- Site Admin
- Posts: 3101
- Joined: 3 May 2011, 21:03
- Console open: Attuali Caanoo , Wiz, dingoo a320 (possedute Wiz, s7100B, s5110, s7300B, OpenPandora)
- Location: Sicilia
- Contact:
Re: Dec2Bin convertitore in binario in bennu
bene gigios ora aspetto che posti la tua ultima versione e iniziamo a lavorare all'aggiunta della possibilita
di inserire manualmente il numero da convertire
di inserire manualmente il numero da convertire
REGOLAMENTO[/b]
- gigios
- Newser OC.it
- Posts: 851
- Joined: 4 May 2011, 9:08
- Console open: Wiz; Caanoo
- Location: Lombardia
Re: Dec2Bin convertitore in binario in bennu
Eccomi qui, scusa il ritardo nella risposta
Questa è la versione 'riadattata' da me:
Ho modificato leggermente il programma per fare dei test su Bennu (sfrutto questo piccolo programmino anche per farmi un'infarinatura).
Per provarlo devi premere uno dei tasti numerici e dovrebbe apparire la corrispondente rappresentazione binaria.
Ciao.
Questa è la versione 'riadattata' da me:
Code: Select all
//-----------------------------------------------------------------------------
//CONVERTITORE v.0.3
//-----------------------------------------------------------------------------
//Declare of internal functions
Declare FUNCTION string IntToBinString (int value)
End
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//Main Process
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Constants
const version=0.3; // Application Version
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Main Process Variables
LOCAL
int numberInt; //Int number to convert
string binaryString; //Binary string with converted value
byte last_ascii; //Last ascii key pressed
END
//-----------------------------------------------------------------------------
BEGIN
set_mode(320,240,16);
//-----------------------------------------------------------------------------
//Display information
write(0,10,5,0,"dec2bin v"+ FTOA(version));
write(0,10,15,0,"Press a number key!");
write(0,120,30,0,"Numero :=>:");
write_int(0,210,30,0,&numberInt);
write(0,120,40,0,"Binario :=>:");
write_string(0,210,40,0,&binaryString);
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
//Main Loop
loop
if(ascii!=0 & last_ascii!=ascii)
last_ascii = ascii;
//Convert key pressed into number (ascii 0 = 48)
numberInt = ascii-48;
if(numberInt=>0 & numberInt<=9)
binaryString = IntToBinString(numberInt);
else
binaryString = "none";
end
end
if(key(_esc))
exit("Press ESC to close console window!", 0);
end
frame;
end
let_me_alone();
END
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
// Convert the integer in the Binary string
// value (int) = value to convert
// Return (string) = Binary string (ex. 9 = "1001")
FUNCTION string IntToBinString (int value)
PRIVATE
int n;
string resultString;
BEGIN
n = value;
if(n <= 0) RETURN "0"; end
resultString = "";
while(n >= 1)
resultString = (n mod 2) + resultString;
n = n / 2;
end
//say (resultString);
RETURN resultString;
END
//-----------------------------------------------------------------------------
Per provarlo devi premere uno dei tasti numerici e dovrebbe apparire la corrispondente rappresentazione binaria.
Ciao.
- Zip
- Site Admin
- Posts: 3101
- Joined: 3 May 2011, 21:03
- Console open: Attuali Caanoo , Wiz, dingoo a320 (possedute Wiz, s7100B, s5110, s7300B, OpenPandora)
- Location: Sicilia
- Contact:
Re: Dec2Bin convertitore in binario in bennu
Ottimo gigios se vuoi lo presentiamo sul forum di bennu ancora nessuno ha fatto un lavoro di questo tipo
adesso basandomi su questo faro l'orologio (in questi giorni ovviamente devo finire la webzine)
bravo gigios
adesso basandomi su questo faro l'orologio (in questi giorni ovviamente devo finire la webzine)
bravo gigios
REGOLAMENTO[/b]
- gigios
- Newser OC.it
- Posts: 851
- Joined: 4 May 2011, 9:08
- Console open: Wiz; Caanoo
- Location: Lombardia
Re: Dec2Bin convertitore in binario in bennu
Non mi sembra un gran che
Sicuramente mi è servito come 'punto' di partenza, almeno ho provato (pochissimo) bennu e mi rendo conto che non è proprio come gli strumenti di 'lavoro' che uso tutti i giorni.
Non avere un help in linea o comunque un editor che suggerisca la sintassi e i parametri disponibili fa diventare ardua la programmazione.
E' vero che sino a 10 anni fa era così che si lavorava (considerando che ho cominciato così e mi ero fatto un editor in VB4 poi portato in VB6 per l'azienda in cui lavoravo), ora però con gli strumenti che ci sono/usano tornare indietro è decisamente scomodo.
Anche il fatto, come accennavo in chat, che la documentazione non sia completa, e tanto meno corretta, è decisamente fuorviante!
Comunque, tornando a noi, proverò ancora a giochicchiare un po' con questa versione
Sicuramente mi è servito come 'punto' di partenza, almeno ho provato (pochissimo) bennu e mi rendo conto che non è proprio come gli strumenti di 'lavoro' che uso tutti i giorni.
Non avere un help in linea o comunque un editor che suggerisca la sintassi e i parametri disponibili fa diventare ardua la programmazione.
E' vero che sino a 10 anni fa era così che si lavorava (considerando che ho cominciato così e mi ero fatto un editor in VB4 poi portato in VB6 per l'azienda in cui lavoravo), ora però con gli strumenti che ci sono/usano tornare indietro è decisamente scomodo.
Anche il fatto, come accennavo in chat, che la documentazione non sia completa, e tanto meno corretta, è decisamente fuorviante!
Comunque, tornando a noi, proverò ancora a giochicchiare un po' con questa versione