SlideShare a Scribd company logo
1 of 3
Download to read offline
CIS 115: Revised: June 2013
CIS 115
INTRODUCTION TO PROGRAMMING AND LOGIC
COURSE DESCRIPTION:
Prerequisites: MAT 070 or DMA 010, 020, 030, 040
Corequisites: None
This course introduces computer programming and problem solving in a structured program logic
environment. Topics include language syntax, data types, program organization, problem-solving
methods, algorithm design, and logic control structures. Upon completion, students should be able
to manage files with operating system commands, use top-down algorithm design, and implement
algorithmic solutions in a programming language. This course has been approved to satisfy the
Comprehensive Articulation Agreement general education core requirement in natural
science/mathematics (Quantitative Option). Course Hours per Week: Class, 2. Lab, 3. Semester
Hours Credit, 3.
LEARNING OUTCOMES:
Upon successful completion of this course, the student will be able to:
a. Describe the major components in problem solving for a computer program.
b. Apply top-down concepts in algorithm design.
c. Create flowcharts to illustrate program algorithm or process.
d. Analyze and write pseudocode to illustrate compact and informal high-level descriptions of
computer programming algorithms.
e. Explain the concept of data storage and named memory locations.
f. Apply decision and repetition structures in program design.
g. Write and incorporate methods and functions to demonstrate program competence.
h. Define variables and arrays used in program methodology.
i. Implement input and output to access and process files.
j. Describe and apply object-oriented programming methodology.
k. Apply recursion techniques to problem solving.
OUTLINE OF INSTRUCTION:
I. Introduction to Computers and Programming
a) Hardware and Software
b) Programs and Data
II. Input, Processing, and Output
a) Designing a Program
b) Input, Output, and Variables
CIS 115: Revised: June 2013
c) Variable Assignment and Calculations
d) Variable Declarations and Data Types
e) Named Constants
f) Hand Tracing a Program
g) Documenting a Program
III. Modules
a) Introduction to Modules
b) Defining and Calling a Module
c) Passing Arguments to Modules
d) Local Variables, Global Variables and Global Constants
IV. Decision Structures and Boolean Logic
a) Introduction to Decision Structures
b) Dual Alternative Decision Structures
c) Comparing Strings
d) Nested Decision Structures
e) The Case Structure
f) Logical Operators
g) Boolean Variables
V. Repetition Structures
a) Introduction to Repetition Structures
b) Condition-Controlled Loops: While, Do-While, and Do-Until
c) Count-Controlled Loops and the For Statement
d) Calculating a Running Total
e) Sentinels
f) Nested Loops
VI. Functions
a) Introduction to Functions
b) Writing Your Own Functions
c) More Library Functions
VII. Input Validation
a) Garbage In, Garbage Out
b) The Input Validation Loop
c) Defensive Programming
VIII. Arrays
a) Array Basics
b) Sequentially Searching an Array
c) Processing the Contents of an Array
d) Parallel Arrays
e) Two-Dimensional Arrays
f) Arrays of Three or More Dimensions
CIS 115: Revised: June 2013
IX. Sorting and Searching Arrays
a) The Bubble Sort Algorithm
b) The Selection Sort Algorithm
c) The Insertion Sort Algorithm
d) The Binary Search Algorithm
X. Files
a) Introduction to File Input and Output
b) Using Loops to Process Files
c) Using Files and Arrays
d) Processing Records
e) Control Break Logic
XI. Menu-Driven Programs
a) Introduction to Menu-Driven Programs
b) Modularizing a Menu-Driven Program
c) Using a Loop to Repeat the Menu
d) Multiple-Level Menus
XII. Recursion
a) Introduction to Recursion
b) Problem Solving with Recursion
c) Examples of Recursive Algorithms
XIII. Object-Oriented Programming
a) Procedural and Object-Oriented Programming
b) Classes
c) Using the Unified Modeling Language to Design Classes
d) Finding the Classes and Their Responsibilities in a Problem
e) Inheritance
f) Polymorphism
REQUIRED TEXTBOOKS AND MATERIALS:
Text to be assigned by the instructor each semester
STATEMENT OF STUDENTS WITH DISABILITIES:
Students who require academic accommodations due to any physical, psychological, or learning
disability are encouraged to request assistance from a disability services counselor within the first
two weeks of class. Likewise, students who potentially require emergency medical attention due
to any chronic health condition are encouraged to disclose this information to a disability services
counselor within the first two weeks of class. Counselors can be contacted by calling
919-536-7207, ext. 1413 or by visiting the Student Development Office in the Phail Wynn Jr.
Student Services Center, room 1209.

