Back to the faculty page for James Tam Return to the course web page

CPSC 233: Mini-Assignment 1a

Due at 4 PM. For assignment due dates see the main grid on the course webpage.

New Concepts to be applied for the assignment

Aside from the 'main()' method you are not to write static methods for this assignment. (If you don't know what I'm referring to by static methods, I will be discussing this topic later in the course).

Description

 
  • Defines an outline for class 'Exponents', your code will be all be contained in the main() method of this class. The file name of course must be called "Exponents.java". (0.2 grade points for an empty class and an empty method definition).
 
  • The program will calculate a number of exponents (user will be prompted to enter a value between 1 and 10 which determines the number of exponents to be calculated: 0.2 grade points for the prompt) the result of each calculated exponent will be stored as a separate array element - no need to store the based and the power in the array just store the result. (1 grade point for storing results in a 1D array)
 
  • For each exponent to be calculated the program will prompt the user for a base and a power (0.2 grade points for prompt) either of which can be any non-negative integer. At this point your program doesn't have to handle type checking (e.g. a String is entered instead of a number).
   
  • The program can correctly calculate an exponent when the power is zero (the result is just one). (1 grade point)
   
  • The program can correctly calculate an exponent when the power is greater than zero using a loop and not a predefined Java method such as the 'pow' in class Math. (1 grade point)
 
  • The number of exponents calculated should match the value entered by the user. (0.4 grade points)

Marking:

Important points to keep in mind:

  1. Due time: All assignments are due at 4 PM on the due dates listed on the course web page.  Late assignments or components of assignments will not be accepted for marking without approval for an extension beforehand. Alternate submission mechanisms (non exhaustive list of examples: email, uploads to cloud-based systems such as Google drive, time-stamps, TA memories) cannot be used as alternatives if you have forgotten to submit work or otherwise have not properly submitted into D2L. Only files submitted into D2L by the due date is what will be marked, everything else will be awarded no credit.
  2. Late submissions will not be accepted for mini-assignments. Make sure you give yourself enough time to complete the submission process so you don't get cut off by D2L's deadline (when you get a zero).
  3. Extensions may be granted for reasonable cases by the course instructor with the receipt of the appropriate documentation (e.g., a sworn declaration with a commissioner of oaths). Typical examples of reasonable cases for an extension include: illness or a death in the family. Example cases where extensions will not be granted include situations that are typical of student life: having multiple due dates, work commitments etc. You should mitigate the occurrence of technical problems by submitting your work early and often and early in D2L as well as performing regular backups. Do not expect to get an extension if something like this has occurred.
  4. Method of submission: You are to submit your assignment using D2L [help link]. Make sure that you [check the contents of your submitted files] (e.g., is the file okay or was it corrupted, is it the correct version etc.). It's your responsibility to do this! (Make sure that you submit your assignment with enough time before it comes due for you to do a check).
  5. Identifying information: All assignments should include contact information (full name, student ID number and tutorial section) at the very top of your program in the class where the 'main()' method resides (starting execution point). (Note other documentation is also required for most of the full assignments).
  6. Collaboration: Assignments must reflect individual work; group work is not allowed in this class nor can you copy the work of others.  For more detailed information as to what constitutes academic misconduct (i.e., cheating) for this course please read the following [link].
  7. Execution: programs must run on the computer science network (if applicable during that particular semester) running the latest version of Java (this is what applies for the distance learning version of the course). If there libraries or classes external to what's included in Java then you must include clear and complete instructions for your marker as to exactly what needs to be done to compile and run your submission otherwise you may be awarded no credit. Also you should be wary of using external libraries rather than writing the code yourself because you may not be awarded credit for particular features if you didn't write the code yourself. If you write you code in the lab and work remotely using a remote login program such as Putty or SSH then you should be okay (assuming you don't login to a non-Linux computer). If you choose to install Java on your own computer then it is your responsibility to ensure that your program will run properly here. It's up to you if you wish use the graphical program builder to write/run your programs but if you do you submit your program in the form of text ".java" file or files.
  8. Use of pre-created  libraries: unless otherwise told you are to write the code yourself and not use any pre-created classes. For this assignment the usual acceptable functions include code in the Scanner class and methods for displaying output such as: printf(), print(), println().

Submitting your work:

Sample program execution

You can find in a text file a sample run of my program with the following [link]