Successione in Maple

nick_10
Buonasera a tutti! Riporto qui uno svolgimento di una procedura in Maple che non mi torna :( ...
considerare la successione che parte da 50100 e ad ogni numero $x$ fa succedere il numero 1-2*(parte decimale di 1/x) + 1/x. Prendere 100000 numeri della successione e guardare quanti sono quelli compresi tra 0 e 1, quanti tra 1 e 2, quanti tra 2 e 3 e quanti tra 3 e 4

Io ho provato in questo modo:
 f:=x->1-2*(1/x-trunc(1/x))+1/x;
   x:=50100;
   k:=0 : a:=0 : b:=0 : c:=0 : d:=0 : while k<100000 do x:=f(x): k:=k+1 : if(x>0 and x<1)   then(a=a+1)   elif (x>1 and x<2) then(b=b+1) elif(x<2 and x>3) then(c=c+1) elif (x>3 and x<4) then (d=d+1) end if : end do: printf("%d %d %d %d", a,b,c,d):

Però purtroppo mi stampa sempre i valori 0,0,0,0.
Qualcuno vede cosa c'è che non va e come posso sistemare? (O la mia idea è proprio da buttare via?)

Risposte
nick_10
Ho provato a riportare il tutto in Matlab con un po' di adattamenti nella sintassi e lì dovrebbe andare. Mi stampa i valori a=50000, b=25000, c=12500, d=6250.
Quindi cosa sto sbagliando in Maple? :(

dissonance
Vedo una condizione "x<2 and x>3" che è sicuramente sbagliata.

nick_10
Sisi grazie dell'interesse. Poi avevo risolto ;)

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.