Here and Now (Ember Falls Book 2)
معرفی کتاب «Here and Now (Ember Falls Book 2)» نوشتهٔ Corinne Michaels، Tony Gaddis، Judy Walters و Godfrey Muganda، منتشرشده توسط نشر BAAE Publishing در سال 2025. این کتاب در فرمت epub، زبان انگلیسی ارائه شده است.
Starting Out with C++ allows you to learn essential programming concepts and practice coding in one continuous experience. Using his hallmark accessible, step-by-step presentation, author Tony Gaddis covers control structures, functions, arrays, and pointers before objects and classes. Every chapter includes clear and easy-to-read code listings, concise and practical real-world examples, focused explanations, and an abundance of exercises. The 10th Edition includes improvements and updates to reflect the latest modern C++ language features, including tuples, lambdas, and new syntactic constructs such as the if statement with initialization. Cover Title Page Copyright Page Contents at a Glance Contents Preface Chapter 1 Introduction to Computers and Programming 1.1 Why Program? 1.2 Computer Systems: Hardware and Software 1.3 Programs and Programming Languages 1.4 What Is a Program Made of? 1.5 Input, Processing, and Output 1.6 The Programming Process 1.7 Procedural and Object-Oriented Programming Review Questions and Exercises Chapter 2 Introduction to C++ 2.1 The Parts of a C++ Program 2.2 The cout Object 2.3 The #include Directive 2.4 Variables, Literals, and Assignment Statements 2.5 Identifiers 2.6 Integer Data Types 2.7 The char Data Type 2.8 The C++ string Class 2.9 Floating-Point Data Types 2.10 The bool Data Type 2.11 Determining the Size of a Data Type 2.12 More About Variable Assignments and Initialization 2.13 Scope 2.14 Arithmetic Operators 2.15 Comments 2.16 Named Constants 2.17 Programming Style Review Questions and Exercises Programming Challenges Chapter 3 Expressions And Interactivity 3.1 The cin Object 3.2 Mathematical Expressions 3.3 When You Mix Apples and Oranges: Type Conversion 3.4 Overflow and Underflow 3.5 Type Casting 3.6 Multiple Assignment and Combined Assignment 3.7 Formatting Output 3.8 Working with Characters and string Objects 3.9 More Mathematical Library Functions 3.10 Focus on Debugging: Hand Tracing a Program 3.11 Focus on Problem Solving: a Case Study Review Questions and Exercises Programming Challenges Chapter 4 Making Decisions 4.1 Relational Operators 4.2 The if Statement 4.3 Expanding the if Statement 4.4 The if/else Statement 4.5 Nested if Statements 4.6 The if/else if Statement 4.7 The if Statement with Initialization 4.8 Flags 4.9 Logical Operators 4.10 Checking Numeric Ranges with Logical Operators 4.11 Menus 4.12 Focus on Software Engineering: Validating User Input 4.13 Comparing Characters and Strings 4.14 The Conditional Operator 4.15 The switch Statement 4.16 The switch Statement with Initialization 4.17 More About Blocks and Variable Scope Review Questions and Exercises Programming Challenges Chapter 5 Loops and Files 5.1 The Increment and Decrement Operators 5.2 Introduction to Loops: the while Loop 5.3 Using the while Loop for Input Validation 5.4 Counters 5.5 The do-while Loop 5.6 The for Loop 5.7 Keeping a Running Total 5.8 Sentinels 5.9 Focus on Software Engineering: Deciding Which Loop to Use 5.10 Nested Loops 5.11 Using Files for Data Storage 5.12 Optional Topics: Breaking and Continuing a Loop Review Questions and Exercises Programming Challenges Chapter 6 Functions 6.1 Focus on Software Engineering: Modular Programming 6.2 Defining and Calling Functions 6.3 Function Prototypes 6.4 Sending Data into a Function 6.5 Passing Data by Value 6.6 Focus on Software Engineering: Using Functions in a Menu-Driven Program 6.7 The return Statement 6.8 Returning a Value from a Function 6.9 Returning a Boolean Value 6.10 Local and Global Variables 6.11 Static Local Variables 6.12 Default Arguments 6.13 Using Reference Variables as Parameters 6.14 Overloading Functions 6.15 The exit() Function 6.16 Stubs and Drivers Review Questions and Exercises Programming Challenges Chapter 7 Arrays and Vectors 7.1 Arrays Hold Multiple Values 7.2 Accessing Array Elements 7.3 No Bounds Checking in C++ 7.4 The Range-Based for Loop 7.5 Processing Array Contents 7.6 Focus on Software Engineering: Using Parallel Arrays 7.7 Arrays as Function Arguments 7.8 Two-Dimensional Arrays 7.9 Arrays with Three or More Dimensions 7.10 Focus on Problem Solving and Program Design: A Case Study 7.11 Introduction to the STL vector Review Questions and Exercises Programming Challenges Chapter 8 Searching and Sorting Arrays 8.1 Focus on Software Engineering: Introduction to Search Algorithms 8.2 Focus on Problem Solving and Program Design:A Case Study 8.3 Focus on Software Engineering: Introduction to Sorting Algorithms 8.4 Focus on Problem Solving and Program Design: A Case Study 8.5 Sorting and Searching vectors Review Questions and Exercises Programming Challenges Chapter 9 Pointers 9.1 Getting the Address of a Variable 9.2 Pointer Variables 9.3 The Relationship between Arrays and Pointers 9.4 Pointer Arithmetic 9.5 Initializing Pointers 9.6 Comparing Pointers 9.7 Pointers as Function Parameters 9.8 Dynamic Memory Allocation 9.9 Returning Pointers from Functions 9.10 Using Smart Pointers to Avoid Memory Leaks 9.11 Focus on Problem Solving and Program Design: A Case Study Review Questions and Exercises Programming Challenges Chapter 10 Characters, C-Strings, and More about the string Class 10.1 Character Testing 10.2 Character Case Conversion 10.3 C-Strings 10.4 Library Functions for Working with C-Strings 10.5 String/Numeric Conversion Functions 10.6 Focus on Software Engineering: Writing Your Own C-String-Handling Functions 10.7 More about the C++ string Class 10.8 Focus on Problem Solving and Program Design: A Case Study Review Questions and Exercises Programming Challenges Chapter 11 Structured Data 11.1 Abstract Data Types 11.2 Structures 11.3 Accessing Structure Members 11.4 Initializing a Structure 11.5 Arrays of Structures 11.6 Focus on Software Engineering: Nested Structures 11.7 Structures as Function Arguments 11.8 Returning a Structure from a Function 11.9 Using Structured Binding Declarations with Structures 11.10 Pointers to Structures 11.11 Focus on Software Engineering: When to Use ., When to Use −>, and When to Use * 11.12 Enumerated Data Types Review Questions and Exercises Programming Challenges Chapter 12 Advanced File Operations 12.1 File Operations 12.2 File Output Formatting 12.3 Passing File Stream Objects to Functions 12.4 More Detailed Error Testing 12.5 Member Functions for Reading and Writing Files 12.6 Focus on Software Engineering: Working with Multiple Files 12.7 Binary Files 12.8 Creating Records with Structures 12.9 Random-Access Files 12.10 Opening a File for Both Input and Output 12.11 Working with the File System Review Questions and Exercises Programming Challenges Chapter 13 Introduction to Classes 13.1 Procedural and Object-Oriented Programming 13.2 Introduction to Classes 13.3 Defining an Instance of a Class 13.4 Why Have Private Members? 13.5 Focus on Software Engineering: Separating Class Specification from Implementation 13.6 Inline Member Functions 13.7 Constructors 13.8 Passing Arguments to Constructors 13.9 Destructors 13.10 Overloading Constructors 13.11 Private Member Functions 13.12 Arrays of Objects 13.13 Focus on Problem Solving and Program Design: An OOP Case Study 13.14 Focus on Object-Oriented Programming: Simulating Dice with Objects 13.15 Focus on Object-Oriented Design: The Unified Modeling Language (UML) 13.16 Focus on Object-Oriented Design: Finding the Classes and Their Responsibilities Review Questions and Exercises Programming Challenges Chapter 14 More about Classes 14.1 Instance and Static Members 14.2 Friends of Classes 14.3 Memberwise Assignment 14.4 Copy Constructors 14.5 Operator Overloading 14.6 Object Conversion 14.7 Aggregation 14.8 Focus on Object-Oriented Design: Class Collaborations 14.9 Focus on Object-Oriented Programming: Simulating the Game of Cho-Han 14.10 Rvalue References and Move Semantics Review Questions and Exercises Programming Challenges Chapter 15 Inheritance, Polymorphism, and Virtual Functions 15.1 What Is Inheritance? 15.2 Protected Members and Class Access 15.3 Constructors and Destructors in Base and Derived Classes 15.4 Redefining Base Class Functions 15.5 Class Hierarchies 15.6 Polymorphism and Virtual Member Functions 15.7 Abstract Base Classes and Pure Virtual Functions 15.8 Multiple Inheritance Review Questions and Exercises Programming Challenges Chapter 16 Exceptions and Templates 16.1 Exceptions 16.2 Function Templates 16.3 Focus on Software Engineering: Where to Start When Defining Templates 16.4 Class Templates Review Questions and Exercises Programming Challenges Chapter 17 The Standard Template Library 17.1 Introduction to the Standard Template Library 17.2 STL Container and Iterator Fundamentals 17.3 The vector Class 17.4 The map, multimap, and unordered_map Classes 17.5 The set, multiset, and unordered_set Classes 17.6 The tuple Class 17.7 Algorithms 17.8 Introduction to Function Objects and Lambda Expressions Review Questions and Exercises Programming Challenges Chapter 18 Linked Lists 18.1 Introduction to the Linked List ADT 18.2 Linked List Operations 18.3 A Linked List Template 18.4 Variations of the Linked List 18.5 The STL list and forward_list Containers Review Questions and Exercises Programming Challenges Chapter 19 Stacks and Queues 19.1 Introduction to the Stack ADT 19.2 Dynamic Stacks 19.3 The STL stack Container 19.4 Introduction to the Queue ADT 19.5 Dynamic Queues 19.6 The STL deque and queue Containers Review Questions and Exercises Programming Challenges Chpater 20 Recursion 20.1 Introduction to Recursion 20.2 Solving Problems with Recursion 20.3 Focus on Problem Solving and Program Design: The Recursive gcd Function 20.4 Focus on Problem Solving and Program Design: Solving Recursively Defined Problems 20.5 Focus on Problem Solving and Program Design: Recursive Linked List Operations 20.6 Focus on Problem Solving and Program Design: A Recursive Binary Search Function 20.7 The Towers of Hanoi 20.8 Focus on Problem Solving and Program Design: The Quicksort Algorithm 20.9 Exhaustive Algorithms 20.10 Recursion and Variadic Function Templates 20.11 Focus on Software Engineering: Recursion Versus Iteration Review Questions and Exercises Programming Challenges Chapter 21 Binary Trees 21.1 Definition and Applications of Binary Trees 21.2 Binary Search Tree Operations 21.3 Template Considerations for Binary Search Trees Review Questions and Exercises Programming Challenges Appendix A: The ASCII Character Set Appendix B: Operator Precedence and Associativity Quick Reference Index Credits "This book's pedagogy, organization, and clear writing style remain the same as in the previous edition. Many improvements and updates have been made, which are summarized here: New material on the if statement and the switch statement with Initialization C++ 17 introduced new forms of the if statement and the switch statement that include an initialization clause. In this edition, Chapter 4 includes new material on this syntax and shows examples using both. New Random Number Generator Modern C++ provides a new and improved random number generator with an intuitive syntax for getting a random number within a specified range. This edition replaces the previous C-style technique for random number generation with the new, modern C++ approach. Tuples Chapter 17, which covers the Standard Template Library, provides a new section on the tuple library. Tuples are explained and numerous examples of using tuples to store and retrieve data are given. New Forms of String and Numeric Literals. This edition introduces raw string literals, binary literals, and the use of digit separators in numeric literals. The filesystem Library Chapter 12 includes a new section on the filesystem library, which was introduced in C++ 17. The filesystem library allows you to work with files and directories at the operating system level, performing operations such as copying and deleting files, getting a list of a directory's contents, and recursively traversing a directory tree. Structured Binding Declarations Structured binding declarations, which were introduced in C++ 17, provide a concise syntax for unpacking a collection or data structure and assigning its contents to individual variables. This edition shows how to use structured binding declarations to unpack arrays, structures, and tuples. Defaulted and Deleted Operations Chapter 14 shows how to use the default and delete key words to explicitly instruct the compiler to either generate or not generate a class's default constructor, default copy constructor, default move constructor, default copy assignment operator, and default destructor. Usage of typename Instead of class In Templates In the code for function and class templates, this edition uses the typename key word instead of the class key word for declaring type parameters. The noexcept Key Word Chapter 16 in this edition introduces the noexcept key word and discusses its use for declaring functions that do not throw an exception. Enhanced Discussion of Deleting Nodes in a Linked List Chapter 18's explanation of deleting a node in a linked list has been expanded with more detail, including a new figure that illustrates the process of unlinking a node, and pseudocode describing the process for deleting a node in either a sorted or an unsorted linked list. Variadic Function Templates Chapter 20 presents a new section on variadic function templates, which allow you to write a set of function templates that use recursion to process a variable number of arguments"-- Provided by publisher This is the eBook of the printed book and may not include any media, website access codes, or print supplements that may come packaged with the bound book. For courses in computer programming in C . A clear and student-friendly way to teach the fundamentals of C RevelTM Starting Out with C : From Control Structures through Objects is an interactive learning environment that integrates media, interactives, and assessment throughout the narrative so students can read, explore, and practice essential coding skills in context. Using his hallmark accessible, step-by-step presentation, author Tony Gaddis covers control structures, functions, arrays, and pointers before objects and classes. As with all Gaddis titles, every chapter includes clear and easy-to-read code listings, concise and practical real-world examples, focused explanations, and an abundance of exercises. Students gain confidence in their skills and learn to recognize the logic behind developing high-quality programs. By combining Tony Gaddis’ signature, student-friendly approach to teaching programming fundamentals with a dynamic reading experience, Revel Starting Out with C engages students at the point of learning, which leads to a deeper understanding of the course material. Revel is Pearson’s newest way of delivering our respected content. Fully digital and highly engaging, Revel replaces the textbook and gives students everything they need for the course. Informed by extensive research on how people read, think, and learn, Revel is an interactive learning environment that enables students to read, practice, and study in one continuous experience – for less than the cost of a traditional textbook. NOTE: Revel is a fully digital delivery of Pearson content. This ISBN is for the standalone Revel access card. In addition to this access card, you will need a course invite link, provided by your instructor, to register for and use Revel.
دانلود کتاب Here and Now (Ember Falls Book 2)