CS 1445 - Course Syllabus
Introduction to Programming with Interdisciplinary Applications

Instructor: Dr. Rahman Tashakkori
Office: CAP 121, Office Phone: 262-7009, email: rt@cs.appstate.edu
Office Hours: MWF 9:00-10:00 & 11:00-12:00 T 11:00-12:00
Class Time/Location: Mon & Fri 1:00-2:15 CAP 336, Lab Wed 1:00-2:50/CAP 336
Final Exam: Monday, May 7, 2012 from 3:00 PM - 5:30 PM  
Course Description
This course provides an introduction to problem solving and programming using MATLAB. The course emphasizes some computational methods to solve scientific problems. This course equip math and science students with the knowledge, tools and skills required to solve quantitative interdisciplinary problems of varying complexity. Students are trained in abstraction, problem decomposition, representation and solution development using MATLAB. This course carries the Quantitative Literacy (QL) credit.
         This semester we will use microlabs to teach the course material. Mircolabs are short in-class activities that will be given during the class and will take about 5-10 minutes to complete. If you were not able to finish a microlab in class, you are expected to complete it and submit before the next class.

Some of the Topics

  • Introduction to Modeling, Computers and Programming in MATLAB
  • Programming and Problem Solving
  • Procedures and Functions
  • Control Statements
  • Looping
  • Arrays
  • File Input/Output
  • Object Oriented Concepts
  • Real World Problems

    Prerequisite
    MAT 1020 (Pre-Calculus) or MAT 1025 or equivalent with a grade of C or higher

    Textbook
    Although there is no textbook that covers all the material intended for this course, we will use the following book throughout the semester and will assign problems from it.
    MATLAB - A Practical Introduction to Programming and Problem Solving by Stormy Attaway
    In addition there will be online material provided at the Resource Page to which we will refer throughout the semester.


    Grading Policy
    Lab assignments (13) 26%
    Programming assignments (4) 8%
    Exam 1 and Exam 2 (15 % each)
    30%
    Class Participation, Microlabs, and Pop Quizzes 9%
    Final Exam 15%
    Final Project (you will solve a problem within your discipoline) 12%

    Important Notes:
    -      This course does not meet the pre-requisite requirement for the CS2440 course. If you plan to take CS2440, discuss this with the instrcutor.

    -      You must have a passing grade for BOTH the Lab and Lecture (tests, quizzes, programming projects, final exam) to pass the course. In other words, if you fail the lab part of the course, you will fail the course.
    -       You are required to complete the Final Project and receive passing grade for it.

    Grading Scale
    A = 90 to 100 , B = 80 to 89 , C = 70 to 79 , D = 60 to 69 , F = Below 60

    Quizzes
    There will be a quiz every Thursday , and pop-quizzes on other days.

    Attendance and Academic Integrity
    Students are required to attend all classes. Each unexcused absence will result in a 3 point drop from the semester's overall grade. Students with 5 or more absences in the lecture will fail the course. No make-up exams will be given. If a student missed an exam due to an "extreme circumstances", the final exam grade will be used for the missed exam.

    All assignments are due before the start of the class on the due date. No assignment will be accepted once the solution is discussed in the classroom. All assignments and programs MUST be completed by students individually unless the assignment or project is given as a team project. In such a case, the team members can work together on the project. You may discuss the assignments and programs among each other but you have to write/edit programs by YOURSELF. Please see the ASU Academic Integrity Policy for a description of the woes that befall a transgressor!

    Labs
    All labs are carefully designed to help you develop their programming and problem solving skills. You are required to attend all labs. Students with 3 missed labs will receive a failing grade for the course. Each lab has a "pre-lab" part that must be completed prior to the lab session and turned in at the beginning of the lab.

    Getting Help

    I encourage all students to check the Mentoring/Tutoring corner's schedule. We have CS graduate students helping students in the Public Lab (Room 444 CAP) at different times of the day. These help sessions are very valuable.
    It is often beneficial for students to discuss programming strategies and ideas for their programs. You are encouraged to do this, BUT:

    1. You must edit your own program.
    2. Do not give your password to others so that they can "look" at your code.
    3. Never use code that someone else has written.