COSC-503: Objects and Algorithms
Spring 2009
“People who know neither programming nor mathematics take for
granted that programming is like mathematics. Yet, it turns out
that English majors are as likely to be as successful at programming
as mathematics graduates are. In practice, the worlds of mathematics
and programming are just about disjoint.”
—M.H. van Emden, Communications of the ACM, 32(12), p. 1498,
December 1989.
Class Time: |
TR 11:40 AM–12:55 PM |
Classroom: |
ICC 107
|
|
|
Instructor: |
Mark Maloof |
Office: |
325 St. Mary's Hall |
Mailbox: |
329A St. Mary's Hall |
Office Hours: |
None for 24–25 academic year.
(or by appointment) |
Everything you need to know about the TAs:
Name |
Netid |
Office Hours |
Grading |
|
|
|
|
John Bufe |
jpb74 |
TR 1–2 PM; Su 1–3 PM |
idz–rcg99 |
Sanjay Murti |
sgm28 |
M 4–6 PM; F 1–3 PM |
rcg99–zzz |
Chris Wacek |
chw6 |
MW 2–4 PM |
aaa–idz |
TA's Office: 330 and 335 St. Mary's Hall
TA's Mailboxes: 329A St. Mary's Hall
Syllabus
Assignments and Grading
- Programming Projects, 40%
- Project 1, assigned W 1/21, due F
2/6 2/13, 6 points
- Project 2, assigned W
2/4 2/11, due F 2/20 2/27, 6 points
- Project 3, assigned W
2/18 2/25, due F 3/20, 8 points
- Project 4, assigned W 3/18, due W 4/8, 10 points
- Project 5, assigned W 4/8, due M 4/27, 10 points
- Midterm Exam, R 3/26, 20%
- Final Exam, W 5/6 4–6 PM, ICC 205, 30%
- Miscellany (10%)
Graduate Students
- In addition to the above, graduate students must complete a
programming project relevant to their field of study.
Its size and complexity should be roughly equivalent to projects 4 and 5.
It will count for 20% of their final grade.
Students must meet with the instructor before the midterm to discuss
appropriate projects.
Students should begin programming no later than the beginning of
April, and the assignment will be due on the last day of class
at 5 PM.
Grading
string Grades::toLetterGrade()
{
if (grade >= 94)
return "A";
else if (grade >= 90)
return "A-";
else if (grade >= 87)
return "B+";
else if (grade >= 84)
return "B";
else if (grade >= 80)
return "B-";
else if (grade >= 77)
return "C+";
else if (grade >= 74)
return "C";
else if (grade >= 70)
return "C-";
else if (grade >= 67)
return "D+";
else if (grade >= 64)
return "D";
else
return "F";
} // Grades::toLetterGrade
Resources
- Project Grading Sheet
- vi Reference Card
- emacs Reference Card
- gdb Reference Card
- How
to Write Doc Comments for the Javadoc Tool
- doxygen: A documentation system for
C++, C, Java, and other languages.
- Dev-C++, a free C++
integrated development environment for Windows.
- Code::Blocks, a free C++
integrated development environment for Windows.
- Eclipse,
a free integrated development environment (IDE) for Linux, Mac, and Windows.
- Safari Tech Books Online: A great place to find e-books
on learing Unix, vi, and emacs.
- The vi Lovers Home Page Oh, yeah...
- vi Information Links
- Lemmy, the Unix vi editor for Windows
- More vi clones for Windows
- Useful Unix Commands
- HOWTO: Log in and transfer files to seva with SSHWin
- HOWTO: Create and compile files under Unix
- HOWTO: Create and compile using CodeWarrior
- HOWTO: Create and compile using Visual C++
- COSC-071 Frequently Asked Questions
- WinSSH: a secure
telnet and ftp client for Windows (educational license)
- PuTTY:
a free secure telnet and ftp client for Windows
-
E-ssentials: Student Guides to Technology at Georgetown University
-
Guide to Unix Computing (Adobe Acrobat file)
- C++ and Unix books
- Reiter's Bookstore, a great local
place to find technical books
Marginally Interesting Links
Copyright © 2019 Mark Maloof. All Rights Reserved.
This material may not be published, broadcast, rewritten,
or redistributed.