Fall2015.CITA180Homework1 History

Hide minor edits - Show changes to markup

Changed line 2 from:

Due Date: Monday, Sep. 28, 2015\\

to:

Due Date: Friday, Oct. 2, 2015\\

Changed lines 50-54 from:

You will submit your assignment via OAKS. Be prepared to demo your music to the rest of the class. Your submission consists of:

  1. Your Python program. Give it a meaningful name, e.g., furElise.py.
  2. A printout of your program - to be submitted in class on the due date.
to:

You will submit your assignment by both handing in a printout of your program in class, and on-line via OAKS. Be prepared to perform your music in class. Your submission consists of:

  1. Hand in a printout of your Python program in class on the due date.
  2. Upload your program file on OAKS. Give your program a meaningful name, e.g., furElise.py.
Changed lines 30-31 from:
to:
Changed lines 30-31 from:
  1. Purpose: To play the melody of .
to:
Added lines 1-78:

Assigned Date: Monday, Sep. 21, 2015
Due Date: Monday, Sep. 28, 2015
Due Time: 8:20 AM

Last modified on September 25, 2015, at 08:18 AM (see updates)

Assignment

Find a complete, interesting melody. Transcribe it using Python in JEM.

Documentation

The Golden Rule of Style: "A program should be as easy for a human being to read and understand as it is for a computer to execute." [1]

In general, you should comment any variable, obscure statement, block of code, etc. you create. Follow the textbook examples on how to document code.

Additionally, your code should always have header documentation that explains what the program does, in general terms.

For this assignment, just copy and paste these into the top of your program. (For future assignments, you will have to modify these comments, to fit the new assignment.)

(:source lang=Python tabwidth=3 -trim :)

  1. digitalPiano1.py
  2. Author:
  3. Email:
  4. Class: CITA 180
  5. Assignment: Homework #1
  6. Due Date:
  7. Purpose: To play the melody of .
  8. Input: None.
  9. Output: The corresponding melody played via the computer's synthesizer.

(:sourcend:)

NOTE: In the above, replace the bracketed phrases, e.g., , with your name, e.g., John Smith. Do remove the brackets.

Bonus

Once you complete the above, feel free to do additional work, for bonus points:

  1. Any other idea you can think of (just document your idea in the program's comments, so that I'll know what you are trying to do, when I am grading).

Submissions

You will submit your assignment via OAKS. Be prepared to demo your music to the rest of the class. Your submission consists of:

  1. Your Python program. Give it a meaningful name, e.g., furElise.py.
  2. A printout of your program - to be submitted in class on the due date.
  3. Be ready to perform it in class.
  4. If you do the bonus, submit a separate, additional program. Give the program a different meaningful name.

Grading

Your grade will be based on how well you followed the above instructions, and the depth/quality of your work.

Learning Objectives

This assignment has the following objectives:

  • Understand the fundamentals of music theory.
  • Analyze music and create musical studies modeled on pre-existing works.
  • Apply numeric and string data types to represent information.
  • Use variables in program development.
  • Use predefined classes in program development (object-based programming).

Also how to:

  • Create an interesting melody with JythonMusic

Reference

  1. Cooper, D. and Clancy, M. (1985) "Oh! Pascal", 2nd ed., W.W. Norton & Company, New York, p. 42.