AP Computer Science A 2003 Scoring Guidelines

Similar documents
AP Computer Science A 2004 Scoring Commentary

AP Computer Science AB 2005 Scoring Guidelines

AP Computer Science AB 2002 Free-Response Questions

AP COMPUTER SCIENCE AB 2006 SCORING GUIDELINES

AP Computer Science A

AP Computer Science A 2008 Scoring Guidelines

AP COMPUTER SCIENCE A 2010 GENERAL SCORING GUIDELINES

AP Computer Science A

AP Calculus BC 2009 Free-Response Questions Form B

AP COMPUTER SCIENCE A 2006 SCORING GUIDELINES

AP Computer Science A

AP Computer Science A

AP Computer Science AB 2007 Free-Response Questions

Student Performance Q&A:

AP Physics 2: Algebra-Based

2003 AP COMPUTER SCIENCE AB FREE-RESPONSE QUESTIONS

AP Computer Science A 2013 Free-Response Questions

SCourse Description. Includes important information regarding the introduction of the language Java. MAY 2004, MAY 2005

AP PHYSICS B 2009 SCORING GUIDELINES

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

Note that if both p1 and p2 are null, equals returns true.

Chief Reader Report on Student Responses:

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS COSC 1320: INTRODUCTION TO C++ PROGRAMMING COMPUTER TECHNOLOGY & OFFICE ADMINISTRATION DEPARTMENT

Account joeacct = new Account (100, new Account (500)); Account joeacct = new Account (100, new Account (500, null));

Software Development Techniques. 26 November Marking Scheme

Chapter 5. Repetition. Contents. Introduction. Three Types of Program Control. Two Types of Repetition. Three Syntax Structures for Looping in C++

MP3 Recording Guidelines

Student Performance Q&A:

Results from!the!2011 AP!Computer!Science A Exam Administration

C/C++ Programming Lecture 7 Name:

CS 231 Data Structures and Algorithms, Fall 2016

Title of Resource Introduction to SPSS 22.0: Assignment and Grading Rubric Kimberly A. Barchard. Author(s)

AP Computer Science. Peeking at Programming with JavaScript Student Guide. Martin Callaghan John Leggott College Scunthorpe, UK

Grade Point Scales Standard Honors AP/College A B C D F Sample file

THE INSTITUTE OF CERTIFIED MANAGERS.

Assessment Plan. Academic Cycle

Computer. Course Description. Computer Science AB. M a y , M a y

CS 142 Style Guide Grading and Details

Introduction to Computer Science Midterm 3 Fall, Points

Example Candidate Responses. Cambridge International AS & A Level Computer Science. Paper 2

PARALEGAL CERTIFICATIONS. National Professional Standard for Paralegals

PARALEGAL CERTIFICATIONS. National Professional Standard for Paralegals

Guide to Use of the CFP Marks by Education Partners

Other Loop Options EXAMPLE

CPE 112 Spring 2015 Exam II (100 pts) March 4, Definition Matching (8 Points)

Systems and Principles Unit Syllabus

CPHC (Certified Passive House Consultant) Training Terms & Conditions

CS 3114 Data Structures and Algorithms DRAFT Project 2: BST Generic

AP Digital Audio Submission (DAS) Portal Help

Schlumberger Founders Scholarship Program

Writing Practice Tool Guide

In this chapter you will learn:

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

b. Remediation will only be offered for courses offered at the home school.

Introduction to Programming. June Marking Scheme

Java 1996 AP Computer Science Question 3

CSU STANISLAUS SCHOLARSHIPS REVIEWER S GUIDE

THE SENSE PROGRAM SCHOOLS EXCELLING THROUGH NATIONAL SKILL STANDARDS EDUCATION

Kingdom of Saudi Arabia Princes Nora bint Abdul Rahman University College of Computer Since and Information System CS240 BRANCHING STATEMENTS

CDK/NAMAD Fueling Careers Scholarship Program

AP Computer Science. Marine Biology Teacher s Manual. Supplement to the Marine Biology Case Study. Advanced Placement Program

FSE 100x: Introduction to Engineering: Imagine. Design. Engineer! Spring C 2018

----- o Implicit Differentiation ID: A. dy r.---; d 2 Y 2. If- = '" 1-y- then - = dx 'dx 2. a c. -1 d. -2 e.

Regis University CC&IS CS362 Data Structures

FPI CERTIFICATION STANDARD

Your students next job starts with LCCI. A centre s guide to LCCI qualifications

Schedule User Guide PowerSchool Student Information System

Università degli Studi di Bologna Facoltà di Ingegneria. Principles, Models, and Applications for Distributed Systems M

Completing Supplementary Reports and Sick Leave Certifications. A Tutorial for TRS-covered Employers

AP PHYSICS B 2014 SCORING GUIDELINES

4E Information/Action

G Programming Languages - Fall 2012

COURSE OUTLINE. SCHOOL: School of Engineering Technology and Applied Science. DEPARTMENT: Information and Communication Engineering Technology (ICET)

Your students next job starts with LCCI. A centre s guide to Pearson LCCI qualifications

