· Text 212 · w8 · inlagg
Häromdagen skulle jag prova en sak och skren en liten programsnutt i
basic2 (iofs basic2pc, men det är väl samma?).
Programmet ville inte fungera och jag ansträngde mig kolossalt fö r att
kolla om jag gjort några termineringsfel eller tankefel. Till slut kom
jag på att programmet fungerade perfekt om jag skrev
X=INT(RND*Y+1)
i stället för X=RND*Y+1
Jag hade ställt mig i heltalsläge och jag har tidigare många gånger provat
att RND*Y då trunkeras, dvs decimalerna klipps av när man för över ett
decimalvärde i X%.
Felet uppträdde någonstans inne i en loop med 275 varv, så jag orkade
inte analysera och se vad som hände.
Finns det någon som kan basic2 så bra att han geanst kommer på vad det
kan ha varit för fel? (Jag tror felet yttrade sig på så vis av RND*Y
+1 blev större än Y).