>> dbstop variance 3 >> variance(v) 3 tot = sqsum(x,mu); K>> whos % ne donne que les variables locales Name Size Bytes Class mu 1x1 8 double array x 1x5 40 double array Grand total is 6 elements using 48 bytes K>> mu mu = 3 K>> x x = 1 2 3 4 5 K>> dbstep 4 y = tot / (length(x)-1); K>> tot tot = 4 % il y a un pb ici, dans le calcul de tot K>> tot=10; % on impose la bonne valeur K>> dbcont ans = 2.5000 % et on a le bon résultat
L'erreur est dans sqsum.m
>> dbstop sqsum 3 >> dbclear variance % enlève les breaks ds variance >> variance(v) 3 for i=1:length(m) K>> dbstep 4 tot = tot + ((x(i)-m)^2); K>> dbstep 5 end K>> dbstep End of function /home/prof/ricou/sqsum.m. K>> i % il n'y a qu'1 passage dans la boucle i = 1 % au lieu de 5L'erreur est dans l'argument de length : ça devrait être x et non m.