Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/TurtleArt
diff options
context:
space:
mode:
authorWalter Bender <walter@sugarlabs.org>2010-10-29 13:44:27 (GMT)
committer Walter Bender <walter@sugarlabs.org>2010-10-29 13:44:27 (GMT)
commitc6d3343db8fa57fe890987c8165f00c69ddd393e (patch)
tree8f4e1d0926cca8d713b12534fce77dbc55660d8a /TurtleArt
parent71db050dad2d0bb9b25815ef6777a3343338eda2 (diff)
fixed careless error (ijmp instead of _ijmp) in _prim_ifelse
Diffstat (limited to 'TurtleArt')
-rw-r--r--TurtleArt/talogo.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/TurtleArt/talogo.py b/TurtleArt/talogo.py
index 0e514b1..bf576fa 100644
--- a/TurtleArt/talogo.py
+++ b/TurtleArt/talogo.py
@@ -258,13 +258,17 @@ def _identity(x):
return(x)
-def _avg(array):
+def _avg(array, abs_value=False):
""" Calc. the average value of an array """
if len(array) == 0:
return 0
sum = 0
- for a in array:
- sum += a
+ if abs_value:
+ for a in array:
+ sum += abs(a)
+ else:
+ for a in array:
+ sum += a
return float(sum) / len(array)
@@ -937,10 +941,10 @@ class LogoCode:
def _prim_ifelse(self, boolean, list1, list2):
""" If bool, do list1, else do list2 """
if boolean:
- self.ijmp(self._evline, list1[:])
+ self._ijmp(self._evline, list1[:])
yield True
else:
- self.ijmp(self._evline, list2[:])
+ self._ijmp(self._evline, list2[:])
yield True
def _prim_opar(self, val):
@@ -1378,7 +1382,7 @@ class LogoCode:
""" return mic in value """
buf = self.ringbuffer.read(None, self.input_step)
if len(buf) > 0:
- return float(_avg(buf)) / 164 # scale from -100 to 100
+ return float(_avg(buf, abs_value=True)) / 164 # scale from 0 to 100
else:
return 0