Subroutine per la stampa di un floating point

8 Anni 3 Mesi fa #1 da paoletto
Subroutine per la stampa di un floating point è stato creato da paoletto

Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • paoletto
  • Avatar di paoletto
  • Elite Member
  • Elite Member
Di più
8 Anni 3 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Subroutine per la stampa di un floating point
Ciao Paolo,

non ho testato il codice ma lo ho appena letto.

Credo che il problema possa essere nel fatto che il numero di caratteri vuoti che scrivi alla fine deve essere modificato anche in base al numero Ndigit_int.

confermi?

Se non sbaglio scrivi solo una cifra decimale?

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
8 Anni 3 Mesi fa #3 da paoletto
Risposta da paoletto al topic Subroutine per la stampa di un floating point
Ciao Mauro,
in effetti stampo una cifra decimale alla volta come se fosse un intero da 0 a 9: ad ogni iterazione la parte frazionaria viene moltiplicata per 10 e quindi stampata. Se voglio ad esempio tre cifre decimali dopo la virgola allora Ndigit_float vale 3 e così via. Funziona, cioè i numeri che mi aspetto sono quelli che vedo anche in fase di dubug, ma il display rimane sporco quando ad esempio si passa da un numero a tre cifre intere ad uno a due cifre intere perché non viene sovrascritto tutto per bene ma rimangono le cifre precedenti. È un problema di "pulizia" del display, per cui ho deciso di scrivere un po di spazi bianchi dopo l'ultima cifra decimale. Non mi sembra una soluzione pulita onestamente e si può fare di meglio.
Idee, suggerimenti?

Paolo

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • paoletto
  • Avatar di paoletto
  • Elite Member
  • Elite Member
Di più
8 Anni 3 Mesi fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Subroutine per la stampa di un floating point
In effetti il problema credo sia quello che ho detto prima.
La lunghezza del numero non e' solo quella delle cifre decimali che vuoi scrivere ma anche della parte non decimale.
Per cui devi tenere conto anche di Ndigit_int.
Forse e' meglio se lavori su una stringa e poi invii la stringa risultante.

Saluti,

Mauro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
8 Anni 3 Mesi fa #5 da paoletto
Risposta da paoletto al topic Subroutine per la stampa di un floating point
Si certamente, è come dici: lo spazio occupato dipende anche dal numero di cifre intere. Proverò a lavorare con una stringa e passarla alla funzione write_string.
In effetti facciamo quello che farebbe la sprinf()...soltanto se funzionasse! :-)

Vi farò sapere
Paolo.

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • paoletto
  • Avatar di paoletto
  • Elite Member
  • Elite Member
Di più
Moderatori: Mauro LaurentiStefA

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login