SRJC Course Outlines

11/8/2024 11:09:40 PMCS 10B Course Outline as of Fall 2025

Changed Course
CATALOG INFORMATION

Discipline and Nbr:  CS 10BTitle:  PROGRAMMING CONCEPTS 1  
Full Title:  Programming Concepts and Methodologies 1
Last Reviewed:2/8/2021

UnitsCourse Hours per Week Nbr of WeeksCourse Hours Total
Maximum4.00Lecture Scheduled3.0017.5 max.Lecture Scheduled52.50
Minimum4.00Lab Scheduled3.006 min.Lab Scheduled52.50
 Contact DHR0 Contact DHR0
 Contact Total6.00 Contact Total105.00
 
 Non-contact DHR0 Non-contact DHR Total0

 Total Out of Class Hours:  105.00Total Student Learning Hours: 210.00 

Title 5 Category:  AA Degree Applicable
Grading:  Grade or P/NP
Repeatability:  00 - Two Repeats if Grade was D, F, NC, or NP
Also Listed As: 
Formerly: 

Catalog Description:
Untitled document
Introduces the discipline of computer science using C++ and utilizing programming and practical hands-on problem solving.

Prerequisites/Corequisites:


Recommended Preparation:
Eligibility for ENGL C1000 or equivalent or appropriate placement based on AB705 mandates; and Course Completion of CS 10A or equivalent experience in any programming language

Limits on Enrollment:

Schedule of Classes Information
Description: Untitled document
Introduces the discipline of computer science using C++ and utilizing programming and practical hands-on problem solving.
(Grade or P/NP)

Prerequisites:
Recommended:Eligibility for ENGL C1000 or equivalent or appropriate placement based on AB705 mandates; and Course Completion of CS 10A or equivalent experience in any programming language
Limits on Enrollment:
Transfer Credit:CSU;UC.
Repeatability:00 - Two Repeats if Grade was D, F, NC, or NP

ARTICULATION, MAJOR, and CERTIFICATION INFORMATION

Associate Degree:Effective:Inactive:
 Area:
 
CSU GE:Transfer Area Effective:Inactive:
 
IGETC:Transfer Area Effective:Inactive:
 
CSU Transfer:TransferableEffective:Fall 2018Inactive:
 
UC Transfer:TransferableEffective:Fall 2018Inactive:
 
C-ID:
 CID Descriptor: COMP 122 Programming Concepts and Methodology I SRJC Equivalent Course(s): CS10A OR CS10B

Certificate/Major Applicable: Both Certificate and Major Applicable



COURSE CONTENT

Student Learning Outcomes:
At the conclusion of this course, the student should be able to:
Untitled document
1. Design, implement, test, and debug a program that uses each of the following fundamental
programming constructs: basic computation, simple I/O, standard conditional and iterative structures, and the definition of functions.
2. Use pseudocode or a programming language to implement, test, and debug algorithms for
solving simple problems.
3. Summarize the evolution of programming languages illustrating how this history has led to the paradigms available today.
4. Demonstrate different forms of binding, visibility, scoping, and lifetime management
 

Objectives: Untitled document
At the conclusion of this course, the student should be able to:
1. Choose appropriate conditional and iteration constructs for a given programming task.
2. Apply the techniques of structured (functional) decomposition to break a program into smaller
    pieces.
3. Identify the necessary properties of good algorithms.
4. Create algorithms for solving simple problems.
5. Identify at least one distinguishing characteristic for each of the programming paradigms
    covered in this unit.
6. Explain the value of declaration models, especially with respect to programming-in-the-large.
7. Identify and describe the properties of a variable such as its associated address, value, scope,
    persistence, and size.
8. Describe strategies that are useful in debugging.

Topics and Scope
Untitled document
I. Fundamental Programming Constructs
    A. Basic syntax and semantics of a higher-level language
    B. Variables, types, expressions, and assignment
    C. Simple I/O
    D. Conditional and iterative control structures
    E. Functions and parameter passing
    F. Structured decomposition
II. Algorithms and Problem-Solving
    A. Problem-solving strategies
    B. The role of algorithms in the problem-solving process
    C. Implementation strategies for algorithms
    D. Debugging strategies
    E. The concept and properties of algorithms
III. Overview of Programming Languages
    A. History of programming languages
    B. Brief survey of programming paradigms
    C. Procedural languages
    D. Object-oriented languages
IV. Declarations and Types
    A. The conception of types as a set of values together with a set of operations Declaration
         models (binding, visibility, scope, and lifetime)
    B. Overview of type-checking
 
All topics are covered in both the lecture and lab parts of the course.

Assignments:
Untitled document
Lecture-Related Assignments:
1. Read approximately 30 pages per week
2. Complete 2-8 examinations including final exam
 
Lab-Related Assignments:
1. Complete 10-15 programming assignments, with documentation, using the C++ programming
    language

Methods of Evaluation/Basis of Grade.
Writing: Assessment tools that demonstrate writing skill and/or require students to select, organize and explain ideas in writing.Writing
10 - 20%
Written program documentation
Problem solving: Assessment tools, other than exams, that demonstrate competence in computational or non-computational problem solving skills.Problem Solving
20 - 60%
Programming assignments
Skill Demonstrations: All skill-based and physical demonstrations used for assessment purposes including skill performance exams.Skill Demonstrations
0 - 0%
None
Exams: All forms of formal testing, other than skill performance exams.Exams
20 - 60%
Exams, Final Exam: (Multiple choice, true/false, matching items, completion, programming problems)
Other: Includes any assessment tools that do not logically fit into the above categories.Other Category
0 - 10%
Participation and attendance


Representative Textbooks and Materials:
Untitled document
Starting Out with C++ From Control Structures through Objects. 9th ed. Gaddis, Tony. Pearson. 2017

Print PDF