1 option
C++ and Algorithmic Thinking for the Complete Beginner : Learn to Think Like a Programmer by Mastering C++ and Foundational Algorithms from Scratch / Aristides Bouras.
- Format:
- Book
- Author/Creator:
- Bouras, Aristides, author.
- Language:
- English
- Subjects (All):
- C++ (Computer program language).
- Computer algorithms.
- Physical Description:
- 1 online resource (984 pages)
- Edition:
- First edition.
- Place of Publication:
- Birmingham : Packt Publishing, Limited, [2024]
- Summary:
- Dive into the essentials of C++ and algorithmic thinking with this book. This comprehensive guide is perfect for newcomers looking to build a strong foundation in programming and problem-solving.Key FeaturesComprehensive introduction to C++ programming and detailed explanations of algorithmic concepts.Step-by-step setup of development environments, with practical exercises and real-world examples.In-depth coverage of control structures, and visual aids such as trace tables and flowcharts.Book DescriptionEmbark on your programming journey with a thorough introduction to how computers work, setting the stage for understanding C++ and its applications. This course begins with the basics, including setting up your development environment and installing necessary software packages. As you progress, you'll delve into fundamental algorithmic concepts, variables, constants, and handling input and output efficiently. As you build your knowledge, the course introduces more complex topics such as sequence control structures, decision-making processes, and loop control structures. You will learn to manipulate numbers, strings, and understand the intricacies of operators through practical exercises and real-world examples. Visual aids like trace tables and flowcharts will help you visualize the flow of your programs and improve your debugging skills. Towards the end of the course, you'll explore advanced topics such as arrays, data structures, subprograms, and an introduction to object-oriented programming. By the conclusion, you will also gain insights into file handling and advanced algorithmic strategies. Each chapter is designed to build on the previous one, ensuring a cohesive and comprehensive learning experience that equips you with the skills needed to excel in C++ programming and algorithmic thinking.What you will learnUnderstand how computers and programming languages work.Master the basics of C++ and integrated development environments.Develop and debug algorithms effectively.Manipulate variables, constants, and data structures.Implement control structures to manage program flow.Create and use subprograms to optimize code.Who this book is forThis course is designed for complete beginners with no prior programming experience, making it ideal for a wide range of learners. High school students, college students, and self-taught programmers will find this course particularly useful. It’s also suitable for professionals looking to transition into a programming role or enhance their technical skill set. Educators seeking a structured curriculum for teaching C++ can benefit from the course material. Basic computer literacy is recommended, but no prior knowledge of programming is required.
- Contents:
- Intro
- Table of Contents
- Preface
- About the Author
- Acknowledgments
- How This Book is Organized
- Who Should Buy This Book?
- Conventions Used in This Book
- How to Report Errata
- Where to Download Material About this Book
- If you Like this Book
- Part I Introductory Knowledge
- Chapter 1 How a Computer Works
- 1.1 Introduction
- 1.2 What is Hardware?
- 1.3 What is Software?
- 1.4 How a Computer Executes (Runs) a Program
- 1.5 Compilers and Interpreters
- 1.6 What is Source Code?
- 1.7 Review Questions: True/False
- 1.8 Review Questions: Multiple Choice
- Chapter 2 C++ and Integrated Development Environments
- 2.1 What is C++?
- 2.2 What is the Difference Between a Script and a Program?
- 2.3 Why You Should Learn C++
- 2.4 How C++ Works
- 2.5 Boost C++ Libraries
- 2.6 Integrated Development Environments
- 2.7 Microsoft Visual Studio
- Chapter 3 Software Packages to Install
- 3.1 What to Install
- Review in "Introductory Knowledge"
- Review Crossword Puzzles
- Review Questions
- Part II Getting Started with C++
- Chapter 4 Introduction to Basic Algorithmic Concepts
- 4.1 What is an Algorithm?
- 4.2 The Algorithm for Making a Cup of Tea
- 4.3 Properties of an Algorithm
- 4.4 Okay About Algorithms. But What is a Computer Program Anyway?
- 4.5 The Three Parties!
- 4.6 The Three Main Stages Involved in Creating an Algorithm
- 4.7 Flowcharts
- Exercise 4.7-1 Finding the Average Value of Three Numbers
- 4.8 What are "Reserved Words"?
- 4.9 What is the Difference Between a Statement and a Command?
- 4.10 What is Structured Programming?
- 4.11 The Three Fundamental Control Structures
- Exercise 4.11-1 Understanding Control Structures Using Flowcharts
- 4.12 Your First C++ Program
- 4.13 What is the Difference Between a Syntax Error, a Logic Error, and a Runtime Error?
- 4.14 What "Debugging" Means.
- 4.15 Commenting Your Code
- 4.16 User-Friendly Programs
- 4.17 Review Questions: True/False
- 4.18 Review Questions: Multiple Choice
- Chapter 5 Variables and Constants
- 5.1 What is a Variable?
- 5.2 What is a Constant?
- 5.3 How Many Types of Variables and Constants Exist?
- 5.4 Rules and Conventions for Naming Variables and Constants in C++
- 5.5 What Does the Phrase "Declare a Variable" Mean?
- 5.6 How to Declare Variables in C++
- 5.7 How to Declare Constants in C++
- 5.8 Review Questions: True/False
- 5.9 Review Questions: Multiple Choice
- 5.10 Review Exercises
- Chapter 6 Handling Input and Output
- 6.1 How to Output Messages and Results to a User's Screen?
- 6.2 How to Output Special Characters?
- 6.3 How to Prompt the User to Enter Data?
- 6.4 Review Questions: True/False
- 6.5 Review Questions: Multiple Choice
- Chapter 7 Operators
- 7.1 The Value Assignment Operator
- 7.2 Arithmetic Operators
- 7.3 What is the Precedence of Arithmetic Operators?
- 7.4 Compound Assignment Operators
- Exercise 7.4-1 Which C++ Statements are Syntactically Correct?
- Exercise 7.4-2 Finding Variable Types
- 7.5 Incrementing/Decrementing Operators
- 7.6 String Operators
- Exercise 7.6-1 Concatenating Names
- 7.7 Review Questions: True/False
- 7.8 Review Questions: Multiple Choice
- 7.9 Review Exercises
- Chapter 8 Trace Tables
- 8.1 What is a Trace Table?
- Exercise 8.1-1 Creating a Trace Table
- Exercise 8.1-2 Creating a Trace Table
- Exercise 8.1-3 Swapping Values of Variables
- Exercise 8.1-4 Swapping Values of Variables - An Alternative Approach
- 8.2 Review Questions: True/False
- 8.3 Review Exercises
- Chapter 9 Using Visual Studio Community or Visual Studio Code
- 9.1 Write, Execute and Debug C++ Programs
- Review in "Getting Started with C++"
- Review Questions.
- Part III Sequence Control Structures
- Chapter 10 Introduction to Sequence Control Structures
- 10.1 What is the Sequence Control Structure?
- Exercise 10.1-1 Calculating the Area of a Rectangle
- Exercise 10.1-2 Calculating the Area of a Circle
- Exercise 10.1-3 Where is the Car? Calculating Distance Traveled
- Exercise 10.1-4 Kelvin to Fahrenheit
- Exercise 10.1-5 Calculating Sales Tax
- Exercise 10.1-6 Calculating a Sales Discount
- Exercise 10.1-7 Calculating a Sales Discount and Tax
- 10.2 Review Exercises
- Chapter 11 Manipulating Numbers
- 11.1 Introduction
- 11.2 Useful Mathematical Functions (Subprograms), and More
- Exercise 11.2-1 Calculating the Distance Between Two Points
- Exercise 11.2-2 How Far Did the Car Travel?
- 11.3 Review Questions: True/False
- 11.4 Review Questions: Multiple Choice
- 11.5 Review Exercises
- Chapter 12 Complex Mathematical Expressions
- 12.1 Writing Complex Mathematical Expressions
- Exercise 12.1-1 Representing Mathematical Expressions in C++
- Exercise 12.1-2 Writing a Mathematical Expression in C++
- Exercise 12.1-3 Writing a Complex Mathematical Expression in C++
- 12.2 Review Exercises
- Chapter 13 Exercises With a Quotient and a Remainder
- 13.1 Introduction
- Exercise 13.1-1 Calculating the Quotient and Remainder of Integer Division
- Exercise 13.1-2 Finding the Sum of Digits
- Exercise 13.1-3 Displaying an Elapsed Time
- Exercise 13.1-4 Reversing a Number
- 13.2 Review Exercises
- Chapter 14 Manipulating Strings
- 14.1 Introduction
- 14.2 The Position of a Character in a String
- 14.3 Useful String Functions/Methods (Subprograms), and More
- Exercise 14.3-1 Displaying a String Backwards
- Exercise 14.3-2 Switching the Order of Names
- Exercise 14.3-3 Creating a Login ID
- Exercise 14.3-4 Creating a Random Word
- Exercise 14.3-5 Finding the Sum of Digits.
- 14.4 Review Questions: True/False
- 14.5 Review Questions: Multiple Choice
- 14.6 Review Exercises
- Review in "Sequence Control Structures"
- Review Crossword Puzzle
- Part IV Decision Control Structures
- Chapter 15 Making Questions
- 15.1 Introduction
- 15.2 What is a Boolean Expression?
- 15.3 How to Write Simple Boolean Expressions
- Exercise 15.3-1 Filling in the Table
- 15.4 Logical Operators and Complex Boolean Expressions
- Exercise 15.4-1 Calculating the Results of Complex Boolean Expressions
- 15.5 Assigning the Result of a Boolean Expression to a Variable
- 15.6 What is the Order of Precedence of Logical Operators?
- Exercise 15.6-1 Filling in the Truth Table
- Exercise 15.6-2 Converting English Sentences to Boolean Expressions
- 15.7 What is the Order of Precedence of Arithmetic, Comparison, and Logical Operators?
- 15.8 How to Negate Boolean Expressions
- Exercise 15.8-1 Negating Boolean Expressions
- 15.9 Review Questions: True/False
- 15.10 Review Questions: Multiple Choice
- 15.11 Review Exercises
- Chapter 16 The Single-Alternative Decision Structure
- 16.1 The Single-Alternative Decision Structure
- Exercise 16.1-1 Trace Tables and Single-Alternative Decision Structures
- Exercise 16.1-2 The Absolute Value of a Number
- 16.2 Review Questions: True/False
- 16.3 Review Questions: Multiple Choice
- 16.4 Review Exercises
- Chapter 17 The Dual-Alternative Decision Structure
- 17.1 The Dual-Alternative Decision Structure
- Exercise 17.1-1 Finding the Output Message
- Exercise 17.1-2 Trace Tables and Dual-Alternative Decision Structures
- Exercise 17.1-3 Who is the Greatest?
- Exercise 17.1-4 Finding Odd and Even Numbers
- Exercise 17.1-5 Weekly Wages
- 17.2 Review Questions: True/False
- 17.3 Review Questions: Multiple Choice
- 17.4 Review Exercises.
- Chapter 18 The Multiple-Alternative Decision Structure
- 18.1 The Multiple-Alternative Decision Structure
- Exercise 18.1-1 Trace Tables and Multiple-Alternative Decision Structures
- Exercise 18.1-2 Counting the Digits
- 18.2 Review Questions: True/False
- 18.3 Review Exercises
- Chapter 19 The Case Decision Structure
- 19.1 The Case Decision Structure
- Exercise 19.1-1 The Days of the Week
- 19.2 Review Questions: True/False
- 19.3 Review Exercises
- Chapter 20 Nested Decision Control Structures
- 20.1 What are Nested Decision Control Structures?
- Exercise 20.1-1 Trace Tables and Nested Decision Control Structures
- Exercise 20.1-2 Positive, Negative or Zero?
- 20.2 Review Questions: True/False
- 20.3 Review Exercises
- Chapter 21 More about Flowcharts with Decision Control Structures
- 21.1 Introduction
- 21.2 Converting C++ Programs to Flowcharts
- Exercise 21.2-1 Designing the Flowchart
- Exercise 21.2-2 Designing the Flowchart
- Exercise 21.2-3 Designing the Flowchart
- 21.3 A Mistake That You Will Probably Make!
- 21.4 Converting Flowcharts to C++ Programs
- Exercise 21.4-1 Writing the C++ Program
- Exercise 21.4-2 Writing the C++ Program
- Exercise 21.4-3 Writing the C++ Program
- 21.5 Review Exercises
- Chapter 22 Tips and Tricks with Decision Control Structures
- 22.1 Introduction
- 22.2 Choosing a Decision Control Structure
- 22.3 Streamlining the Decision Control Structure
- Exercise 22.3-1 "Shrinking" the Algorithm
- Exercise 22.3-2 "Shrinking" the C++ Program
- Exercise 22.3-3 "Shrinking" the Algorithm
- 22.4 Logical Operators - to Use, or not to Use: That is the Question!
- Exercise 22.4-1 Rewriting the Code
- Exercise 22.4-2 Rewriting the Code
- 22.5 Merging Two or More Single-Alternative Decision Structures
- Exercise 22.5-1 Merging the Decision Control Structures.
- Exercise 22.5-2 Merging the Decision Control Structures.
- Notes:
- Includes bibliographical references.
- Description based on publisher supplied metadata and other sources.
- Description based on print version record.
- Other Format:
- Print version: Bouras, Aristides C++ and Algorithmic Thinking for the Complete Beginner
- ISBN:
- 9781836208181
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.