Defective,
Wrong and Missing Item
7 days from delivery | Replacement | Replacement Instructions
Purchase options and add-ons
- Print length 408 pages
- Language English
- Publisher No Starch Press
- Publication date 15 December 2020
- Dimensions 17.91 x 2.36 x 23.65 cm
- ISBN-10 1718500807
- ISBN-13 978-1718500808
- See all details
Frequently bought together
Customers who viewed this item also viewed
Product description
"The strength of the book is that the process of discovering and improving algorithms is described in detail and various different approaches are analyzed. Compared to traditional textbooks, there are also interesting topics that are not usually covered . . . Overall, the book is clearly written, the topics are well-chosen, and the book is a good introduction to some important competitive programming techniques." --Antti Laaksonen, Olympiads in Informatics
About the Author
Product details.
- Publisher : No Starch Press (15 December 2020)
- Language : English
- Paperback : 408 pages
- ISBN-10 : 1718500807
- ISBN-13 : 978-1718500808
- Item Weight : 1 kg 50 g
- Dimensions : 17.91 x 2.36 x 23.65 cm
- Country of Origin : India
- #264 in Algorithms
About the author
Daniel zingaro.
Dr. Daniel Zingaro is an associate teaching professor of computer science and award-winning teacher at the University of Toronto. His main area of research is computer science education, where he studies how to improve Computer Science teaching and learning.
He has written books on competitive programming, algorithms, Python, and GitHub Copilot and ChatGPT. So, in his professional life he has convinced people that he knows what he's doing -- but his choice of hobbies leads people to question his overall intelligence (see, for example, his skydiving video on YouTube).
Customer reviews
- 5 star 4 star 3 star 2 star 1 star 5 star 82% 11% 4% 0% 3% 82%
- 5 star 4 star 3 star 2 star 1 star 4 star 82% 11% 4% 0% 3% 11%
- 5 star 4 star 3 star 2 star 1 star 3 star 82% 11% 4% 0% 3% 4%
- 5 star 4 star 3 star 2 star 1 star 2 star 82% 11% 4% 0% 3% 0%
- 5 star 4 star 3 star 2 star 1 star 1 star 82% 11% 4% 0% 3% 3%
- Sort reviews by Top reviews Most recent Top reviews
Top reviews from India
Top reviews from other countries.
- Press Releases
- Amazon Science
- Sell on Amazon
- Sell under Amazon Accelerator
- Protect and Build Your Brand
- Amazon Global Selling
- Supply to Amazon
- Become an Affiliate
- Fulfilment by Amazon
- Advertise Your Products
- Amazon Pay on Merchants
- Your Account
- Returns Centre
- Recalls and Product Safety Alerts
- 100% Purchase Protection
- Amazon App Download
- Conditions of Use & Sale
- Privacy Notice
- Interest-Based Ads
Algorithmic Thinking, 2nd Edition: Learn Algorithms to Level Up Your... › Customer reviews
Customer reviews.
4 star 3 star 2 star 1 star 5 star 0% 0% 19% 0% 81% 4 star 3 star 2 star 1 star 4 star 0% 0% 19% 0% 0% 4 star 3 star 2 star 1 star 3 star 0% 0% 19% 0% 0% 4 star 3 star 2 star 1 star 2 star 0% 0% 19% 0% 19% 4 star 3 star 2 star 1 star 1 star 0% 0% 19% 0% 0%
Algorithmic Thinking, 2nd Edition: Learn Algorithms to Level Up Your Coding Skills
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
There was a problem filtering reviews right now. Please try again later.
From the united states.
There was a problem loading comments right now. Please try again later.
- About Amazon
- Investor Relations
- Amazon Devices
- Amazon Science
- Sell products on Amazon
- Sell on Amazon Business
- Sell apps on Amazon
- Become an Affiliate
- Advertise Your Products
- Self-Publish with Us
- Host an Amazon Hub
- › See More Make Money with Us
- Amazon Business Card
- Shop with Points
- Reload Your Balance
- Amazon Currency Converter
- Amazon and COVID-19
- Your Account
- Your Orders
- Shipping Rates & Policies
- Returns & Replacements
- Manage Your Content and Devices
- Conditions of Use
- Privacy Notice
- Consumer Health Data Privacy Disclosure
- Your Ads Privacy Choices
Get full access to C++ and Algorithmic Thinking for the Complete Beginner and 60K+ other titles, with a free 10-day trial of O'Reilly.
There are also live events, courses curated by job role, and more.
C++ and Algorithmic Thinking for the Complete Beginner
Read it now on the O’Reilly learning platform with a 10-day free trial.
O’Reilly members get unlimited access to books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.
Book description
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 Features
- Comprehensive 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 Description
Embark 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 learn
- Understand 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 for
This 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.
Table of contents
- Table of Contents
- 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
- 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
- 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
- 3.1 What to Install
- Review Crossword Puzzles
- Review Questions
- 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
- 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?
- 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
- 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
- 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
- 7.1 The Value Assignment Operator
- 7.2 Arithmetic Operators
- 7.3 What is the Precedence of Arithmetic Operators?
- Exercise 7.4-1 Which C++ Statements are Syntactically Correct?
- Exercise 7.4-2 Finding Variable Types
- 7.5 Incrementing/Decrementing Operators
- Exercise 7.6-1 Concatenating Names
- 7.7 Review Questions: True/False
- 7.8 Review Questions: Multiple Choice
- 7.9 Review Exercises
- 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
- 9.1 Write, Execute and Debug C++ Programs
- 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
- 11.1 Introduction
- 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
- 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
- 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
- 14.1 Introduction
- 14.2 The Position of a Character in a String
- 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 Crossword Puzzle
- 15.1 Introduction
- 15.2 What is a Boolean Expression?
- Exercise 15.3-1 Filling in the Table
- Exercise 15.4-1 Calculating the Results of Complex Boolean Expressions
- 15.5 Assigning the Result of a Boolean Expression to a Variable
- 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?
- Exercise 15.8-1 Negating Boolean Expressions
- 15.9 Review Questions: True/False
- 15.10 Review Questions: Multiple Choice
- 15.11 Review Exercises
- 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
- 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
- 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
- Exercise 19.1-1 The Days of the Week
- 19.2 Review Questions: True/False
- 19.3 Review Exercises
- 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
- 21.1 Introduction
- 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!
- 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
- 22.1 Introduction
- 22.2 Choosing a 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
- Exercise 22.4-1 Rewriting the Code
- Exercise 22.4-2 Rewriting the Code
- Exercise 22.5-1 Merging the Decision Control Structures
- Exercise 22.5-2 Merging the Decision Control Structures
- Exercise 22.6-1 “Merging” the Decision Control Structures
- Exercise 22.7-1 Rearranging the Boolean Expressions
- 22.8 Why is Code Indentation so Important?
- 22.9 Review Questions: True/False
- 22.10 Review Questions: Multiple Choice
- 22.11 Review Exercises
- Exercise 23.1-1 Is it an Integer?
- Exercise 23.1-2 Validating Data Input and Finding Odd and Even Numbers
- Exercise 23.1-3 Where is the Tollkeeper?
- Exercise 23.1-4 The Most Scientific Calculator Ever!
- Exercise 23.1-5 Converting Gallons to Liters, and Vice Versa
- Exercise 23.1-6 Converting Gallons to Liters, and Vice Versa (with Data Validation)
- Exercise 23.2-1 Finding the Name of the Heaviest Person
- Exercise 23.3-1 Finding the Value of y
- Exercise 23.3-2 Finding the Values of y
- Exercise 23.3-3 Solving the Linear Equation ax + b = 0
- Exercise 23.3-4 Solving the Quadratic Equation ax2 + bx + c = 0
- Exercise 23.4-1 Calculating the Discount
- Exercise 23.4-2 Validating Data Input and Calculating the Discount
- Exercise 23.4-3 Sending a Parcel
- Exercise 23.4-4 Finding the Values of y
- Exercise 23.4-5 Progressive Rates and Electricity Consumption
- Exercise 23.4-6 Progressive Rates and Text Messaging Services
- Exercise 23.5-1 Finding a Leap Year
- Exercise 23.5-2 Displaying the Days of the Month
- Exercise 23.5-3 Checking for Proper Capitalization and Punctuation
- Exercise 23.5-4 Is the Number a Palindrome?
- 23.6 Boolean Expressions Reference and Handy Tips
- 23.7 Review Exercises
- 24.1 What is a Loop Control Structure?
- 24.2 From Sequence Control to Loop Control Structures
- 24.3 Review Questions: True/False
- Exercise 25.1-1 Designing the Flowchart and Counting the Total Number of Iterations
- Exercise 25.1-2 Counting the Total Number of Iterations
- Exercise 25.1-3 Counting the Total Number of Iterations
- Exercise 25.1-4 Counting the Total Number of Iterations
- Exercise 25.1-5 Finding the Sum of Four Numbers
- Exercise 25.1-6 Finding the Sum of Odd Numbers
- Exercise 25.1-7 Finding the Sum of N Numbers
- Exercise 25.1-8 Finding the Sum of an Unknown Quantity of Numbers
- Exercise 25.1-9 Finding the Product of 20 Numbers
- Exercise 25.2-1 Designing the Flowchart and Counting the Total Number of Iterations
- Exercise 25.2-2 Counting the Total Number of Iterations
- Exercise 25.2-3 Designing the Flowchart and Counting the Total Number of Iterations
- Exercise 25.2-4 Counting the Total Number of Iterations
- Exercise 25.2-5 Finding the Product of N Numbers
- Exercise 25.3-1 Designing the Flowchart and Counting the Total Number of Iterations
- 25.4 Review Questions: True/False
- 25.5 Review Questions: Multiple Choice
- 25.6 Review Exercises
- Exercise 26.1-1 Creating the Trace Table
- Exercise 26.1-2 Creating the Trace Table
- Exercise 26.1-3 Counting the Total Number of Iterations
- Exercise 26.1-4 Finding the Sum of Four Numbers
- Exercise 26.1-5 Finding the Square Roots from 0 to N
- Exercise 26.1-6 Finding the Sum of 1 + 2 + 3 + … + 100
- Exercise 26.1-7 Finding the Product of 2 × 4 × 6 × 8 × 10
- Exercise 26.1-8 Finding the Sum of 22 + 42 + 62 + … (2N)2
- Exercise 26.1-9 Finding the Sum of 33 + 66 + 99 + … (3N)3N
- Exercise 26.1-10 Finding the Average Value of Positive Numbers
- Exercise 26.1-11 Counting the Vowels
- Exercise 26.2-1 Counting the Total Number of Iterations
- Exercise 26.2-2 Counting the Total Number of Iterations
- Exercise 26.2-3 Counting the Total Number of Iterations
- Exercise 26.2-4 Counting the Total Number of Iterations
- Exercise 26.2-5 Finding the Sum of N Numbers
- 26.3 Review Questions: True/False
- 26.4 Review Questions: Multiple Choice
- 26.5 Review Exercises
- Exercise 27.1-1 Say “Hello Zeus”. Counting the Total Number of Iterations.
- Exercise 27.1-2 Creating the Trace Table
- Exercise 27.2-1 Violating the First Rule
- Exercise 27.2-2 Violating the Second Rule
- 27.3 Review Questions: True/False
- 27.4 Review Questions: Multiple Choice
- 27.5 Review Exercises
- 28.1 Introduction
- Exercise 28.2-1 Designing the Flowchart Fragment
- Exercise 28.2-2 Designing the Flowchart Fragment
- Exercise 28.2-3 Designing the Flowchart
- Exercise 28.2-4 Designing the Flowchart Fragment
- Exercise 28.2-5 Designing the Flowchart
- Exercise 28.3-1 Writing the C++ Program
- Exercise 28.3-2 Writing the C++ Program
- Exercise 28.3-3 Writing the C++ Program
- Exercise 28.3-4 Writing the C++ Program
- 28.4 Review Exercises
- 29.1 Introduction
- 29.2 Choosing a Loop Control Structure
- 29.3 The “Ultimate” Rule
- 29.4 Breaking Out of a Loop
- Exercise 29.5-1 Cleaning Out the Loop
- Exercise 29.5-2 Cleaning Out the Loop
- 29.6 Endless Loops and How to Stop Them
- 29.7 The “From Inner to Outer” Method
- 29.8 Review Questions: True/False
- 29.9 Review Questions: Multiple Choice
- 29.10 Review Exercises
- Exercise 30.1-1 Counting the Numbers According to Which is Greater
- Exercise 30.1-2 Counting the Numbers According to Their Digits
- Exercise 30.1-3 How Many Numbers Fit in a Sum
- Exercise 30.1-4 Finding the Total Number of Positive Integers
- Exercise 30.1-5 Iterating as Many Times as the User Wishes
- Exercise 30.1-6 Finding the Sum of the Digits
- Exercise 30.2-1 Displaying all Three-Digit Integers that Contain a Given Digit
- Exercise 30.2-2 Displaying all Instances of a Specified Condition
- Exercise 30.3-1 Finding Odd and Even Numbers - Validation Without Error Messages
- Exercise 30.3-2 Finding the Sum of Four Numbers
- Exercise 30.4-1 Validating and Finding the Minimum and the Maximum Value
- Exercise 30.4-2 Validating and Finding the Hottest Planet
- Exercise 30.4-3 ”Making the Grade”
- Exercise 30.5-1 Calculating the Area of as Many Triangles as the User Wishes
- Exercise 30.5-2 Finding x and y
- Exercise 30.5-3 The Russian Multiplication Algorithm
- Exercise 30.5-4 Finding the Number of Divisors
- Exercise 30.5-5 Is the Number a Prime?
- Exercise 30.5-6 Finding all Prime Numbers from 1 to N
- Exercise 30.5-7 Heron's Square Root
- Exercise 30.5-8 Calculating π
- Exercise 30.5-9 Approximating a Real with a Fraction
- Exercise 30.6-1 Fahrenheit to Kelvin, from 0 to 100
- Exercise 30.6-2 Rice on a Chessboard
- Exercise 30.6-3 Just a Poll
- Exercise 30.6-4 Is the Message a Palindrome?
- 30.7 Review Questions: True/False
- 30.8 Review Exercises
- 31.1 Introduction
- Exercise 31.2-1 Designing an Array
- Exercise 31.2-2 Designing Arrays
- Exercise 31.2-3 Designing Arrays
- 31.3 Creating One-Dimensional Arrays in C++
- Exercise 31.4-1 Creating the Trace Table
- Exercise 31.4-2 Using a Non-Existing Index
- 31.5 How to Alter the Value of an Array Element
- Exercise 31.6-1 Finding the Sum
- Exercise 31.7-1 Displaying Words in Reverse Order
- Exercise 31.7-2 Displaying Positive Numbers in Reverse Order
- Exercise 31.7-3 Finding the Average Value
- Exercise 31.7-4 Displaying Reals Only
- Exercise 31.7-5 Displaying Elements with Odd-Numbered Indexes
- Exercise 31.7-6 Displaying Even Numbers in Odd–Numbered Index Positions
- 31.8 What is a Map?
- 31.9 Creating Unordered Maps in C++
- Exercise 31.10-1 Roman Numerals to Numbers
- Exercise 31.10-2 Using a Non-Existing Key in Unordered Maps
- Exercise 31.11-1 Assigning a Value to a Non-Existing Key
- 31.12 How to Iterate Through a Map
- 31.13 Review Questions: True/False
- 31.14 Review Questions: Multiple Choice
- 31.15 Review Exercises
- 32.1 Creating Two-Dimensional Arrays in C++
- Exercise 32.2-1 Creating the Trace Table
- 32.3 How to Iterate Through a Two-Dimensional Array
- Exercise 32.4-1 Displaying Reals Only
- Exercise 32.4-2 Displaying Odd Columns Only
- 32.5 What's the Story on Variables i and j?
- Exercise 32.6-1 Finding the Sum of the Elements on the Main Diagonal
- Exercise 32.6-2 Finding the Sum of the Elements on the Antidiagonal
- Exercise 32.6-3 Filling in the Array
- 32.7 Review Questions: True/False
- 32.8 Review Questions: Multiple Choice
- 32.9 Review Exercises
- 33.1 Introduction
- Exercise 33.2-1 Finding the Average Value
- Exercise 33.3-1 Finding the Average Value
- Exercise 33.4-1 Using Three One-Dimensional Arrays
- Exercise 33.4-2 Using a One-Dimensional Array Along with a Two-Dimensional Array
- Exercise 33.4-3 Using an Array Along with an Unordered Map
- 33.5 Creating a One-Dimensional Array from a Two-Dimensional Array
- 33.6 Creating a Two-Dimensional Array from a One-Dimensional Array
- 33.7 Useful Data Structures Functions/Methods (Subprograms)
- 33.8 Review Questions: True/False
- 33.9 Review Questions: Multiple Choice
- 33.10 Review Exercises
- Exercise 34.1-1 Creating an Array that Contains the Average Values of its Neighboring Elements
- Exercise 34.1-2 Creating an Array with the Greatest Values
- Exercise 34.1-3 Merging One-Dimensional Arrays
- Exercise 34.1-4 Creating Two Arrays – Separating Positive from Negative Values
- Exercise 34.1-5 Creating an Array with Those who Contain Digit 5
- Exercise 34.2-1 Displaying Odds in Reverse Order
- Exercise 34.3-1 Which Depth is the Greatest?
- Exercise 34.3-2 Which Lake is the Deepest?
- Exercise 34.3-3 Which Lake, in Which Country, Having Which Average Area, is the Deepest?
- Exercise 34.3-4 Which Students Have got the Greatest Grade?
- Exercise 34.3-5 Finding the Minimum Value of a Two-Dimensional Array
- Exercise 34.3-6 Finding the City with the Coldest Day
- Exercise 34.3-7 Finding the Minimum and the Maximum Value of Each Row
- Exercise 34.4-1 The Bubble Sort Algorithm – Sorting One-Dimensional Arrays with Numeric Values
- Exercise 34.4-2 Sorting One-Dimensional Arrays with Alphanumeric Values
- Exercise 34.4-3 Sorting One-Dimensional Arrays While Preserving the Relationship with a Second Array
- Exercise 34.4-4 Sorting Last and First Names
- Exercise 34.4-5 Sorting a Two-Dimensional Array
- Exercise 34.4-6 The Modified Bubble Sort Algorithm – Sorting One-Dimensional Arrays
- Exercise 34.4-7 The Selection Sort Algorithm – Sorting One-Dimensional Arrays
- Exercise 34.4-8 Sorting One-Dimensional Arrays While Preserving the Relationship with a Second Array
- Exercise 34.4-9 The Insertion Sort Algorithm – Sorting One-Dimensional Arrays
- Exercise 34.4-10 The Three Worst Elapsed Times
- Exercise 34.5-1 The Linear Search Algorithm – Searching in a One-Dimensional Array that may Contain the Same Value Multiple Times
- Exercise 34.5-2 Display the Last Names of All Those People Who Have the Same First Name
- Exercise 34.5-3 The Linear Search Algorithm – Searching in a Two-Dimensional Array that May Contain the Same Value Multiple Times
- Exercise 34.5-4 The Linear Search Algorithm – Searching in a One-Dimensional Array that Contains Unique Values
- Exercise 34.5-5 Searching for a Social Security Number
- Exercise 34.5-6 The Linear Search Algorithm – Searching in a Two-Dimensional Array that Contains Unique Values
- Exercise 34.5-7 Checking if a Value Exists in all Columns
- Exercise 34.5-8 The Binary Search Algorithm – Searching in a Sorted One-Dimensional Array
- Exercise 34.5-9 Display all the Historical Events for a Country
- Exercise 34.5-10 Searching in Each Column of a Two-Dimensional Array
- Exercise 34.6-1 On Which Days was There a Possibility of Snow?
- Exercise 34.6-2 Was There Any Possibility of Snow?
- Exercise 34.6-3 In Which Cities was There a Possibility of Snow?
- Exercise 34.6-4 Display from Highest to Lowest Grades by Student, and in Alphabetical Order
- Exercise 34.6-5 Archery at the Summer Olympics
- Exercise 34.6-6 The Five Best Scorers
- Exercise 34.6-7 Counting the Frequency of Vowels
- 34.7 Review Questions: True/False
- 34.8 Review Exercises
- 35.1 What Exactly is a Subprogram?
- 35.2 What is Procedural Programming?
- 35.3 What is Modular Programming?
- 35.4 Review Questions: True/False
- 36.1 Subprograms that Return a Value
- 36.2 How to Make a Call to a Function
- 36.3 Subprograms that Return no Values
- 36.4 How to Make a Call to a void Function
- 36.5 Formal and Actual Arguments
- Exercise 36.6-1 Back to Basics – Calculating the Sum of Two Numbers
- Exercise 36.6-2 Calculating the Sum of Two Numbers Using Fewer Lines of Code!
- Exercise 36.7-1 Back to Basics – Displaying the Absolute Value of a Number
- 36.8 Review Questions: True/False
- 36.9 Review Exercises
- 37.1 Can Two Subprograms use Variables of the Same Name?
- 37.2 Can a Subprogram Call Another Subprogram?
- 37.3 Passing Arguments by Value and by Reference
- 37.4 Passing and/or Returning an Array
- 37.5 Default Argument Values (Optional Arguments)
- 37.6 The Scope of a Variable
- 37.7 Converting Parts of Code into Subprograms
- 37.8 Recursion
- 37.9 Review Questions: True/False
- 37.10 Review Exercises
- Exercise 38.1-1 A Simple Currency Converter
- Exercise 38.1-2 Finding the Average Values of Positive Integers
- Exercise 38.1-3 Finding the Sum of Odd Positive Integers
- Exercise 38.1-4 Finding the Values of y
- Exercise 38.2-1 Validating Data Input Using a Subprogram
- Exercise 38.2-2 Sorting an Array Using a Subprogram
- Exercise 38.2-3 Progressive Rates and Electricity Consumption
- Exercise 38.2-4 Roll, Roll, Roll the… Dice!
- Exercise 38.2-5 How Many Times Does Each Number of the Dice Appear?
- 38.3 Review Exercises
- 39.1 What is Object-Oriented Programming?
- 39.2 Classes and Objects in C++
- 39.3 The Constructor and the Keyword this
- Exercise 39.4-1 Historical Events
- Exercise 39.5-1 The Roman Numerals
- Exercise 39.6-1 Doing Math
- 39.7 Class Inheritance
- 39.8 Review Questions: True/False
- 39.9 Review Exercises
- 40.1 Introduction
- 40.2 Opening a File
- 40.3 Closing a File
- 40.4 Writing in (or Appending to) a File
- 40.5 The File Pointer
- 40.6 Reading from a File
- 40.7 Iterating Through the Contents of a File
- 40.8 Review Questions: True/False
- 40.9 Review Exercises
- Exercise 41.1-1 Calculating the Sum of 10 Numbers
- Exercise 41.1-2 Calculating the Average Value of an Unknown Quantity of Numbers
- Exercise 41.1-3 Finding Minimum and Maximum Values
- Exercise 41.1-4 Concatenating Files
- Exercise 41.1-5 Searching in a File
- Exercise 41.1-6 Combining Files with Subprograms
- 41.2 Review Exercises
- Some Final Words from the Author
Product information
- Title: C++ and Algorithmic Thinking for the Complete Beginner
- Author(s): Aristides Bouras
- Release date: June 2024
- Publisher(s): Packt Publishing
- ISBN: 9781836208198
You might also like
C# and algorithmic thinking for the complete beginner.
by Aristides Bouras
Dive into the world of C# and algorithmic thinking with Aristides Bouras's comprehensive guide for complete …
Java and Algorithmic Thinking for the Complete Beginner
Dive into the world of Java and algorithmic thinking with this book. This comprehensive guide for …
C++ Crash Course
by Josh Lospinoso
Upgrade your Code with C++ C++ is one of the most widely used languages for real-world …
The Complete C++ Developer Course
by Codestars By Rob Percival, John P. Baugh
Do you know that C++ is used by over 4 million developers worldwide? In the US, …
Don’t leave empty-handed
Get Mark Richards’s Software Architecture Patterns ebook to better understand how to design components—and how they should interact.
It’s yours, free.
Check it out now on O’Reilly
Dive in for free with a 10-day trial of the O’Reilly learning platform—then explore all the other resources our members count on to build skills and solve problems every day.
IMAGES
VIDEO
COMMENTS
In September 2020, I published a review of Algorithmic Thinking: A Problem-Based Introduction by Daniel Zingaro. This is an update for the forthcoming second edition of the book. Solving Problems With Algorithms Computers are great at evaluating programmers' algorithmic problem-solving skills. Hence the proliferation of online judges used for screening job candidates, running coding contests
Amazon.com: Algorithmic Thinking: A Problem-Based Introduction: 9781718500808: Zingaro, Daniel: Books ... I was recently asked to review this book by the author. The book teaches algorithms based on problems from various programming competitions. It covers a lot of the basic algorithms and data structures you would see in a typical programming ...
37 ratings4 reviews. A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions ...
Book Review - Algorithmic Thinking: A Problem-Based Introduction. As any student pursuing a technical degree knows, problem sets are a big part of math, physics, and engineering classes. Computer science works a bit differently. While CS theory classes use problem sets similar to those in math and science, other classes often require CS ...
Can Code series: Algorithmic Thinking. We all come up with and use algorithms every day to achieve objectives and solve problems. My approach in this book is primarily based on using common problem-solving approaches and applying them to algorithmic thinking to design programs. I also continue using modularization as a key element.
Amazon.com: Algorithmic Thinking, 2nd Edition: Learn Algorithms to Level Up Your Coding Skills: 9781718503229: Zingaro, ... —Midwest Book Review. About the Author. Dr. Daniel Zingaro is an award-winning associate professor of mathematical and computational sciences at the University of Toronto Mississauga. He is well known for his uniquely ...
The old book website for the first edition is still available because there are a bunch of blog posts there that I think will still be useful to readers. Three years ago, I published a book called Algorithmic Thinking to help programmers solve challenging problems using algorithms and data structures. My five rules were. No pseudocode allowed ...
Algorithmic Thinking. : Daniel Zingaro. No Starch Press, Dec 15, 2020 - Computers - 408 pages. A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms.
Hello, readers, I'm happy to announce that I've completed a 2nd edition of Algorithmic Thinking. I posted this on LinkedIn but wanted to share with my readers here as well. The TL;DR is that if you're looking for the latest stuff, there's a new book website for Algorithmic Thinking 2nd Edition.
Title: Algorithmic Thinking. Author (s): Dan Zingaro. Release date: December 2020. Publisher (s): No Starch Press. ISBN: 9781718500808. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions ...
"Now a fully updated and expanded second edition, Daniel Zingaro's Algorithmic Thinking: Unlock Your Programming Potential from No Starch Press is an ideal, comprehensive, and thoroughly 'user friendly' instructional resource for C Programming Language students and software development professionals alike." —Midwest Book Review
Algorithmic Thinking, 2nd Edition. Learn Algorithms to Level Up Your Coding Skills. by Daniel Zingaro. December 2023, 480 pp. ISBN-13: 9781718503229. Print Book and FREE Ebook, $49.99. Ebook (PDF, Mobi, and ePub), $39.99. Add to cart.
About Algorithmic Thinking. A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions like USACO and IOI.
A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions like USACO and IOI.
Algorithmic Thinking, 2nd Edition. by Daniel Zingaro. Released January 2024. Publisher (s): No Starch Press. ISBN: 9781718503229. Read it now on the O'Reilly learning platform with a 10-day free trial. O'Reilly members get unlimited access to books, live events, courses curated by job role, and more from O'Reilly and nearly 200 top ...
About Algorithmic Thinking, 2nd Edition. Get in the game and learn essential computer algorithms by solving competitive programming problems, in the fully revised second edition of the bestselling original. ... —Midwest Book Review. Table Of Contents. Foreword Introduction Acknowledgments Chapter 1: Hash Tables Chapter 2: Trees and Recursion
There's also a lightning-fast review of recursion, and you should be ready for that if you've worked through Chapters 2 and 3 of Algorithmic Thinking. The chapter ends with a summary of bit-manipulation techniques: low-level programming techniques that can be a little opaque but are extremely efficient.
Get Algorithmic Thinking now with the O'Reilly learning platform. O'Reilly members experience books, live events, courses curated by job role, and more from O'Reilly and nearly 200 top publishers. Start your free trial. INTRODUCTION I'm assuming that you've learned to use a programming language such as C, C++, Java, or Python ...
Algorithmic Thinking is the complete package, providing the solid foundation you need to elevate your coding skills to the next level. Reviews "Algorithmic Thinking provides the theoretical background and detailed problem explanations required to stay ahead of our human and robotic competitors."
Algorithmic Thinking. Paperback - 15 December 2020. by Daniel Zingaro (Author) 4.7 90 ratings. See all formats and editions. EMI starts at ₹119. No Cost EMI available EMI options. Save Extra with 3 offers. No Cost EMI: Avail No Cost EMI on select cards for orders above ₹3000 Details.
Find helpful customer reviews and review ratings for Algorithmic Thinking, 2nd Edition: Learn Algorithms to Level Up Your Coding Skills at Amazon.com. Read honest and unbiased product reviews from our users. ... brings a wealth of knowledge and practical insight to this book. You will be learning the most important concepts in computer science.
Whether you're a student prepping for coding interviews or an independent learner, this book is your essential guide to efficient problem-solving in programming. Learn the intricacies of hash tables, recursion, dynamic programming, trees, graphs, and heaps. Become proficient in choosing and implementing the best solutions for any coding ...
Author (s): Aristides Bouras. Release date: June 2024. Publisher (s): Packt Publishing. ISBN: 9781836208198. 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 ….