More Related Content

What's hot

Fy secondsemester2016
Fy secondsemester2016Fy secondsemester2016
Fy secondsemester2016Ankit Dubey
 
Bca1020 programming in c
Bca1020  programming in cBca1020  programming in c
Bca1020 programming in csmumbahelp
 
C programmimng basic.ppt
C programmimng basic.pptC programmimng basic.ppt
C programmimng basic.pptASIT Education
 
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)Deep Learning Italia
 
Competence-Level Prediction and Resume & Job Description Matching Using Conte...
Competence-Level Prediction and Resume & Job Description Matching Using Conte...Competence-Level Prediction and Resume & Job Description Matching Using Conte...
Competence-Level Prediction and Resume & Job Description Matching Using Conte...Jinho Choi
 
Labelled Variables in Logic Programming: A First Prototipe in tuProlog
Labelled Variables in Logic Programming: A First Prototipe in tuPrologLabelled Variables in Logic Programming: A First Prototipe in tuProlog
Labelled Variables in Logic Programming: A First Prototipe in tuPrologRoberta Calegari
 
exercise-week-2-core-c-progr
exercise-week-2-core-c-progrexercise-week-2-core-c-progr
exercise-week-2-core-c-progrChi Lam
 

What's hot (10)

Fy secondsemester2016
Fy secondsemester2016Fy secondsemester2016
Fy secondsemester2016
 
Bca1020 programming in c
Bca1020  programming in cBca1020  programming in c
Bca1020 programming in c
 
Chap 02-1
Chap 02-1Chap 02-1
Chap 02-1
 
C programmimng basic.ppt
C programmimng basic.pptC programmimng basic.ppt
C programmimng basic.ppt
 
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)
Transformer Seq2Sqe Models: Concepts, Trends & Limitations (DLI)
 
Cs 70
Cs 70Cs 70
Cs 70
 
Competence-Level Prediction and Resume & Job Description Matching Using Conte...
Competence-Level Prediction and Resume & Job Description Matching Using Conte...Competence-Level Prediction and Resume & Job Description Matching Using Conte...
Competence-Level Prediction and Resume & Job Description Matching Using Conte...
 
Web
WebWeb
Web
 
Labelled Variables in Logic Programming: A First Prototipe in tuProlog
Labelled Variables in Logic Programming: A First Prototipe in tuPrologLabelled Variables in Logic Programming: A First Prototipe in tuProlog
Labelled Variables in Logic Programming: A First Prototipe in tuProlog
 
exercise-week-2-core-c-progr
exercise-week-2-core-c-progrexercise-week-2-core-c-progr
exercise-week-2-core-c-progr
 

Similar to Cis115 programming logic

vtu data structures lab manual bcs304 pdf
vtu data structures lab manual bcs304 pdfvtu data structures lab manual bcs304 pdf
vtu data structures lab manual bcs304 pdfLPSChandana
 
BISH CS Modle Exit Exam.doc
BISH CS Modle Exit Exam.docBISH CS Modle Exit Exam.doc
BISH CS Modle Exit Exam.docAnimutGeremew3
 
Oop(object oriented programming)
Oop(object oriented programming)Oop(object oriented programming)
Oop(object oriented programming)geetika goyal
 
cprogramming questions for practice end term
cprogramming questions for practice end termcprogramming questions for practice end term
cprogramming questions for practice end termSheelendra3
 
Cprogrammingforproblemsolving
CprogrammingforproblemsolvingCprogrammingforproblemsolving
Cprogrammingforproblemsolvinganandgudnavar
 
COM623M1.doc.doc
COM623M1.doc.docCOM623M1.doc.doc
COM623M1.doc.docbutest
 
COM623M1.doc.doc
COM623M1.doc.docCOM623M1.doc.doc
COM623M1.doc.docbutest
 
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...ciyamala kushbu
 
