My Account Log in

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.

Ebook Central Academic Complete Available online

View online
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.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account