hello roland I cross posted this on the sage-support mailing list http://groups.google.com/group/sage-support
regarding your bugreport: http://spreadsheets.google.com/pub?key=pCwvGVwSMxTzT6E2xNdo5fA > In loop "/' operand incorrect > Hi. Please view worksheet which is publicly viewable at > http://75.75.6.176:80/home/pub/0 > In a loop, and only then, suddenly 583/2 becomes 291 ...? > Roland, sage 3.1.1 on Windows/VMWare the "problem" is, that range is a native python command and all this happens because it is python "only". if you just enter numbers, sage preparses them as "Integer(n)" .. then they are more complex objects. there is not much to do about this, either convert to sage integers or well, someone has to break python - but that's extremely dangerous. so, as long as i understood your lengthy example correct, here are two commands, run in "pure" python to clarify: >>> for i in range(1,6): print i/2 ... 0 1 1 2 2 >>> for i in range(1,6): print float(i)/2 ... 0.5 1.0 1.5 2.0 2.5 ----- in sage sage: preparse("for i in range(1,6): print i/2") 'for i in range(Integer(1),Integer(6)): print i/Integer(2)' above, division by an integer! sage: for i in range(1,6): print i/2 ....: 1/2 1 3/2 2 5/2 also, you can use the "type" command to get the objects type. native integers are "int" and sage's "Integer" h --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