Csc1100 elements of programming (revised july 2014) 120lh-2-student
Csc1100 elements of  programming (revised july 2014) 120lh-2-studentCsc1100 elements of  programming (revised july 2014) 120lh-2-student
Csc1100 elements of programming (revised july 2014) 120lh-2-studentIIUM
 
Vivek Joshi C programming ppt.pptx for c
Vivek Joshi C programming ppt.pptx for cVivek Joshi C programming ppt.pptx for c
Vivek Joshi C programming ppt.pptx for cvb6274037
 
OOM MCQ 2018
OOM  MCQ 2018OOM  MCQ 2018
OOM MCQ 2018lochan100
 
(Final) Feedback and Control System.docx
(Final) Feedback and Control System.docx(Final) Feedback and Control System.docx
(Final) Feedback and Control System.docxRechieJohnRelator
 
(Final)Computer Architecture.docx
(Final)Computer Architecture.docx(Final)Computer Architecture.docx
(Final)Computer Architecture.docxRechieJohnRelator
 
Automatically Answering And Generating Machine Learning Final Exams
Automatically Answering And Generating Machine Learning Final ExamsAutomatically Answering And Generating Machine Learning Final Exams
Automatically Answering And Generating Machine Learning Final ExamsRichard Hogue
 

Similar to Cis115 programming logic (20)

00 Prontuario inge 3016
00 Prontuario inge 301600 Prontuario inge 3016
00 Prontuario inge 3016
 
Be cse
Be cseBe cse
Be cse
 
vtu data structures lab manual bcs304 pdf
vtu data structures lab manual bcs304 pdfvtu data structures lab manual bcs304 pdf
vtu data structures lab manual bcs304 pdf
 
Computational thinking
Computational thinkingComputational thinking
Computational thinking
 
17 pcds syllabus
17 pcds syllabus17 pcds syllabus
17 pcds syllabus
 
BISH CS Modle Exit Exam.doc
BISH CS Modle Exit Exam.docBISH CS Modle Exit Exam.doc
BISH CS Modle Exit Exam.doc
 
Oop(object oriented programming)
Oop(object oriented programming)Oop(object oriented programming)
Oop(object oriented programming)
 
cprogramming questions for practice end term
cprogramming questions for practice end termcprogramming questions for practice end term
cprogramming questions for practice end term
 
week1.ppt
week1.pptweek1.ppt
week1.ppt
 
Cprogrammingforproblemsolving
CprogrammingforproblemsolvingCprogrammingforproblemsolving
Cprogrammingforproblemsolving
 
COM623M1.doc.doc
COM623M1.doc.docCOM623M1.doc.doc
COM623M1.doc.doc
 
COM623M1.doc.doc
COM623M1.doc.docCOM623M1.doc.doc
COM623M1.doc.doc
 
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
BCS302- Digital Design and computer organization -VTU-2022 scheme-Expectation...
 
Csc1100 elements of programming (revised july 2014) 120lh-2-student
Csc1100 elements of  programming (revised july 2014) 120lh-2-studentCsc1100 elements of  programming (revised july 2014) 120lh-2-student
Csc1100 elements of programming (revised july 2014) 120lh-2-student
 
Vivek Joshi C programming ppt.pptx for c
Vivek Joshi C programming ppt.pptx for cVivek Joshi C programming ppt.pptx for c
Vivek Joshi C programming ppt.pptx for c
 
Oops ppt
Oops pptOops ppt
Oops ppt
 
OOM MCQ 2018
OOM  MCQ 2018OOM  MCQ 2018
OOM MCQ 2018
 
(Final) Feedback and Control System.docx
(Final) Feedback and Control System.docx(Final) Feedback and Control System.docx
(Final) Feedback and Control System.docx
 
(Final)Computer Architecture.docx
(Final)Computer Architecture.docx(Final)Computer Architecture.docx
(Final)Computer Architecture.docx
 
Automatically Answering And Generating Machine Learning Final Exams
Automatically Answering And Generating Machine Learning Final ExamsAutomatically Answering And Generating Machine Learning Final Exams
Automatically Answering And Generating Machine Learning Final Exams
 