Repetition Structures

Assessment Plan. Academic Cycle

NEXT-GENERATION Arithmetic

Levels 1-3 Qualifications in Engineering (2850)

Syllabus of Diploma Engineering. Computer Engineering. Semester: II. Subject Name: Computer Programming. Subject Code: 09CE1104

Recent Developments in Career and Technical Education. New York State Education Department November 2016

8*4 + 4 = 36 each int is 4 bytes

CS314 Exam 1 - Fall Suggested Solution and Criteria 1

Data Structures and OO Development II

CSCI 1061U Programming Workshop 2. C++ Basics

Software Development Techniques. December Sample Exam Marking Scheme

Looping. Arizona State University 1

CS61BL Summer 2013 Midterm 2

Multiple Choice (Questions 1 14) 28 Points Select all correct answers (multiple correct answers are possible)

CSE 131S Introduction to Computer Science Summer SON Exam I

Helping shape your future

VETtrak Data Insights User Guide. for VETtrak version

Chapter 3 Structured Program Development

Java How to Program, 9/e. Copyright by Pearson Education, Inc. All Rights Reserved.

CS314 Exam 2 - Fall Suggested Solution and Criteria 1

CMA Certification. What it Can Mean for You

University of Utah School of Computing

You must pass the final exam to pass the course.

Announcement date: December 1, 2009 New program launch date: May 1, 2010

Computer. Course Description

American Academy of Pediatrics Neonatal Resuscitation Program (NRP) for HealthStream Connect TM Users

Transcription:

AP Computer Science A 2003 Scoring Guidelines The materials included in these files are intended for use by AP teachers for course and exam preparation; permission for any other use must be sought from the Advanced Placement Program. Teachers may reproduce them, in whole or in part, in limited quantities for noncommercial, face-to-face teaching purposes. This permission does not apply to any third-party copyrights contained herein. This material may not be mass distributed, electronically or otherwise. These materials and any copies made of them may not be resold, and the copyright notices must be retained as they appear here. These materials were produced by Educational Testing Service (ETS ), which develops and administers the examinations of the Advanced Placement Program for the College Board. The College Board and Educational Testing Service (ETS) are dedicated to the principle of equal opportunity, and their programs, services, and employment policies are guided by that principle. The College Board is a national nonprofit membership association whose mission is to prepare, inspire, and connect students to college and opportunity. Founded in 1900, the association is composed of more than 4,300 schools, colleges, universities, and other educational organizations. Each year, the College Board serves over three million students and their parents, 22,000 high schools, and 3,500 colleges through major programs and services in college admissions, guidance, assessment, financial aid, enrollment, and teaching and learning. Among its best-known programs are the SAT, the PSAT/NMSQT, and the Advanced Placement Program (AP ). The College Board is committed to the principles of equity and excellence, and that commitment is embodied in all of its programs, services, activities, and concerns. For further information, visit www.collegeboard.com Copyright 2003 College Entrance Examination Board. All rights reserved. College Board, Advanced Placement Program, AP, AP Vertical Teams, APCD, Pacesetter, Pre-AP, SAT, Student Search Service, and the acorn logo are registered trademarks of the College Entrance Examination Board. AP Central is a trademark owned by the College Entrance Examination Board. PSAT/NMSQT is a registered trademark jointly owned by the College Entrance Examination Board and the National Merit Scholarship Corporation. Educational Testing Service and ETS are registered trademarks of Educational Testing Service. Other products and services may be trademarks of their respective owners. For the College Board s online home for AP professionals, visit AP Central at apcentral.collegeboard.com.

Question 1 Part A: UpdateTuition 3 pts +1 loop over mycolleges +1/2 attempt (Note: OK to exit after a match is found) +1 identify college in array, based on collegename +1/2 attempt (must be in context of loop) +1 set tuition +1/2 attempt (must call mycolleges[k].settuition(...) possibly with bad syntax on array or error in parameters. SetTuition(myCollege...) does not get attempt) Part B: GetCollegeList 6 pts ly declare result vector (empty list or numeric constant size without subsequent resize loses this pt) +1/2 initialize counter for colleges added to result vector +1 loop over mycolleges +1/2 attempt (must have loop that attempts to add items to result vector) +1 1/2 identify college to add to vector +1/2 attempt (must compare some parameter with data from mycolleges, possibly incorrectly) +1 correct +1 add identified college to result vector +1/2 increment counter for matching colleges (must use correctly when inserting into result vector) +1/2 final size of result vector is correct (must be in context of attempt at loop over mycolleges) (must also be sufficiently large throughout) +1/2 return result vector (must be in context of attempt at loop over mycolleges) Usage: -1 CollegeGroup[k] instead of mycolleges[k] 2

