|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | |
|
Junior Member
Iscritto dal: Sep 2013
Messaggi: 20
|
[C] Invertire variabile intera
Ragazzi un altro piccolo problema..
Devo convertire una variabile di tipo intera in codice ASCII... Prima cosa devo scomporre la variabile in numeri singoli e ci sono arrivato così: Quote:
Un informazione che potrebbe risolvermi il problema sarebbe scoprire da quanti numeri è composta la variabile, e girando in internet ho trovato solo sizeof, ma mi da sempre come risultato 4, e nn mi dice quanti numeri ci sono... In mente avrei qualche soluzione, ma è brutta da scrivere.. Qualcuno mi sa dire il modo più veloce per farlo? |
|
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Quote:
Nel tuo caso comunque ti basta scomporre il numero nelle sue cifre come ti è stato spiegato, salvare tali cifre in un'array, quindi stampare le celle dell'array in senso inverso. |
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Sep 2008
Città: Milano
Messaggi: 126
|
Per sapere da quante cifre è composto un numero.. come te la cavi con i logaritmi?
|
|
|
|
|
|
#4 |
|
Junior Member
Iscritto dal: Sep 2013
Messaggi: 20
|
Si anche io già avevo pensato a questo Kendal... pensavo che magari ci fosse qualcosa simile a sideof che mi faceva il conto, ma niente quindi... vabbè faccio con il vettore allora..
lasciamo stare i logaritmi XD |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Vicenza
Messaggi: 1570
|
Quote:
Nel 90% dei casi non troverai nulla che ti semplifica la vita. Comunque, essendo alle prime armi, ti consiglio di sbatterci sempre la testa sui problemi, e non cercare mai, se non strettamente necessario, funzioni che ti facilitino il compito. |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jul 2007
Città: Agliana (PT)
Messaggi: 563
|
Quote:
Ad esempio: Codice:
int num; char str[12]; sprintf(str, "%d", num);
__________________
The Wheel of Time turns, and Ages come and pass, leaving memories that become legend. Legend fades to myth, and even myth is long forgotten when the Age that gave it birth comes again. In one Age, called the Third Age by some, an Age yet to come, an Age long past, a wind rose.... The wind was not the beginning. There are neither beginnings nor endings to the turning of the Wheel of time. But it was a beginning. |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2095
|
Temo che NON vogliano che si usi la sprinft(), vero?
Teoricamente dovrebbe esserci anche itoa(), ma non è standard: http://www.cplusplus.com/reference/cstdlib/itoa se sei su Linux, purtroppo, non la troverai! |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Con sprintf hai lo stesso problema di non sapere che dimensioni attribuire all'array. Consiglio anche io di ragionare sui logaritmi...
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
|
|
|
|
|
#9 | |
|
Member
Iscritto dal: Nov 2012
Messaggi: 126
|
Quote:
n = 1234 1234: 10 = 123 x 10 + 4 123 : 10 = |
|
|
|
|
|
|
#10 | |
|
Member
Iscritto dal: Nov 2012
Messaggi: 126
|
Quote:
Un altro modo più astratto e interessante di vederla è: Codice:
f(n : 10) se n : 10 > 0
f(n) =
n % 10 altrimenti
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:46.



















