Difference between revisions of "CSC111 HW 1 2011"

From dftwiki3
Jump to: navigation, search
(Optional and Extra Credit)
(Optional and Extra Credit)
Line 120: Line 120:
 
   submit hw1 hw1x.py
 
   submit hw1 hw1x.py
  
 +
<br />
 +
<tanbox>Hint:  Look at the ''end='\n' '' option provided by the ''print'' statement, and documented in the first chapter of Zele.  You can also figure out how the ''end'' option works by trying out these different python statements:
  
 +
  name = "hello"
 +
  print( name,  end='\n' )
 +
  print( "there" )
 +
 +
  print( "-" * 80 )
 +
 +
  print( name,  end=' ' )  # there is space between the two quotes
 +
  print( "there" )
 +
 +
  print( "-" * 80 )
 +
 +
  print( name,  end=',' )
 +
  print( "there" )
 +
 +
</tanbox>
 +
 
<br />
 
<br />
 
<br />
 
<br />
 
<br />
 
<br />
 
[[Category:CSC111]][[Category:Homework]]
 
[[Category:CSC111]][[Category:Homework]]

Revision as of 14:05, 13 September 2011

--D. Thiebaut 13:59, 13 September 2011 (EDT)




Page under construction!
UnderConstruction.jpg


Problem 1

  • Write a python program called hw1a.py that uses a list of names, defined as follows:
  dwarfNames = [ "Sleepy", "Sneezy", "Bashful", "Happy", "Grumpy", "Dopey", "Doc" ]
and prints them with boxes around them. This time the boxes are all 20 characters in length. The length of the box is fixed.
+------------------+
| Sleepy           |
+------------------+

+------------------+
| Sneezy           |
+------------------+

etc...
  • Note that there is one blank line printed between each box.
  • Create a program that uses a main function, as we did in class on Tuesday.
  • When you are done, transfer your program to your Linux 111a-xx account, and submit it as follows (more info on how to do that in class on Thursday 9/15).
 submit hw1 hw1a.py

Problem #2

  • Same problem as Problem #1, but this time the list is slightly different. Some names have a space at the end, some not. The reason is that I want all names to contain an even number of characters.
  dwarfNames = [ "Sleepy", "Sneezy", "Bashful ", "Happy ", "Grumpy", "Dopey ", "Doc " ]
  • Your assignment is to write a program called hw1b.py that displays the list of names centered in a box that has long sides 20 characters in length.
+------------------+
|      Sleepy      |
+------------------+

+------------------+
|      Sneezy      |
+------------------+

etc...


Hints: we saw in class, with the temperature conversion program, that to divide one number by another number, we use the / symbol, and the result is a real number. Here, however, you want to get the integer result, so that you can use it to generate many minus or dash symbols. The operator that gives you the integer quotient when dividing an integer by another integer is //.


  • When you are done, transfer your program to your Linux 111a-xx account, and submit it as follows:
 submit hw1 hw1b.py

Problem #3

  • Create a program called hw1c.py that uses the same list as in Problem #2 and that outputs the names in this fashion:
+------------------+
|Sleepy            |
|Sneezy            |
|Bashful           |
|Happy             |
|Grumpy            |
|Dopey             |
|Doc               |
+------------------+ 
Note that there are now only two lines of dashes, and all the names fit inside the box.
  • Submit your program as follows:
   submit hw1 hw1c.py

Problem #4

  • Create a program called hw1d.py that uses the same list as in Problem #2 and that outputs the names in this fashion:
+------------------+
|            Sleepy|
|            Sneezy|
|           Bashful|
|             Happy|
|            Grumpy|
|             Dopey|
|               Doc| 
+------------------+
Note that there are now only two lines of dashes, and all the names fit inside the box.
  • Submit your program as follows:
   submit hw1 hw1d.py


Optional and Extra Credit

  • This problem is only for people who have done some programming before and feel they need some more challenge than provided by the other problems. TAs are not allowed to help with this extra-credit problem. If this problem seems too challenging, don't attempt to work on it; I am making it available only to people with previous programming experience.
  • Write a program called hw1x.py that uses the list of names defined as follows:
dwarfNames = [ "Sleepy", "Sneezy", "Bashful", "Happy", "Grumpy", "Dopey", "Doc" ]
  • and that outputs the names all on one line, in a box, as follows:
+---------------------------------------------+
|Sleepy Sneezy Bashful Happy Grumpy Dopey Doc | 
+---------------------------------------------+
  • Submit your program as follows:
 submit hw1 hw1x.py


Hint: Look at the end='\n' option provided by the print statement, and documented in the first chapter of Zele. You can also figure out how the end option works by trying out these different python statements:
 name = "hello"
 print( name,  end='\n' )
 print( "there" )

 print( "-" * 80 )

 print( name,  end=' ' )  # there is space between the two quotes
 print( "there" )

 print( "-" * 80 )

 print( name,  end=',' )
 print( "there" )