Question 2 Part A: EmployeeIsEligible 3 pts Using count method +2 count conditions satisfied +1 attempt (at least two conditions checked, possible error in comparison) +1 correct (count value is correct for all cases) +1 return correct value relative to the count Using Boolean expression +1 attempt (at least two conditions checked, possible error in comparison) +1 partial (correct value determined for at least two different true cases) (must have some attempt to identify a pair) (must have an emp.) +1 all cases correct (except for ==, >= discrepancies) Part B: ProcessRetirements 6 pts +1 check eligible +1/2 attempt (must have reference to an Employee) +1 loop over emplist +1/2 attempt (must have context of eligible check) (watch for fixed loop bounds such as len) +1 1/2 place non-eligible into correct position +1/2 attempt +1 correct (extra vector method must have declaration with proper size and copy back) (index/count for placement of non-eligible must be correctly implemented) (lose this point if shift array method skips consecutive eligible employees) +1 adjust salary budget to account for retirements ly computed +1/2 stored in salarybudget instance variable +1 emplist has been resized correctly +1/2 initialize count of non-eligible employees or index for placing non-eligible employees (get this if there is an attempt to shift multiple array elements for each employee removed) 3

Question 3 Part A: HasTreasure 1 pt +1 +1/2 attempt (must examine a position in mygrid and some boundary) Part B: NumAdjacent 4 pts +1/2 declare and initialize counter +1 Scan 3x3 block centered at this location, except this location +1/2 attempt (must have nested loops or at least five individual cases) for outer eight +1 Check HasTreasure for each location +1/2 attempt (use loop indices in loop case, at least two different offsets from this location for non-loop) +1/2 exclude this location from count (may skip in scan or may count and subtract out) +1/2 increment counter +1/2 return counter Part C: ComputeCounts 4 pts +1/2 declare result matrix +1 scan over full map +1/2 attempt (must have nested loops and reference map boundaries, not hard-coded constants) +2 fill result matrix +1/2 check HasTreasure +1/2 assign 9 in true case +1/2 call NumAdjacent in false case +1/2 assign NumAdjacent in false case +1/2 return result matrix Usage for part C: -1 for two or more instances of missing themap -1 for using mygrid as the result matrix. 4

Part A: NumAlgaeAt 1 pt +1 correct Part B: Most Algae 3 pts AP COMPUTER SCIENCE A Question 4 +1/2 initialize state appropriately (must include index or position, and possibly max, if used) +1/2 loop over nbrs +1 check for new max in nbrs +1/2 attempt (must have env.numalgaeat(...), array syntax does not get attempt) (if env. missing, usage note below applies) +1/2 update state +1/2 return position from nbrs determined to contain max algae Part C: Act 5 pts check for algae Algae present +1/2 remove algae with call env.removealgae(location(), 1) +1/2 reset mystepssincefed +1/2 call env.update(location(), *this) after mystepssincefed updated No algae, do fish die? +1/2 check if this is third step since fed (no steps increment, no point) +1/2 call env.removefish(location()) Fish doesn't die +1/2 else (or can use returns on each part) (lose this point if update applies to removed fish) +1/2 call Move(env) (duplicated move logic is OK if correct) +1/2 increment mystepssincefed +1/2 call env.update(location(), *this) after mystepssincefed updated Note: can use mypos instead of Location() Usage: -1/2 for once instance of missing "env." -1 for two or more missing. (max penalty -1 for problem.) 5

2003 General Usage Some usage errors may be addressed specifically in rubrics with points deducted in a manner other than indicated on this sheet. The rubric takes precedence. Usage points can only be deducted if the part where it occurs has earned credit. A usage error that occurs once on a part when the same usage is correct two or more times can be regarded as an oversight and not penalized. If the usage error is the only instance, one of two, or occurs two or more times, then it should be penalized. A particular usage error should be penalized only once in a problem. If it occurs on different parts of a problem, it should be deducted only once. Non-penalized errors Minor errors (1/2 point) Major errors (1 point) case discrepancies, unless misspelled/confused identifier reads new values for parameters confuses identifiers (e.g., link/next) (write prompts part of this point) missing ;'s no variables declared function result written to output missing { }'s where indentation void function returns a value uses type or class name instead clearly conveys intent of variable identifier, for example modifying a const parameter Fish.move() instead of f.move() default constructor called with parens, e.g., BigInt b( ) unnecessary cout << "done" MemberFunction(obj) instead of obj.memberfunction( ) obj.func instead of obj.func( ) unnecessary cin (to pause) param.freefunction( ) instead loop variables used outside loop no * in pointer declaration of FreeFunction(param) [r, c] or (r)(c) instead of [r][c] (r,c) instead of [r][c] Use of object reference that is incorrect or not needed, for = instead of == (and vice-versa) use of L->item when L.item is example, use of f.move() inside correct (and conversely) member function of Fish class missing ( )'s around if/while tests memory leak due to unneeded Use of private data when it is not << instead of >> (and vice-versa) node decl (may be taken twice) accessible, instead of the *foo.data instead of (*foo).data appropriate accessor function destruction of data structure (e.g., by using root ptr for traversal) Note: Case discrepancies for identifiers fall under the "not penalized" category. However, if they result in another error, they must be penalized. Sometimes students bring this on themselves with their definition of variables. For example, if a student declares "Fish fish;", then uses Fish.move() instead of fish.move(), the one point usage deduction applies. 6