Questi due numeri lunghi sono gli stessi tranne l'ultima cifra.Come arrestare matlab truncando i numeri lunghi
test = []; test(1) = 33777100285870080; test(2) = 33777100285870082;
ma l'ultima cifra si perde quando i numeri sono messi nella matrice:
unique(test)
ans = 3.3777e+16
Come posso evitare questo? I numeri sono codici identificativi e perdere l'ultima cifra sta avvitando tutto.
sono * solo usati come codici ID * e * non c'è nessuna operazione aritmetica * eseguita su di essi? se così memorizzare come una stringa potrebbe essere un'opzione migliore ... – RTL
Ho provato ma ottengo un problema simile, num2str taglia l'ultima cifra. – Lefti
Digitando '' eps (test (1)) '' restituisce '' 4''. Questo significa che il prossimo numero più grande distinguibile da '' test (1) '' è '' test (1) + 4''. Puoi verificare con '' length (unique ([test, test (1) +4])) '' return '' 2''. Credo che non si possa risolvere questo problema con l'uso di numeri predefiniti, ma piuttosto di leggere (o inserire) l'id come stringhe. – Nras