CS 135 Lab Syllabus

Sun Jan 26 2025
Facebook share linkTwitter/X share linkLinkedIn share linkReddit share linkReddit share link

Lab Syllabus

Fall/Spring

Instructor: Alex St. Aubin
Office: TBE-B108
Email: alex.st.aubin@unlv.edu

Catalog Description

Problem-solving methods and algorithm development in a high-level programming language. Program design, coding, debugging, and documentation using techniques of good programming style. Program development in a powerful operating environment. Three hours lecture and one hour lab. Prerequisite: MATH 127 or 128. 3 credits.

Required Text

Fundamentals of C++ Programming by Richard Halterman December 2, 2018. (Available for free from the class Canvas website)

Recommended Text

C++ Programming: From Problem Analysis to Program Design by D.S. Malik (Link for purchase on the class Canvas website)

Student Learning Objectives for This Course

Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.

Specific Course Objectives and Expected Learning Outcomes

Upon completion of CS 135, students will be able to:

  • Develop algorithmic solutions to basic problems and translate their algorithms into C++ programs that meet a provided set of specifications.
  • Demonstrate and use good programming style and adequately document programs.
  • Compile and execute their programs in the target operating environment and learn appropriate testing and debugging strategies.
  • Use appropriate control structures (sequence, selection, and iteration) in their programs
  • Develop modularized programs using functions and passing parameters.
  • Understand and properly use strings and file streams.
  • Understand and properly use one-dimensional arrays and records.

Prerequisites

  • C or better: MATH 127 (Pre-calculus II), MATH 128 (Pre-calculus and Trigonometry), or Calculus -or-
  • SAT Math score of 630+ -or-
  • ACT Math score of 28+

Labs

CS 135 includes a mandatory lab that is remote learning based and has two small assignments per week. The lab assignments provide additional programming practice and are intended to reinforce specific concepts from the lectures. Lab monitors and teaching assistants are available at set times during the week to provide assistance to students. Lab grades will be 15% of the overall grade. Lab assignments are due at the date and time specified.

Grading

Within this lab grades will be based on the following (percentage earned factored into overall CS 135 grade – see lecture syllabus for details):

CategoryWeight
Weekly Lab Assignments100%
ABET Quiz (pass/fail extra credit)13.5% (~2% extra in overall grade)
ABET Quiz (pass/fail extra credit)13.5% (~2% extra in overall grade)

You will not receive an individual grade for this lab. The percentage earned will be factored into overall CS 135 grade (see lecture syllabus).

Grades will be posted throughout the semester. Grading is as follows.

There will be numerous worksheets/coding labs given throughout the semester. There is NO MAKEUP for any of these if they are missed. Worksheets and coding labs scores will be counted as weekly lab points.

Graded assignments will be returned to you as soon as possible. It is your responsibility to check the grade summaries for posting errors. Any score issues must be identified to the teaching assistants within 1 week after score posting. Scores are final after that.

ABET Quiz

In the 15th week of the semester you will be asked to do a quiz for ABET accreditation purposes. You will receive a grade for your answers in this quiz. This grade will not be used to factor your actual grade on this quiz. It will only be used for statistical purposes.

You will be graded on whether you complete this quiz or not. 2% of your overall lab grade is for participating in this ABET Quiz. If you complete all of the quiz questions you will get 2% and if you do not you will not get 2% for this part of the course.

Department of Computer Science Academic Integrity Policy

Each student enrolled in a course offered by the Department of Computer Science is expected to do their own work when preparing written or programming assignments, as well as examinations. Students must adhere to the academic integrity policy provided by the instructor and the university. It is also each student's responsibility to notify the instructor if they become aware of any activities that would violate the academic integrity policy of the class.

Permitted and Prohibited Assistance

Students may use the permitted websites for assistance in this class. All other sites should not be used for assistance in this class. Instructors may provide additional links in assignment instructions or on the class WebCampus/Canvas website. All other sites should not be used, and their use may be treated as academic misconduct.

Permitted websites:

  • Any website provided to you on the class canvas site or posted by the instructor in the official Discord server. That is it. Do not use any websites for this class other than the ones provided.
  • C++ Official Documentation (cplusplus.com)
  • The official UNLV WebCampus/Canvas site for your class.
  • The official UNLV Discord site for class.
    • Discord sites that are not the official site should not be used. Discussion boards and/or social media sites should not be used unless they are specifically approved by the instructor. All other websites may not be used for assistance in this class.

Assistance that is allowed in the preparation of coursework:

  • Information/code provided in the textbook.
  • Information/code provided in the class notes (on the Canvas).
  • Assistance provided by the course instructor.
  • Assistance provided on the official Discord site by the instructor, other instructors of different sections, and teaching assistants for the class.
  • Websites on the permitted websites list above.

Examples of prohibited practices include, but are not limited to:

  • Copying answers/code from a fellow student, friend, or relative.
  • Providing answers/code to a fellow student.
  • Collaborating (sharing) answers/code.
  • Using the Internet to develop a strategy for solving a problem (finding an algorithm).
  • Using the Internet to solicit a solution to an assignment.
  • Using the Internet to find an example of code that solves a portion of an assignment.
  • Asking and/or paying someone to complete your assignments.
  • Creating/using a non-instructor provided social media site (i.e. Chat server such as Discord).

Consequences of violating the academic integrity policy

  1. An Alleged Academic Misconduct Report will be completed and a copy sent to the Office of Student Conduct.
  2. You will receive an F in the class with no additional class participation allowed.

CS 135 Lab Tentative Schedule

The tentative schedule is shown below.

WeekTopicHomework
1Installing Visual Studio Code, Submitting Using CodeGrade0A/0B
2Data Types, Expressions, Variables, Input, Output1A/1B
3Arithmetic, Cmath, Iomanip2A/2B
4If...Else Statements, Switch Statements, Input Failure3A/3B
5For Loops, While Loops, Do...While Loops4A/4B
6No Labs Exam 1 in LectureNONE
7Nested Loops, File I/O5A/5B
81D Arrays, Parallel Arrays6A/6B
92D Arrays7A/7B
10Functions8A/8B
11Pass by Value/Reference, Function Overloading9A/9B
12Structs, Structs and Functions, Arrays of Structs, Structs in Arrays10A/10B
13No Labs Exam 2 in LectureNONE
14ABET QuizABET Quiz
15No Labs – Optional Linux extra credit lab, Review for final exam in lectureLinux Extra Credit

University Policies

Please see: https://www.unlv.edu/policies/students