Difference between revisions of "CSC231 Powers of 2 in Python"

From dftwiki3
Jump to: navigation, search
(A Python Program that overflows (or not))
(The Program)
Line 15: Line 15:
 
   
 
   
 
==The Program==
 
==The Program==
<code><pre>
+
<source lang="python">
 
# mulby2.py
 
# mulby2.py
 
# D. Thiebaut
 
# D. Thiebaut
Line 44: Line 44:
 
         break
 
         break
  
</pre></code>
+
</source>
 +
 
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
[[Category:CSC231]][[Category:Python]]

Revision as of 08:59, 8 October 2010

Back to Weekly Schedule


--D. Thiebaut 13:57, 8 October 2010 (UTC)


This Exercise is a companion to the same exercise implemented in C++.


Exercise: A Python Program that loops forever...

  • First do the exercise with C++ mentioned above.
  • Then create the program below, and run it. It will wait you to press Enter at every loop, so that you can control the speed of the loop.
  • What happens when you reach 2147483648, and press Enter a few times? How is that different from the C++ approach? Why?

The Program

# mulby2.py
# D. Thiebaut
# csc231
# demonstrates how python changes type of
# variable as computation progresses.  Compare 
# this to how a compiled language would react in this
# situation (mulby2.cpp)

x = 0x1
print "starting value of x = ", x

#curType = type( x )
#print "type( x ) = ", type( x )

while ( True ):
    lastx = x
    x = x * 2
    print "x = ", x
    raw_input(  "> " )
    continue

    if type( x )!= type( lastx ):
        print "last x = ", lastx
        print "type( last x ) = ", type( lastx ) 
        print "x = ", x
        print "type( x ) = ", type(x)
        break