View Full Version : Problema in Matlab
a=0;
for i=1:10
a=a+0.3
end
val=a == 3
Questo è uno script che ho provato a eseguire prima ma non capisco perchè il valore di val è sempre 0 quindi a non risulta uguale a 3 dopo il ciclo, ma questo è impossibile.
redcloud
14-09-2006, 23:19
La sparo... perchè forse c'è un problema di arrotondamento?
Qualche problema ci deve essere. Di arrotondamento non credo, cifre decimali non ce ne sono, o no? Se non ci sono i decimali dove arrotondiamo?
Dev'essere qualcosa che coinvolge la precisione di macchina.
mattia.pascal
15-09-2006, 15:19
La variabile a che valori assume durante i vari step? E' sempre zero?
Andrea16v
15-09-2006, 15:27
Al posto di a=0 nella prima riga prova a mettere
a=1.0 e guarda che valore assume a fine ciclo..
mattia.pascal
15-09-2006, 18:08
E' sicuramente un problema di casting. Modifica il codice così
val = (round(a) == 3);
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.