University of Denver Home Page University of Denver Home Page DU Department of Computer Science Home Page   Home Page for Catherine Durso  

MATC1101, Spring 2005
Course Information and Syllabus

Course Calendar and Assignments



Instructor:

Catherine Durso
(email cdurso"at"cs"dot"du"dot"edu)
Office: JGH 303, x13598
Office Hours: Tu Th 11:00am-noon 1:00-2:00pm,
Wed 10:00am-noon, or by appointment
During Finals Week: Wed. 10:15-noon

TA

Lan Lin
(email llin"at"cs"dot"du"dot"edu)
Office: 329 JGH, x13050
Office Hours: Tu Th 3:00-5:00
During Finals Week: TuW 3:00-5:00




About This Course

This course should give students a taste of computer science and mathematics. We plan to convey how interactivity is produced in computer programs, and, fundamentally, in computers. To this end, students will write interactive programs in JavaScript, a common web programming language, and study computer architecture. This will clarify the issue of what is easy to do in computing, and what is difficult. Students should learn to abstract mathematical problems from practical problems, then to solve the mathematical problems, and interpret the solutions. The examples are drawn from finance and the judicial system.

Both computer science and mathematics affect our lives pervasively. The changing capabilities of computers influence the economic, political, social, and artistic structure of our society. For evidence of this, just consider the dot.com industry, privacy issues, email, and copyright questions. Mathematics, as an essential tool in science and engineering, underlies technological developments since the Industrial revolution. Questions of public policy and personal finance raise questions with mathematical solutions. A citizen who lays claim to education must, therefore, have some acquaintance with the power and limitations of these disciplines.

Why are these subjects combined in one course, other than to provide one stop shopping for satisfying core requirements? The disciplines are related by requiring similar thought processes. Both require extended abstract reasoning about artificial systems. Note that the term 'artificial' here is not pejorative. Axiom sets and computers simply are both human creations. Math and computer science are also related by results in each being useful in the other. Computing power facilitates many types of mathematical analysis. Mathematical results underlie many computer applications.

We start with a brief historical and philosophical overview of the subjects, and an invitation to consider their social impacts.

The technical part of the course begins with an introduction to HTML and JavaScript programming. The act of writing a program to achieve a goal introduces some modes of thought necessary throughout the course. The programmer must formulate the goal clearly, determine the role that a program should play in meeting that goal, and work within the confines of the programming language to produce a program that fills that role. The projects should also introduce some of the excitement of using creativity within logical constraints, a kind of deep puzzle solving, to make something that works.

Most likely, the programming will raise the question of why the computer behaves as it does. This is a practical matter. Why isn't an instruction that is perfectly clear to the programmer necessarily perfectly clear to the computer? How much progress has been made in making programming natural? How much more can be made? To address these questions, we will look briefly at how computers are constructed.

Next, we will examine an application of computing and mathematics to financial questions involving interest on investments. Mathematical analysis of these questions produces some useful formulas from very basic assumptions. We create something complex and useful from almost nothing. The computer provides an easy way to carry out the calculations required by these formulas.

Topics in graphing and probability may alo be addressed, as time and interest dictate.

This course is intended to provide cultural enrichment and a few techniques for students not intending to major in a technical field.


Course Meeting Times

The lecture is held in JGH 102 from 9:00 am to 10:50 am Tuesdays and Thursdays.


Required Resources

Optional Resources


Grading

There are three exams in this course. A student's best two exam grades will count toward the final grade. The exam given during finals week will be cumulative.



projects(5) 40% total
in-class labs
and quizzes
10%
exams 25% each



Collaboration and Academic Honesty

When you turn in work in this course, you are implicitly agreeing that youhave followed the rules for collaboration set forth for that assignment. Copying another person's work on exams or projectsconstitutes plagiarism, a violation of the University ofDenver Honor Code. This code forbids plagiarism, cheating, fabrication,and aid of academic dishonesty. Please note that "aid of academic dishonesty"includes allowing another person to copy your work. This and all otherviolations of the University's academic standards in this class willbe treated with severity. Possible outcomes include (but are not limited to)a grade of 0 on the relevant assignment and a failing grade in the course.In addition, a letter describing the incident will be sent to the Office ofCitizenship and Community Standards, which will address the situation attheir discretion. This office determines additional consequences forviolations to the DU Honor code. These consequences may includesuspension or expulsion from the University.



Late Assignments

Extensions for extreme and unusual circumstances that are beyond your controlmay sometimes be granted ifrequested in advance or at the soonest possible time.

Please arrange to hand in work prior to scheduled absences, or immediately on return.

Late assignments will not be accepted.

Guidelines for Exams

Exams are given in class and are completely individual efforts. You maynot give or receive assistance in any way. Feel free to ask me forclarification if you do not understand what I am asking.


Course Calendar and Assignments

The calendar below contains links to homeworkassignments,links to programming projects, as well asimportant dates for you to keep in mind.

Mon Tues Wed Thur Fri
March
Mar 21 Mar 22
lab 1
Mar 23 Mar 24
lab 2
intro HTML
Mar 25
Mar 28
Mar 29
lab 3
project 1
table example
linking example
Mar 30 Mar 31
lab 4
color example
form example
image example

April




April 1
April 4 April 5
lab 5
Lab 5 skeleton
alert greeting
document.write greeting
form greeting
variable greeting
input variable
April 6 April 7
project 2 assigned
lab 6
Lab 6 skeleton
a function
text manipulation
math functions
April 8
April 11 April 12
lab 7
Lab 7 skeleton
if example
if..else example
elseif example
sampler
April 13 April 14
lab 8
Lab 8 skeleton
sample exam questions
sample exam solutions
sample code for question 17
sample page for question 16 (Don't peek.)
April 15
April 18
April 19
the skeleton of a possible project 2
EXAM 1
1 2-sided 8.5x11" cheat sheet allowed
April 20 April 21
project 2 due
project 3 assigned
lab 9
lab 9 skeleton
boolean operators
loops
April 22
April 25 April 26
lab 10
lab 10 skeleton
April 27
April 28
lab 11
lab 11 skeleton
putting your page on the web
a for loop
a while loop
April 29
May
May 2 May 3 lab 12
May 4 May 5
lab 13
some Unix commands
project 4 assigned
project 4a skeleton
project 4b skeleton
May 6
May 9 May 10
lab 14
laptops not needed
May 11 May 12
laptops not needed
exam 2 outline
lab 15
May 13
exam 2 sample questions
solutions to sample exam 2
May 16
Remember your two sided 8.5x11 cheat sheet!
May 17
EXAM 2
May 18 May 19
project 4 due
online evaluations

lab 16
May 20
May 23 May 24
lab 17
project 5 assigned
frozen proj.5 example
May 25
May 26
lab 18
May 27
May 30 May 31
project 5 due
exam 3 outline
and sample questions



June


June 1 June 2
FINAL EXAM
9:00-10:50 am
Bring your 2-sided 8.5x11
sheet of notes.
June 3

Please see DU Spring 2005 Final Exam Schedule for additional final exam scheduling information.




This page was last modified on: