Rules Have Fun Five person teams Two computers per team Results are based on passing test data. No prewritten code should be used. Access to a Java API is recommend –internet access should not be presumed bring lots of scratch paper –none available HAVE FUN !!!!
Contest Timeline Times Activities 7:30 Check in – register – set up computers 9:00 Contest Prompts issued electronically 9:15 Questions about prompts answered 11:30 Team files submitted for scoring 12:00 Lunch 1:00 Awards Timeline estimates and subject to change
Contest Guidelines All Programs shall be written in Java 1.5 (Tiger). Problem statements will be consistent with the Advance Placement Computer Science A (AP SC A) Curriculum. Teams are warned to avoid Java 1.4 code that does not compile in Java 1.5. One example of such code is the: Integer.compareTo(Object obj)
Contest Guidelines All programs will be auto-tested (JUnit) using Jam Tester. (More information can be found at www.jamtester.com).www.jamtester.com Each problem will come with a folder –The folder will contain partially/fully defined classes and a JUnit Testing file.
More on JUnit See http://programmingcontest.troyhigh.com/writingalab.htm for more information on JUnit with the following disclaimers: http://programmingcontest.troyhigh.com/writingalab.htm –Java 1.5 is now being used –The constructor may have any primitive or class item as a parameter (not restricted to String) –Your class may or may not instance variable –The name of the methods may vary and the return type may also vary (primitives or class) The spirit of http://programmingcontest.troyhigh.com/ is still be adhered to. http://programmingcontest.troyhigh.com/
More on Programming Testing Each problem will require method(s) to be implemented. These methods will be tested by the JUnit file using the JamTester tool. –Helper methods are allowed. –A sample test is given in the JUnit file. More test methods may be created, –The original file must compile without error for a solution to be tested.
How Solutions are Tested For each problem, a sample test method has been given in the accompanying JUnit file. The final test has 9 additional test methods (a total of 10) that will be graded by JamTester. A perfect score would be a score of 100! *Subject to change without prior notification
Testing Process Each team will be given: –A packet containing a hard copy of: Each programming problem. The JUnit file with one test method for each programming problem. Each class used by each programming problem. –a CD A folder containing an electronic copy (word) of each programming problem.. A folder containing an electronic copy: –The JUnit file used to test each programming problem. –Each class used by each programming problem.
Scoring, Winning, and …. Total score (test methods passed) is used to determine team score. High Score wins – Ties – see next slide
Tie Breaker??? Ties are broken in the following manner: 1.Each problem will be assigned a ranking, and high score on each individual problem will be used until one team is eliminated. 2.If all scores are equal, then each problem will be checked in reverse order starting at the top of each problem. The first team to miss a problem that another team does NOT is eliminated. 3.Once a team is eliminated from the tie, go back to tie breaker (1) and repeat until only one team is left. 4.Pray we never get this far! - Judges will decide?
Testable Material Topics consistent with the AP CS A course including (but not limited to) array, ArrayList, String and recursion. –While knowledge of AP CS AB curriculum and Data Structures such Map and Sets is not require, it may simplify some solutions. Ability to read and use an API. Ability to convert between ALL number bases.