Recently uploaded

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Recently uploaded (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Cis115 programming logic

  • 1. CIS 115: Revised: June 2013 CIS 115 INTRODUCTION TO PROGRAMMING AND LOGIC COURSE DESCRIPTION: Prerequisites: MAT 070 or DMA 010, 020, 030, 040 Corequisites: None This course introduces computer programming and problem solving in a structured program logic environment. Topics include language syntax, data types, program organization, problem-solving methods, algorithm design, and logic control structures. Upon completion, students should be able to manage files with operating system commands, use top-down algorithm design, and implement algorithmic solutions in a programming language. This course has been approved to satisfy the Comprehensive Articulation Agreement general education core requirement in natural science/mathematics (Quantitative Option). Course Hours per Week: Class, 2. Lab, 3. Semester Hours Credit, 3. LEARNING OUTCOMES: Upon successful completion of this course, the student will be able to: a. Describe the major components in problem solving for a computer program. b. Apply top-down concepts in algorithm design. c. Create flowcharts to illustrate program algorithm or process. d. Analyze and write pseudocode to illustrate compact and informal high-level descriptions of computer programming algorithms. e. Explain the concept of data storage and named memory locations. f. Apply decision and repetition structures in program design. g. Write and incorporate methods and functions to demonstrate program competence. h. Define variables and arrays used in program methodology. i. Implement input and output to access and process files. j. Describe and apply object-oriented programming methodology. k. Apply recursion techniques to problem solving. OUTLINE OF INSTRUCTION: I. Introduction to Computers and Programming a) Hardware and Software b) Programs and Data II. Input, Processing, and Output a) Designing a Program b) Input, Output, and Variables
  • 2. CIS 115: Revised: June 2013 c) Variable Assignment and Calculations d) Variable Declarations and Data Types e) Named Constants f) Hand Tracing a Program g) Documenting a Program III. Modules a) Introduction to Modules b) Defining and Calling a Module c) Passing Arguments to Modules d) Local Variables, Global Variables and Global Constants IV. Decision Structures and Boolean Logic a) Introduction to Decision Structures b) Dual Alternative Decision Structures c) Comparing Strings d) Nested Decision Structures e) The Case Structure f) Logical Operators g) Boolean Variables V. Repetition Structures a) Introduction to Repetition Structures b) Condition-Controlled Loops: While, Do-While, and Do-Until c) Count-Controlled Loops and the For Statement d) Calculating a Running Total e) Sentinels f) Nested Loops VI. Functions a) Introduction to Functions b) Writing Your Own Functions c) More Library Functions VII. Input Validation a) Garbage In, Garbage Out b) The Input Validation Loop c) Defensive Programming VIII. Arrays a) Array Basics b) Sequentially Searching an Array c) Processing the Contents of an Array d) Parallel Arrays e) Two-Dimensional Arrays f) Arrays of Three or More Dimensions
  • 3. CIS 115: Revised: June 2013 IX. Sorting and Searching Arrays a) The Bubble Sort Algorithm b) The Selection Sort Algorithm c) The Insertion Sort Algorithm d) The Binary Search Algorithm X. Files a) Introduction to File Input and Output b) Using Loops to Process Files c) Using Files and Arrays d) Processing Records e) Control Break Logic XI. Menu-Driven Programs a) Introduction to Menu-Driven Programs b) Modularizing a Menu-Driven Program c) Using a Loop to Repeat the Menu d) Multiple-Level Menus XII. Recursion a) Introduction to Recursion b) Problem Solving with Recursion c) Examples of Recursive Algorithms XIII. Object-Oriented Programming a) Procedural and Object-Oriented Programming b) Classes c) Using the Unified Modeling Language to Design Classes d) Finding the Classes and Their Responsibilities in a Problem e) Inheritance f) Polymorphism REQUIRED TEXTBOOKS AND MATERIALS: Text to be assigned by the instructor each semester STATEMENT OF STUDENTS WITH DISABILITIES: Students who require academic accommodations due to any physical, psychological, or learning disability are encouraged to request assistance from a disability services counselor within the first two weeks of class. Likewise, students who potentially require emergency medical attention due to any chronic health condition are encouraged to disclose this information to a disability services counselor within the first two weeks of class. Counselors can be contacted by calling 919-536-7207, ext. 1413 or by visiting the Student Development Office in the Phail Wynn Jr. Student Services Center, room 1209.