On Sat, Feb 15, 2014 at 2:18 AM, <luke.geelen at gmail.com> wrote:
> i have been working on a python resistor calculator to let my class show what you can do with python.
> now i have a script that makes the more speekable value of the resistance (res)
> #if len(str(res)) > 9:
> # res2 = res / 1000000000
> # print "de weerstand is %s,%s giga ohms" % (res2)
> #elif len(str(res)) > 6:
> # res2 = res / 1000000
> # print "de weerstand is %s,%s Mega ohm" % (res2)
> #elif len(str(res)) > 3:
> # res2 = res / 1000
> # print "de weerstand is", res2,"kilo ohm"
> #elif len(str(res)) < 4:
> # res2 = res
> # print "de weerstand is", res2,"ohm"
> i commented it because it doesn't work (yet), when i have a resistance of
> 9.9 Giga ohms it says it is 9 giga ohms. it seems to work with natural number, anyway of using decimals insted so that it says : the resistance is 9.9 Giga Ohms instead of 9 ?
Others have already explained how to do floating-point rather than
integer division. I'm curious to know why you're basing the if tests
on the length of the number as a string rather than on the magnitude
of the number. Consider for example an input of 0.01. Converted to a
string, that is "0.01" which has a length of 4. So the output would
be "de weerstand is 0.00001 kilo ohm", which is probably not what you