Starting Out with Programming Logic & Design
Learn the fundamentals of programming logic and design to create efficient, effective code from scratch and polish your resume with in-demand skills.
(PROG-BASIC.AB1) / ISBN : 978-1-64459-324-0About This Course
Explore programming essentials with our “Starting Out with Programming Logic & Design” course. This beginner programming course covers everything from the basics to advanced topics like object-oriented programming and GUI applications. With an emphasis on how to develop programming logic, you’ll engage in hands-on lab activities, debug & write your programs, and code languages such as Java, Python, and C++. Whether you're designing your first program or structuring complex algorithms, this hands-on programming logic course is designed to build your skills step-by-step, ensuring you develop a strong understanding of coding.
Skills You’ll Get
- Employ techniques of programming and logic design for beginners.
- Gain the ability to write code in Java, Python, and C++.
- Implement decision structures (if/else statements, switch statements) for branching program flow.
- Use loops (while, do-while, for loops) for repetitive tasks.
- Build and utilize functions to modularize code and increase reusability.
- Work with arrays, sort algorithms, and other data structures.
- Handle user input and program output.
- Create interactive graphical user interfaces (GUIs).
- Learn techniques for manipulating text data within programs.
- Gain familiarity with basic Object-Oriented Programming (OOP) concepts.
Get the support you need. Enroll in our Instructor-Led Course.
Interactive Lessons
20+ Interactive Lessons | 276+ Exercises | 180+ Quizzes | 125+ Flashcards | 125+ Glossary of terms
Gamified TestPrep
100+ Pre Assessment Questions | 100+ Post Assessment Questions |
Hands-On Labs
34+ LiveLab | 9+ Video tutorials | 45+ Minutes
Video Lessons
35+ Videos | 04:16+ Hours
Preface
- Changes in the Fifth Edition
- Brief Overview of Each Lesson
- Organization of the Text
- Features of the Text
Introduction to Computers and Programming
- Introduction
- Hardware
- How Computers Store Data
- How a Program Works
- Types of Software
- Review Questions
Input, Processing, and Output
- Designing a Program
- Output, Input, and Variables
- Variable Assignment and Calculations
- Variable Declarations and Data Types
- Named Constants
- Hand Tracing a Program
- Documenting a Program
- Designing Your First Program
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Modules
- Introduction to Modules
- Defining and Calling a Module
- Local Variables
- Passing Arguments to Modules
- Global Variables and Global Constants
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Decision Structures and Boolean Logic
- Introduction to Decision Structures
- Dual Alternative Decision Structures
- Comparing Strings
- Nested Decision Structures
- The Case Structure
- Logical Operators
- Boolean Variables
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Repetition Structures
- Introduction to Repetition Structures
- Condition-Controlled Loops: While, Do-While, and Do-Until
- Count-Controlled Loops and the For Statement
- Calculating a Running Total
- Sentinels
- Nested Loops
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Functions
- Introduction to Functions: Generating Random Numbers
- Writing Your Own Functions
- More Library Functions
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Input Validation
- Garbage In, Garbage Out
- The Input Validation Loop
- Defensive Programming
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Arrays
- Array Basics
- Sequentially Searching an Array
- Processing the Contents of an Array
- Parallel Arrays
- Two-Dimensional Arrays
- Arrays of Three or More Dimensions
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Sorting and Searching Arrays
- The Bubble Sort Algorithm
- The Selection Sort Algorithm
- The Insertion Sort Algorithm
- The Binary Search Algorithm
- Review Questions
- Debugging Exercise
- Programming Exercises
Files
- Introduction to File Input and Output
- Using Loops to Process Files
- Using Files and Arrays
- Processing Records
- Control Break Logic
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Menu-Driven Programs
- Introduction to Menu-Driven Programs
- Modularizing a Menu-Driven Program
- Using a Loop to Repeat the Menu
- Multiple-Level Menus
- Focus on Languages: Java, Python, and C++
- Review Questions
Text Processing
- Introduction
- Character-by-Character Text Processing
- Focus on Languages: Java, Python, and C++
- Review Questions
- Debugging Exercises
- Programming Exercises
Recursion
- Introduction to Recursion
- Problem Solving with Recursion
- Examples of Recursive Algorithms
- Focus on Languages: Java, Python, and C++
- Review Questions
- Programming Exercises
Object-Oriented Programming
- Procedural and Object-Oriented Programming
- Classes
- Using the Unified Modeling Language to Design Classes
- Finding the Classes and Their Responsibilities in a Problem
- Inheritance
- Polymorphism
- Focus on Languages: Java, Python, and C++
- Review Questions
- Programming Exercises
GUI Applications and Event-Driven Programming
- Graphical User Interfaces
- Designing the User Interface for a GUI Program
- Writing Event Handlers
- Designing Apps For Mobile Devices
- Focus on Languages: Java, Python, and C++
- Review Questions
- Programming Exercises
Appendix A: ASCII/Unicode Characters
Appendix B: Flowchart Symbols
Appendix C: Pseudocode Reference
Appendix D: Converting Decimal Numbers to Binary
Introduction to Computers and Programming
Input, Processing, and Output
- Creating a Flowchart for a Degree Program
- Creating a Pedometer Calculator
- Calculating Average
Modules
- Creating a Flowchart to Calculate Sales Tax
- Creating a Flowchart to Display Monthly Sales
- Using the if Statement
- Calculating the Retail Company's Tax Using Python
- Using the Python Conditional Statement
- Using Python Variables
- Using Python Functions
Decision Structures and Boolean Logic
- Creating a Flowchart to Display Store and Employee Bonuses
- Calculating the Total Meal Price Using the Python Operator
- Calculating the Retail Company's Bonus Using Python
Repetition Structures
- Creating a Flowchart Using Condition-Controlled Loops
- Creating a Flowchart to Print Seconds Using the Count-Controlled Loop
- Calculating Average Test Scores
- Using the for Statement
Functions
- Creating a Flowchart Using the RANDOM Function
- Solving Equations Using Python
- Creating a Dice Game
Input Validation
- Creating a Flowchart to Calculate the Average Test Score
- Calculating Call Over Minutes
Arrays
- Creating a Flowchart for the Blood Drive Program
- Calculating the Energy Savings Cost
- Creating the Blood Drive Program
Sorting and Searching Arrays
- Implementing Bubble Sort
- Implementing Selection Sort
- Implementing Insertion Sort
- Implementing Binary Sort
Files
Menu-Driven Programs
- Creating a Menu-Driven Program in Java
Text Processing
- Replacing Variables in C++
Recursion
- Creating a Recursive Function in Java
Object-Oriented Programming
- Creating an Object of the Class
GUI Applications and Event-Driven Programming
- Creating a German Translator
Any questions?Check out the FAQs
Still have unanswered questions and need to get in touch?
Contact Us Now
Learning Programming Logic & Design develop and refine your foundational skills to:
- Solve problems creatively: Furnish a structured approach to break down complex challenges into manageable steps.
- Become a confident programmer: Understand the core concepts behind coding, making it easier to learn any programming language.
- Build practical applications: Turn ideas into working programs that can automate tasks or solve real-world problems.
This course focuses on three popular and versatile languages: Java, Python, and C++. You'll gain exposure to the syntax and core functionalities of each language.
Prior experience is not required! It is our best programming logic course, which starts with the fundamentals of programming logic and gradually progresses to more advanced concepts. Whether you're a complete beginner or have some basic exposure to coding, this course will provide foundational knowledge to kickstart your programming journey.