Producer Consumer Problem Assignment Help

Producer Consumer Problem Assignment Help

Process Synchronization: Producer-Consumer Problem The purpose of this programming project is to explore process synchronization. This will be accomplished by writing a program on the Producer / Consumer problem described below. Your simulation will be implemented using Pthreads. This assignment is a modification to the programming project “The Producer – Consumer Problem” found at the end of Chapter 7 of our textbook. 1. Your program must be written using C or C++ and you are required to use the Pthread with mutex and semaphore libraries. In chapter 3, we discussed how a “bounded buffer” could be used to enable producer and consumer processes to share memory. We described a technique using a circular buffer that can hold BUFFER_SIZE-1 items. By using a shared memory location count, the buffer can hold all BUFFER_SIZE items. This count is initialized to 0 and is incremented every time an item is placed into the buffer and decremented every time an item is removed from the buffer. The count data item can also be implemented as a counting semaphore. The producer can place items into the buffer only if the buffer has a free memory location to store the item. The producer cannot add items to a full buffer. The consumer can remove items from the buffer if the buffer is not empty. The consumer must wait to consume items if the buffer is empty. The “items” stored in this buffer will be integers. Your producer process will have to insert random numbers into the buffer. The consumer process will consume a number. Assignment Specifications The buffer used between producer and consumer processes will consist of a fixed-size array of type buffer_item. The queue of buffer_item objects will be manipulated using a circular array. The buffer will be manipulated with two functions, buffer_insert_item() and buffer_remove_item(), which are called by the producer and consumer threads, respectively. A skeleton outlining these functions can be found in buffer.h (provided with this assignment). The buffer_insert_item() and buffer_remove_item() functions will synchronize the producer and consumer using the algorithms. The buffer will also require an initialization function (not supplied in buffer.h) that initializes the mutual exclusion object “mutex” along with the “empty” and “full” semaphores. The producer thread will alternate between sleeping for a random period of time and generating and inserting (trying to) an integer into the buffer. Random numbers will be generated using the rand_r() function. See the text on page 290 for an overview of the producer algorithm. The consumer thread will alternate between sleeping for a random period of time (thread safe of course) and (trying to) removing a number out of the buffer. See the text on page 290 for an overview of the consumer algorithm. The main function will initialize the buffer and create the separate producer and consumer threads. Once it has created the producer and consumer threads, the main() function will sleep for duration of the simulation. Upon awakening, the main thread will signal other threads to quit by setting a simulation flag which is a global variable. The main thread will join with the other threads and then display the simulation statistics. The main() function will be passed two parameters on the command line: • The length of time the main thread is to sleep before terminating (simulation length in seconds) • The maximum length of time the producer and consumer threads will sleep prior to producing or consuming a buffer_item A skeleton for the main function appears as: #include <buffer.h> int main( int argc, char *argv[] ){ Get command line arguments Initialize buffer Create producer thread(s) Create consumer thread(s) Sleep Join Threads Display Statistics Exit } Creating Pthreads using the Pthreads API is discussed in Chapter 4 and in Assignment-1. Please refer to those references for specific instructions regarding creation of the producer and consumer Pthreads. The following code sample illustrates how mutex locks available in the Pthread API can be used to protect a critical section: #include <pthread.h> pthread_mutex_t mutex; /* create the mutex lock */ pthread_mutex_init( &mutex, NULL ); /* aquire the mutex lock */ pthread_mutex_lock( &mutex ); /*** CRITICAL SECTION ***/ /* release the mutex lock */ pthread_mutex_unlock( &mutex ); Pthreads uses the pthread_mutex_t data type for mutex locks. A mutex is created with the pthread_mutex_init() function, with the first parameter being a pointer to the mutex. By passing NULL as a second parameter, we initialize the mutex to its default attributes. The mutex is acquired and released with the pthread_mutex_lock() and pthread_mutex_unlock() functions. If the mutex lock is unavailable when pthread_mutex_lock() is invoked, the calling thread is blocked until the owner invokes pthread_mutex_unlock(). All mutex functions return a value of 0 with correct operation; if an error occurs, these functions return a nonzero error code. Pthreads provides two types of semaphores: named and unnamed. For this project, we will use unnamed semaphores. The code below illustrates how a semaphore is created: #include <semaphore.h> sem_t sem; /* create the semaphore and initialize it to 5 */ sem_init( &sem, 0, 5 ); The sem_init() function creates and initializes a semaphore. This function is passed three parameters: A pointer to the semaphore, a flag indicating the level of sharing, and the semaphore’s initial value. In this example, by passing the flag 0, we are indicating that this semaphore can only be shared by threads belonging to the same process that created the semaphore. A nonzero value would allow other processes to access the semaphore as well. In this example, we initialize the semaphore to the value 5. In Chapter-6 (Section 6.6), we described the classical wait() and signal() semaphore operations. Pthread names the wait() and signal() operations sem_wait() and sem_post(), respectively. The code example below creates a binary semaphore mutex with an initial value 1 and illustrates it use in protecting a critical section: #include <semaphore.h> sem_t mutex; /* create the semaphore */ sem_init( &mutex, 0, 1 ); /* acquire the semaphore */ sem_wait( &mutex ); /*** CRITICAL SECTION ***/ /* release the semaphore */ sem_post( &mutex ); Program Output Your simulation should output when various conditions occur: buffer empty/full, location of producer/consumer, etc. Submission Guidelines and Requirements 1. Your program must be written using C or C++ and you are required to use the Pthread with mutex and semaphore libraries 2. You may use the C/C++ STL (Standard Template Library) in your solution. 3. You should use Netbeans to implement the assignment. You can download Netbeans with C/C++ features from the following link: https://netbeans.org/downloads/8.2/ 4. Create project in Netbeans for completing this assignment. 5. Add comments (about the function/variable/class) to your code as much as possible

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Computer Science homework help

Computer Science homework help

FUNDAMENTALS OF

Database Systems SIXTH EDITION

 

 

This page intentionally left blank

 

 

FUNDAMENTALS OF

Database Systems SIXTH EDITION

Ramez Elmasri Department of Computer Science and Engineering The University of Texas at Arlington

Shamkant B. Navathe College of Computing Georgia Institute of Technology

Addison-Wesley Boston Columbus Indianapolis New York San Francisco Upper Saddle River

Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto Delhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo

 

 

Editor in Chief: Michael Hirsch Acquisitions Editor: Matt Goldstein Editorial Assistant: Chelsea Bell

Managing Editor: Jeffrey Holcomb Senior Production Project Manager: Marilyn Lloyd

Media Producer: Katelyn Boller Director of Marketing: Margaret Waples

Marketing Coordinator: Kathryn Ferranti Senior Manufacturing Buyer: Alan Fischer

Senior Media Buyer: Ginny Michaud Text Designer: Sandra Rigney and Gillian Hall

Cover Designer: Elena Sidorova Cover Image: Lou Gibbs/Getty Images

Full Service Vendor: Gillian Hall, The Aardvark Group Copyeditor: Rebecca Greenberg

Proofreader: Holly McLean-Aldis Indexer: Jack Lewis

Printer/Binder: Courier, Westford Cover Printer: Lehigh-Phoenix Color/Hagerstown

Credits and acknowledgments borrowed from other sources and reproduced with permis- sion in this textbook appear on appropriate page within text.

The interior of this book was set in Minion and Akzidenz Grotesk.

Copyright © 2011, 2007, 2004, 2000, 1994, and 1989 Pearson Education, Inc., publishing as Addison-Wesley. All rights reserved. Manufactured in the United States of America. This publication is protected by Copyright, and permission should be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. To obtain permission(s) to use material from this work, please submit a written request to Pear- son Education, Inc., Permissions Department, 501 Boylston Street, Suite 900, Boston, Massa- chusetts 02116.

Many of the designations by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed in initial caps or all caps.

Library of Congress Cataloging-in-Publication Data

Elmasri, Ramez. Fundamentals of database systems / Ramez Elmasri, Shamkant B. Navathe.—6th ed.

p. cm. Includes bibliographical references and index. ISBN-13: 978-0-136-08620-8

1. Database management. I. Navathe, Sham. II. Title.

QA76.9.D3E57 2010 005.74—dc22Addison-Wesley

is an imprint of

10 9 8 7 6 5 4 3 2 1—CW—14 13 12 11 10 ISBN 10: 0-136-08620-9 ISBN 13: 978-0-136-08620-8

 

 

To Katrina, Thomas, and Dora (and also to Ficky)

R. E.

To my wife Aruna, mother Vijaya, and to my entire family

for their love and support

S.B.N.

 

 

This page intentionally left blank

 

 

vii

This book introduces the fundamental concepts nec-essary for designing, using, and implementing database systems and database applications. Our presentation stresses the funda- mentals of database modeling and design, the languages and models provided by the database management systems, and database system implementation tech- niques. The book is meant to be used as a textbook for a one- or two-semester course in database systems at the junior, senior, or graduate level, and as a reference book. Our goal is to provide an in-depth and up-to-date presentation of the most important aspects of database systems and applications, and related technologies. We assume that readers are familiar with elementary programming and data- structuring concepts and that they have had some exposure to the basics of com- puter organization.

New to This Edition The following key features have been added in the sixth edition:

■ A reorganization of the chapter ordering to allow instructors to start with projects and laboratory exercises very early in the course

■ The material on SQL, the relational database standard, has been moved early in the book to Chapters 4 and 5 to allow instructors to focus on this impor- tant topic at the beginning of a course

■ The material on object-relational and object-oriented databases has been updated to conform to the latest SQL and ODMG standards, and consoli- dated into a single chapter (Chapter 11)

■ The presentation of XML has been expanded and updated, and moved ear- lier in the book to Chapter 12

■ The chapters on normalization theory have been reorganized so that the first chapter (Chapter 15) focuses on intuitive normalization concepts, while the second chapter (Chapter 16) focuses on the formal theories and normaliza- tion algorithms

■ The presentation of database security threats has been updated with a dis- cussion on SQL injection attacks and prevention techniques in Chapter 24, and an overview of label-based security with examples

Preface

 

 

■ Our presentation on spatial databases and multimedia databases has been expanded and updated in Chapter 26

■ A new Chapter 27 on information retrieval techniques has been added, which discusses models and techniques for retrieval, querying, browsing, and indexing of information from Web documents; we present the typical processing steps in an information retrieval system, the evaluation metrics, and how information retrieval techniques are related to databases and to Web search

The following are key features of the book:

■ A self-contained, flexible organization that can be tailored to individual needs

■ A Companion Website (http://www.aw.com/elmasri) includes data to be loaded into various types of relational databases for more realistic student laboratory exercises

■ A simple relational algebra and calculus interpreter

■ A collection of supplements, including a robust set of materials for instruc- tors and students, such as PowerPoint slides, figures from the text, and an instructor’s guide with solutions

Organization of the Sixth Edition There are significant organizational changes in the sixth edition, as well as improve- ment to the individual chapters. The book is now divided into eleven parts as follows:

■ Part 1 (Chapters 1 and 2) includes the introductory chapters

■ The presentation on relational databases and SQL has been moved to Part 2 (Chapters 3 through 6) of the book; Chapter 3 presents the formal relational model and relational database constraints; the material on SQL (Chapters 4 and 5) is now presented before our presentation on relational algebra and cal- culus in Chapter 6 to allow instructors to start SQL projects early in a course if they wish (this reordering is also based on a study that suggests students master SQL better when it is taught before the formal relational languages)

■ The presentation on entity-relationship modeling and database design is now in Part 3 (Chapters 7 through 10), but it can still be covered before Part 2 if the focus of a course is on database design

■ Part 4 covers the updated material on object-relational and object-oriented databases (Chapter 11) and XML (Chapter 12)

■ Part 5 includes the chapters on database programming techniques (Chapter 13) and Web database programming using PHP (Chapter 14, which was moved earlier in the book)

■ Part 6 (Chapters 15 and 16) are the normalization and design theory chapters (we moved all the formal aspects of normalization algorithms to Chapter 16)

viii Preface

 

 

Preface ix

■ Part 7 (Chapters 17 and 18) contains the chapters on file organizations, indexing, and hashing

■ Part 8 includes the chapters on query processing and optimization tech- niques (Chapter 19) and database tuning (Chapter 20)

■ Part 9 includes Chapter 21 on transaction processing concepts; Chapter 22 on concurrency control; and Chapter 23 on database recovery from failures

■ Part 10 on additional database topics includes Chapter 24 on database secu- rity and Chapter 25 on distributed databases

■ Part 11 on advanced database models and applications includes Chapter 26 on advanced data models (active, temporal, spatial, multimedia, and deduc- tive databases); the new Chapter 27 on information retrieval and Web search; and the chapters on data mining (Chapter 28) and data warehousing (Chapter 29)

Contents of the Sixth Edition Part 1 describes the basic introductory concepts necessary for a good understanding of database models, systems, and languages. Chapters 1 and 2 introduce databases, typical users, and DBMS concepts, terminology, and architecture.

Part 2 describes the relational data model, the SQL standard, and the formal rela- tional languages. Chapter 3 describes the basic relational model, its integrity con- straints, and update operations. Chapter 4 describes some of the basic parts of the SQL standard for relational databases, including data definition, data modification operations, and simple SQL queries. Chapter 5 presents more complex SQL queries, as well as the SQL concepts of triggers, assertions, views, and schema modification. Chapter 6 describes the operations of the relational algebra and introduces the rela- tional calculus.

Part 3 covers several topics related to conceptual database modeling and database design. In Chapter 7, the concepts of the Entity-Relationship (ER) model and ER diagrams are presented and used to illustrate conceptual database design. Chapter 8 focuses on data abstraction and semantic data modeling concepts and shows how the ER model can be extended to incorporate these ideas, leading to the enhanced- ER (EER) data model and EER diagrams. The concepts presented in Chapter 8 include subclasses, specialization, generalization, and union types (categories). The notation for the class diagrams of UML is also introduced in Chapters 7 and 8. Chapter 9 discusses relational database design using ER- and EER-to-relational mapping. We end Part 3 with Chapter 10, which presents an overview of the differ- ent phases of the database design process in enterprises for medium-sized and large database applications.

Part 4 covers the object-oriented, object-relational, and XML data models, and their affiliated languages and standards. Chapter 11 first introduces the concepts for object databases, and then shows how they have been incorporated into the SQL standard in order to add object capabilities to relational database systems. It then

 

 

x Preface

covers the ODMG object model standard, and its object definition and query lan- guages. Chapter 12 covers the XML (eXtensible Markup Language) model and lan- guages, and discusses how XML is related to database systems. It presents XML concepts and languages, and compares the XML model to traditional database models. We also show how data can be converted between the XML and relational representations.

Part 5 is on database programming techniques. Chapter 13 covers SQL program- ming topics, such as embedded SQL, dynamic SQL, ODBC, SQLJ, JDBC, and SQL/CLI. Chapter 14 introduces Web database programming, using the PHP script- ing language in our examples.

Part 6 covers normalization theory. Chapters 15 and 16 cover the formalisms, theo- ries, and algorithms developed for relational database design by normalization. This material includes functional and other types of dependencies and normal forms of relations. Step-by-step intuitive normalization is presented in Chapter 15, which also defines multivalued and join dependencies. Relational design algorithms based on normalization, along with the theoretical materials that the algorithms are based on, are presented in Chapter 16.

Part 7 describes the physical file structures and access methods used in database sys- tems. Chapter 17 describes primary methods of organizing files of records on disk, including static and dynamic hashing. Chapter 18 describes indexing techniques for files, including B-tree and B+-tree data structures and grid files.

Part 8 focuses on query processing and database performance tuning. Chapter 19 introduces the basics of query processing and optimization, and Chapter 20 dis- cusses physical database design and tuning.

Part 9 discusses transaction processing, concurrency control, and recovery tech- niques, including discussions of how these concepts are realized in SQL. Chapter 21 introduces the techniques needed for transaction processing systems, and defines the concepts of recoverability and serializability of schedules. Chapter 22 gives an overview of the various types of concurrency control protocols, with a focus on two-phase locking. We also discuss timestamp ordering and optimistic concurrency control techniques, as well as multiple-granularity locking. Finally, Chapter 23 focuses on database recovery protocols, and gives an overview of the concepts and techniques that are used in recovery.

Parts 10 and 11 cover a number of advanced topics. Chapter 24 gives an overview of database security including the discretionary access control model with SQL com- mands to GRANT and REVOKE privileges, the mandatory access control model with user categories and polyinstantiation, a discussion of data privacy and its rela- tionship to security, and an overview of SQL injection attacks. Chapter 25 gives an introduction to distributed databases and discusses the three-tier client/server architecture. Chapter 26 introduces several enhanced database models for advanced applications. These include active databases and triggers, as well as temporal, spa- tial, multimedia, and deductive databases. Chapter 27 is a new chapter on informa- tion retrieval techniques, and how they are related to database systems and to Web

 

 

search methods. Chapter 28 on data mining gives an overview of the process of data mining and knowledge discovery, discusses algorithms for association rule mining, classification, and clustering, and briefly covers other approaches and commercial tools. Chapter 29 introduces data warehousing and OLAP concepts.

Appendix A gives a number of alternative diagrammatic notations for displaying a conceptual ER or EER schema. These may be substituted for the notation we use, if the instructor prefers. Appendix B gives some important physical parameters of disks. Appendix C gives an overview of the QBE graphical query language. Appen- dixes D and E (available on the book’s Companion Website located at http://www.aw.com/elmasri) cover legacy database systems, based on the hierar- chical and network database models. They have been used for more than thirty years as a basis for many commercial database applications and transaction- processing systems. We consider it important to expose database management stu- dents to these legacy approaches so they can gain a better insight of how database technology has progressed.

Guidelines for Using This Book There are many different ways to teach a database course. The chapters in Parts 1 through 7 can be used in an introductory course on database systems in the order that they are given or in the preferred order of individual instructors. Selected chap- ters and sections may be left out, and the instructor can add other chapters from the rest of the book, depending on the emphasis of the course. At the end of the open- ing section of many of the book’s chapters, we list sections that are candidates for being left out whenever a less-detailed discussion of the topic is desired. We suggest covering up to Chapter 15 in an introductory database course and including selected parts of other chapters, depending on the background of the students and the desired coverage. For an emphasis on system implementation techniques, chap- ters from Parts 7, 8, and 9 should replace some of the earlier chapters.

Chapters 7 and 8, which cover conceptual modeling using the ER and EER models, are important for a good conceptual understanding of databases. However, they may be partially covered, covered later in a course, or even left out if the emphasis is on DBMS implementation. Chapters 17 and 18 on file organizations and indexing may also be covered early, later, or even left out if the emphasis is on database mod- els and languages. For students who have completed a course on file organization, parts of these chapters can be assigned as reading material or some exercises can be assigned as a review for these concepts.

If the emphasis of a course is on database design, then the instructor should cover Chapters 7 and 8 early on, followed by the presentation of relational databases. A total life-cycle database design and implementation project would cover conceptual design (Chapters 7 and 8), relational databases (Chapters 3, 4, and 5), data model mapping (Chapter 9), normalization (Chapter 15), and application programs implementation with SQL (Chapter 13). Chapter 14 also should be covered if the emphasis is on Web database programming and applications. Additional documen- tation on the specific programming languages and RDBMS used would be required.

Preface xi

 

 

The book is written so that it is possible to cover topics in various sequences. The chapter dependency chart below shows the major dependencies among chapters. As the diagram illustrates, it is possible to start with several different topics following the first two introductory chapters. Although the chart may seem complex, it is important to note that if the chapters are covered in order, the dependencies are not lost. The chart can be consulted by instructors wishing to use an alternative order of presentation.

For a one-semester course based on this book, selected chapters can be assigned as reading material. The book also can be used for a two-semester course sequence. The first course, Introduction to Database Design and Database Systems, at the soph- omore, junior, or senior level, can cover most of Chapters 1 through 15. The second course, Database Models and Implementation Techniques, at the senior or first-year graduate level, can cover most of Chapters 16 through 29. The two-semester sequence can also been designed in various other ways, depending on the prefer- ences of the instructors.

xii Preface

1, 2 Introductory

7, 8 ER, EER Models

3 Relational

Model

6 Relational Algebra 13, 14

DB, Web Programming

9 ER–, EER-to-

Relational

17, 18 File Organization,

Indexing

28, 29 Data Mining, Warehousing

24, 25 Security,

DDB

10 DB Design,

UML

21, 22, 23 Transactions, CC, Recovery

11, 12 ODB, ORDB,

XML

4, 5 SQL

26, 27 Advanced Models,

IR

15, 16 FD, MVD,

Normalization

19, 20 Query Processing,

Optimization, DB Tuning

 

 

Supplemental Materials Support material is available to all users of this book and additional material is available to qualified instructors.

■ PowerPoint lecture notes and figures are available at the Computer Science support Website at http://www.aw.com/cssupport.

■ A lab manual for the sixth edition is available through the Companion Web- site (http://www.aw.com/elmasri). The lab manual contains coverage of popular data modeling tools, a relational algebra and calculus interpreter, and examples from the book implemented using two widely available data- base management systems. Select end-of-chapter laboratory problems in the book are correlated to the lab manual.

■ A solutions manual is available to qualified instructors. Visit Addison- Wesley’s instructor resource center (http://www.aw.com/irc), contact your local Addison-Wesley sales representative, or e-mail computing@aw.com for information about how to access the solutions.

Additional Support Material Gradiance, an online homework and tutorial system that provides additional prac- tice and tests comprehension of important concepts, is available to U.S. adopters of this book. For more information, please e-mail computing@aw.com or contact your local Pearson representative.

Acknowledgments It is a great pleasure to acknowledge the assistance and contributions of many indi- viduals to this effort. First, we would like to thank our editor, Matt Goldstein, for his guidance, encouragement, and support. We would like to acknowledge the excellent work of Gillian Hall for production management and Rebecca Greenberg for a thorough copy editing of the book. We thank the following persons from Pearson who have contributed to the sixth edition: Jeff Holcomb, Marilyn Lloyd, Margaret Waples, and Chelsea Bell.

Sham Navathe would like to acknowledge the significant contribution of Saurav Sahay to Chapter 27. Several current and former students also contributed to vari- ous chapters in this edition: Rafi Ahmed, Liora Sahar, Fariborz Farahmand, Nalini Polavarapu, and Wanxia Xie (former students); and Bharath Rengarajan, Narsi Srinivasan, Parimala R. Pranesh, Neha Deodhar, Balaji Palanisamy and Hariprasad Kumar (current students). Discussions with his colleagues Ed Omiecinski and Leo Mark at Georgia Tech and Venu Dasigi at SPSU, Atlanta have also contributed to the revision of the material.

We would like to repeat our thanks to those who have reviewed and contributed to previous editions of Fundamentals of Database Systems.

■ First edition. Alan Apt (editor), Don Batory, Scott Downing, Dennis Heimbinger, Julia Hodges, Yannis Ioannidis, Jim Larson, Per-Ake Larson,

Preface xiii

 

 

Dennis McLeod, Rahul Patel, Nicholas Roussopoulos, David Stemple, Michael Stonebraker, Frank Tompa, and Kyu-Young Whang.

■ Second edition. Dan Joraanstad (editor), Rafi Ahmed, Antonio Albano, David Beech, Jose Blakeley, Panos Chrysanthis, Suzanne Dietrich, Vic Ghor- padey, Goetz Graefe, Eric Hanson, Junguk L. Kim, Roger King, Vram Kouramajian, Vijay Kumar, John Lowther, Sanjay Manchanda, Toshimi Minoura, Inderpal Mumick, Ed Omiecinski, Girish Pathak, Raghu Ramakr- ishnan, Ed Robertson, Eugene Sheng, David Stotts, Marianne Winslett, and Stan Zdonick.

■ Third edition. Maite Suarez-Rivas and Katherine Harutunian (editors); Suzanne Dietrich, Ed Omiecinski, Rafi Ahmed, Francois Bancilhon, Jose Blakeley, Rick Cattell, Ann Chervenak, David W. Embley, Henry A. Etlinger, Leonidas Fegaras, Dan Forsyth, Farshad Fotouhi, Michael Franklin, Sreejith Gopinath, Goetz Craefe, Richard Hull, Sushil Jajodia, Ramesh K. Karne, Harish Kotbagi, Vijay Kumar, Tarcisio Lima, Ramon A. Mata-Toledo, Jack McCaw, Dennis McLeod, Rokia Missaoui, Magdi Morsi, M. Narayanaswamy, Carlos Ordonez, Joan Peckham, Betty Salzberg, Ming-Chien Shan, Junping Sun, Rajshekhar Sunderraman, Aravindan Veerasamy, and Emilia E. Villareal.

■ Fourth edition. Maite Suarez-Rivas, Katherine Harutunian, Daniel Rausch, and Juliet Silveri (editors); Phil Bernhard, Zhengxin Chen, Jan Chomicki, Hakan Ferhatosmanoglu, Len Fisk, William Hankley, Ali R. Hurson, Vijay Kumar, Peretz Shoval, Jason T. L. Wang (reviewers); Ed Omiecinski (who contributed to Chapter 27). Contributors from the University of Texas at Arlington are Jack Fu, Hyoil Han, Babak Hojabri, Charley Li, Ande Swathi, and Steven Wu; Contributors from Georgia Tech are Weimin Feng, Dan Forsythe, Angshuman Guin, Abrar Ul-Haque, Bin Liu, Ying Liu, Wanxia Xie, and Waigen Yee.

■ Fifth edition. Matt Goldstein and Katherine Harutunian (editors); Michelle Brown, Gillian Hall, Patty Mahtani, Maite Suarez-Rivas, Bethany Tidd, and Joyce Cosentino Wells (from Addison-Wesley); Hani Abu-Salem, Jamal R. Alsabbagh, Ramzi Bualuan, Soon Chung, Sumali Conlon, Hasan Davulcu, James Geller, Le Gruenwald, Latifur Khan, Herman Lam, Byung S. Lee, Donald Sanderson, Jamil Saquer, Costas Tsatsoulis, and Jack C. Wileden (reviewers); Raj Sunderraman (who contributed the laboratory projects); Salman Azar (who contributed some new exercises); Gaurav Bhatia, Fariborz Farahmand, Ying Liu, Ed Omiecinski, Nalini Polavarapu, Liora Sahar, Saurav Sahay, and Wanxia Xie (from Georgia Tech).

Last, but not least, we gratefully acknowledge the support, encouragement, and patience of our families.

R. E.

S.B.N.

xiv Preface

 

 

Contents

■ part 1 Introduction to Databases ■

chapter 1 Databases and Database Users 3 1.1 Introduction 4 1.2 An Example 6 1.3 Characteristics of the Database Approach 9 1.4 Actors on the Scene 14 1.5 Workers behind the Scene 16 1.6 Advantages of Using the DBMS Approach 17 1.7 A Brief History of Database Applications 23 1.8 When Not to Use a DBMS 26 1.9 Summary 27 Review Questions 27 Exercises 28 Selected Bibliography 28

chapter 2 Database System Concepts and Architecture 29

2.1 Data Models, Schemas, and Instances 30 2.2 Three-Schema Architecture and Data Independence 33 2.3 Database Languages and Interfaces 36 2.4 The Database System Environment 40 2.5 Centralized and Client/Server Architectures for DBMSs 44 2.6 Classification of Database Management Systems 49 2.7 Summary 52 Review Questions 53 Exercises 54 Selected Bibliography 55

xv

 

 

xvi Contents

■ part 2 The Relational Data Model and SQL ■

chapter 3 The Relational Data Model and Relational Database Constraints 59

3.1 Relational Model Concepts 60 3.2 Relational Model Constraints and Relational Database Schemas 67 3.3 Update Operations, Transactions, and Dealing

with Constraint Violations 75 3.4 Summary 79 Review Questions 80 Exercises 80 Selected Bibliography 85

chapter 4 Basic SQL 87 4.1 SQL Data Definition and Data Types 89 4.2 Specifying Constraints in SQL 94 4.3 Basic Retrieval Queries in SQL 97 4.4 INSERT, DELETE, and UPDATE Statements in SQL 107 4.5 Additional Features of SQL 110 4.6 Summary 111 Review Questions 112 Exercises 112 Selected Bibliography 114

chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification 115

5.1 More Complex SQL Retrieval Queries 115 5.2 Specifying Constraints as Assertions and Actions as Triggers 131 5.3 Views (Virtual Tables) in SQL 133 5.4 Schema Change Statements in SQL 137 5.5 Summary 139 Review Questions 141 Exercises 141 Selected Bibliography 143

 

 

chapter 6 The Relational Algebra and Relational Calculus 145

6.1 Unary Relational Operations: SELECT and PROJECT 147 6.2 Relational Algebra Operations from Set Theory 152 6.3 Binary Relational Operations: JOIN and DIVISION 157 6.4 Additional Relational Operations 165 6.5 Examples of Queries in Relational Algebra 171 6.6 The Tuple Relational Calculus 174 6.7 The Domain Relational Calculus 183 6.8 Summary 185 Review Questions 186 Exercises 187 Laboratory Exercises 192 Selected Bibliography 194

■ part 3 Conceptual Modeling and Database Design ■

chapter 7 Data Modeling Using the Entity-Relationship (ER) Model 199

7.1 Using High-Level Conceptual Data Models for Database Design 200 7.2 A Sample Database Application 202 7.3 Entity Types, Entity Sets, Attributes, and Keys 203 7.4 Relationship Types, Relationship Sets, Roles,

and Structural Constraints 212 7.5 Weak Entity Types 219 7.6 Refining the ER Design for the COMPANY Database 220 7.7 ER Diagrams, Naming Conventions, and Design Issues 221 7.8 Example of Other Notation: UML Class Diagrams 226 7.9 Relationship Types of Degree Higher than Two 228 7.10 Summary 232 Review Questions 234 Exercises 234 Laboratory Exercises 241 Selected Bibliography 243

Contents xvii

 

 

xviii Contents

chapter 8 The Enhanced Entity-Relationship (EER) Model 245

8.1 Subclasses, Superclasses, and Inheritance 246 8.2 Specialization and Generalization 248 8.3 Constraints and Characteristics of Specialization

and Generalization Hierarchies 251 8.4 Modeling of UNION Types Using Categories 258 8.5 A Sample UNIVERSITY EER Schema, Design Choices,

and Formal Definitions 260 8.6 Example of Other Notation: Representing Specialization

and Generalization in UML Class Diagrams 265 8.7 Data Abstraction, Knowledge Representation,

and Ontology Concepts 267 8.8 Summary 273 Review Questions 273 Exercises 274 Laboratory Exercises 281 Selected Bibliography 284

chapter 9 Relational Database Design by ER- and EER-to-Relational Mapping 285

9.1 Relational Database Design Using ER-to-Relational Mapping 286 9.2 Mapping EER Model Constructs to Relations 294 9.3 Summary 299 Review Questions 299 Exercises 299 Laboratory Exercises 301 Selected Bibliography 302

chapter 10 Practical Database Design Methodology and Use of UML Diagrams 303

10.1 The Role of Information Systems in Organizations 304 10.2 The Database Design and Implementation Process 309 10.3 Use of UML Diagrams as an Aid to Database

Design Specification 328 10.4 Rational Rose: A UML-Based Design Tool 337 10.5 Automated Database Design Tools 342

 

 

Contents xix

10.6 Summary 345 Review Questions 347 Selected Bibliography 348

■ part 4 Object, Object-Relational, and XML: Concepts, Models, Languages, and Standards ■

chapter 11 Object and Object-Relational Databases 353 11.1 Overview of Object Database Concepts 355 11.2 Object-Relational Features: Object Database Extensions

to SQL 369 11.3 The ODMG Object Model and the Object Definition

Language ODL 376 11.4 Object Database Conceptual Design 395 11.5 The Object Query Language OQL 398 11.6 Overview of the C++ Language Binding in the ODMG Standard 407 11.7 Summary 408 Review Questions 409 Exercises 411 Selected Bibliography 412

chapter 12 XML: Extensible Markup Language 415 12.1 Structured, Semistructured, and Unstructured Data 416 12.2 XML Hierarchical (Tree) Data Model 420 12.3 XML Documents, DTD, and XML Schema 423 12.4 Storing and Extracting XML Documents from Databases 431 12.5 XML Languages 432 12.6 Extracting XML Documents from Relational Databases 436 12.7 Summary 442 Review Questions 442 Exercises 443 Selected Bibliography 443

 

 

■ part 5 Database Programming Techniques ■

chapter 13 Introduction to SQL Programming Techniques 447

13.1 Database Programming: Techniques and Issues 448 13.2 Embedded SQL, Dynamic SQL, and SQLJ 451 13.3 Database Programming with Function Calls: SQL/CLI and JDBC

464 13.4 Database Stored Procedures and SQL/PSM 473 13.5 Comparing the Three Approaches 476 13.6 Summary 477 Review Questions 478 Exercises 478 Selected Bibliography 479

chapter 14 Web Database Programming Using PHP 481 14.1 A Simple PHP Example 482 14.2 Overview of Basic Features of PHP 484 14.3 Overview of PHP Database Programming 491 14.4 Summary 496 Review Questions 496 Exercises 497 Selected Bibliography 497

■ part 6 Database Design Theory and Normalization ■

chapter 15 Basics of Functional Dependencies and Normalization for Relational Databases 501

15.1 Informal Design Guidelines for Relation Schemas 503 15.2 Functional Dependencies 513 15.3 Normal Forms Based on Primary Keys 516 15.4 General Definitions of Second and Third Normal Forms 525 15.5 Boyce-Codd Normal Form 529

xx Contents

 

 

15.6 Multivalued Dependency and Fourth Normal Form 531 15.7 Join Dependencies and Fifth Normal Form 534 15.8 Summary 535 Review Questions 536 Exercises 537 Laboratory Exercises 542 Selected Bibliography 542

chapter 16 Relational Database Design Algorithms and Further Dependencies 543

16.1 Further Topics in Functional Dependencies: Inference Rules, Equivalence, and Minimal Cover 545

16.2 Properties of Relational Decompositions 551 16.3 Algorithms for Relational Database Schema Design 557 16.4 About Nulls, Dangling Tuples, and Alternative Relational

Designs 563 16.5 Further Discussion of Multivalued Dependencies and 4NF 567 16.6 Other Dependencies and Normal Forms 571 16.7 Summary 575 Review Questions 576 Exercises 576 Laboratory Exercises 578 Selected Bibliography 579

■ part 7 File Structures, Indexing, and Hashing ■

chapter 17 Disk Storage, Basic File Structures, and Hashing 583

17.1 Introduction 584 17.2 Secondary Storage Devices 587 17.3 Buffering of Blocks 593 17.4 Placing File Records on Disk 594 17.5 Operations on Files 599 17.6 Files of Unordered Records (Heap Files) 601 17.7 Files of Ordered Records (Sorted Files) 603 17.8 Hashing Techniques 606

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Easy Microsoft Word Assignment

Office 2013 – myitlab:grader – Instructions GO! – Word Chapter 1: Homework Project 3

Educational Website

 

Project Description: In the following project, you will edit a handout that describes a new educational website product that Sturgeon Point Productions has developed for instructors. You will insert text, insert and format graphics, insert and modify text boxes and shapes, change document and paragraph layout, create lists, set and modify tab stops, and insert a SmartArt graphic.

 

Instructions: For the purpose of grading the project you are required to perform the following tasks: Step Instructions Points Possible 1 Start Word. Download and open the file named go_w01_grader_h3.docx. 0 2 Type Educational Websites and then press ENTER. Type Sturgeon Point Productions is offering website tie-ins with every educational video title in our catalog, at no additional cost. After the period, press SPACEBAR. Insert the text from the grader data file go_w01_grader_h3_Education.docx. 4 3 Change the Line Spacing for the entire document to 1.5 and the spacing After to 6 pt. To each of the four paragraphs that begin Sturgeon Point Productions, As educators, When submitting, and The video, apply a First Line indent of 0.5”. 6 4 Change the font size of the title to 50 and the title Line Spacing to 1.0. Center the title. From the Text Effects and Typography gallery, apply the second effect to the title—Fill – Blue, Accent 1, Shadow. 10 5 At the beginning of the paragraph below the title, insert the picture downloaded with your grader files—go_w01_grader_h3_Media.jpg. Change the picture Height to 2, and the Layout Options to Square. Format the picture with a 10 Point Soft Edges effect. 8 6 Use the Position command to display the Layout dialog box. Change the picture position so that the Horizontal Alignment is Right relative to the Margin. Change the Vertical Alignment to Top relative to the Line. 4 7 Select the five paragraphs beginning with Historic interactive timelines and ending with Quizzes and essay exams, and then apply checkmark bullets. 5 8 Locate the paragraph below the bulleted list and then click after the colon. Press ENTER and remove the first line indent. Type a numbered list with the following three numbered items: The title in which you are interested The name of the class and subject Online tools you would like to see created 5 9 With the insertion point located at the end of the numbered list, insert a Basic Chevron Process SmartArt. In the first shape, type View. In the second shape type Interact and in the third shape type Assess. Select the outside border of the SmartArt. Change the SmartArt color to Colorful Range – Accent Colors 4 to 5, and then apply the 3-D Flat Scene style. 8 10 Change the Height of the SmartArt to 1 and the Width to 6.5. Change the SmartArt Layout Options to Square, the Horizontal Alignment to Centered relative to the Page, and the Vertical Alignment to Bottom relative to the Margin. 8 11 Select the days and times at the end of the document and then set a Right tab with dot leaders at 6”. 4 12 Click in the blank line below the tabbed list, and then center the line. Insert an Online Video. Search YouTube for Pearson Higher Education Learning, and then insert the first video that displays. Change the video height to 1.5. 4 13 Below the video, insert a Rounded Rectangle shape. Change the Shape Height to 1.5 and the Shape Width to 6.5. Display the Shape Styles gallery and in the fourth row, apply the second style— Subtle Effect – Blue, Accent 1. 8 14 Use the Position command to display the Layout dialog box, and then change the position so that both the Horizontal and Vertical Alignment are Centered relative to the Margin. In the rectangle, type Sturgeon Point Productions and then press ENTER. Type Partnering with Educators to Produce Rich Media Content and then change the font size to 16. 6 15 Move to the top of the document and insert a Text Box above the title. Change the Height of the text box to 0.5 and the width to 3.6.Type Sturgeon Point Productions and then change the font size to 22. Center the text. 2 16 Use the Position command to display the Layout dialog box, and then position the text box so that the Horizontal Alignment is Centered relative to the Page and the Vertical Absolute position is 0.5 below the Page. 6 17 Change the text box Shape Fill color to Blue, Accent 5, Lighter 80%. Change the Shape Outline to the same color—Blue, Accent 5, Lighter 80%. 4 18 Deselect the text box. Apply a Box setting page border and choose the first style. Change the Color to Blue, Accent 5. 4 19 Change the Top margin to 1.25 and insert the File Name in the footer. 4 20 Save and close the document. Exit Word. Submit the file as directed. 0 Total Points 100

 

 

 

Updated: 01/05/2013 3 W_CH01_GOV1_H3_Instructions.docx

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Introduction To Management Science, 10e Chapter 3 Linear Programming: Computer Solution And Sensitivity Analysis

Introduction To Management Science, 10e Chapter 3 Linear Programming: Computer Solution And Sensitivity Analysis

Introduction to Management Science, 10e (Taylor)

 

Chapter 3 Linear Programming: Computer Solution and Sensitivity Analysis

 

 

 

1) The reduced cost (shadow price) for a positive decision variable is 0.

 

 

 

2) When the right-hand sides of 2 constraints are both increased by 1 unit, the value of the objective function will be adjusted by the sum of the constraints’ prices.

 

 

 

3) When a linear programming problem is solved using a computer package decision variables will always be integer and therefore decision variable values never need to be rounded.

 

 

 

4) Sensitivity ranges can be computed only for the right hand sides of constraints.

 

 

 

5) Sensitivity analysis determines how a change in a parameter affects the optimal solution.

 

 

 

6) The sensitivity range for an objective function coefficient is the range of values over which the current optimal solution point (product mix) will remain optimal.

 

 

 

7) The sensitivity range for an objective function coefficient is the range of values over which the profit does not change.

 

 

 

8) The sensitivity range for a constraint quantity value is the range over which the shadow price is valid.

 

 

 

9) If we change the constraint quantity to a value outside the sensitivity range for that constraint quantity, the shadow price will change.

 

 

 

10) The sensitivity range for a constraint quantity value is the range over which the optimal values of the decision variables do not change.

 

 

 

11) Linear programming problems are restricted to decisions in a single time period.

 

Answer: FALSE

 

 

 

12) A maximization problem may be characterized by all greater than or equal to constraints.

 

 

 

13) A change in the value of an objective function coefficient will always change the value of the optimal solution.

 

 

 

14) The terms reduced cost, shadow price, and dual price all mean the same thing.

 

 

 

15) Sensitivity analysis can be used to determine the effect on the solution for changing several parameters at once.

 

 

 

16) For a profit maximization problem, if the allowable increase for a coefficient in the objective function is infinite, then profits are unbounded.

 

 

 

17) The reduced cost (shadow price) for a positive decision variable is __________.

 

 

 

18) The sensitivity range for a __________ is the range of values over which the quantity values can change without changing the shadow price

 

 

 

19) __________ is the analysis of the effect of parameter changes on the optimal solution.

 

 

 

20) The sensitivity range for a constraint quantity value is also the range over which the __________ is valid.

 

 

 

21) The sensitivity range for an __________ coefficient is the range of values over which the current optimal solution point (product mix) will remain optimal.

 

 

 

Consider the following linear program, which maximizes profit for two products, regular (R), and super (S):

 

 

 

MAX 50R + 75S

 

s.t.

 

1.2R + 1.6 S ≤ 600 assembly (hours)

 

0.8R + 0.5 S ≤ 300 paint (hours)

 

.16R + 0.4 S ≤ 100 inspection (hours)

 

 

 

Sensitivity Report:

 

 

 

 

 

 

 

 

 

 

Final

Reduced

Objective

Allowable

Allowable

Cell

Name

Value

Cost

Coefficient

Increase

Decrease

$B$7

Regular =

291.67

0.00

50

70

20

$C$7

Super =

133.33

0.00

75

50

43.75

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Final

Shadow

Constraint

Allowable

Allowable

Cell

Name

Value

Price

R.H. Side

Increase

Decrease

$E$3

Assembly (hr/unit)

563.33

0.00

600

1E+30

36.67

$E$4

Paint (hr/unit)

300.00

33.33

300

39.29

175

$E$5

Inspect (hr/unit)

100.00

145.83

100

12.94

40

 

 

 

22) The optimal number of regular products to produce is __________, and the optimal number of super products to produce is __________, for total profits of __________.

 

 

 

23) If the company wanted to increase the available hours for one of their constraints (assembly, painting, or inspection ) by 2 hours, they should increase __________.

 

 

 

24) The profit on the super product could increase by __________ without affecting the product mix.

 

Key words: computer solution

 

 

 

25) If downtime reduced the available capacity for painting by 40 hours (from 300 to 260 hours), profits would be reduced by __________.

 

 

 

26) A change in the market has increased the profit on the super product by $5. Total profit will increase by __________.

 

 

 

Tracksaws, Inc. makes tractors and lawn mowers. The firm makes a profit of $30 on each tractor and $30 on each lawn mower, and they sell all they can produce. The time requirements in the machine shop, fabrication, and tractor assembly are given in the table.

 

 

 

 

 

 

 

Formulation:

 

Let x = number of tractors produced per period

 

y = number of lawn mowers produced per period

 

MAX 30x + 30y

 

subject to 2 x + y ≤ 60

 

2 x + 3y ≤ 120

 

x ≤ 45

 

The graphical solution is shown below.

 

 

 

 

 

 

 

27) How many tractors and saws should be produced to maximize profit, and how much profit will they make?

 

28) Determine the sensitivity range for the profit for tractors.

 

 

 

29) What is the shadow price for assembly?

 

 

 

30) What is the shadow price for fabrication?

 

 

 

31) What is the maximum amount a manager would be willing to pay for one additional hour of machining time?

 

 

 

32) A breakdown in fabrication causes the available hours to drop from 120 to 90 hours. How will this impact the optimal number of tractors and mowers produced?

 

 

 

33) What is the range for the shadow price for assembly?

 

The production manager for the Whoppy soft drink company is considering the production of 2 kinds of soft drinks: regular (R) and diet (D). The company operates one “8 hour” shift per day. Therefore, the production time is 480 minutes per day. During the production process, one of the main ingredients, syrup is limited to maximum production capacity of 675 gallons per day. Production of a regular case requires 2 minutes and 5 gallons of syrup, while production of a diet case needs 4 minutes and 3 gallons of syrup. Profits for regular soft drink are $3.00 per case and profits for diet soft drink are $2.00 per case.

 

 

 

The formulation for this problem is given below.

 

 

 

MAX Z = $3R + $2D

 

s.t.

 

2R + 4D ≤ 480

 

5R + 3D ≤ 675

 

 

 

 

 

The sensitivity report is given below

 

 

 

Adjustable Cells

 

 

 

 

Final

Reduced

Objective

Allowable

Allowable

 

Cell

Name

Value

Cost

Coefficient

Increase

Decrease

 

$B$6

Regular =

90.00

0.00

3

0.33

2

 

$C$6

Diet =

75.00

0.00

2

4

0.2

 

 

 

 

 

 

 

 

 

Constraints

 

 

 

Final

Shadow

Constraint

Allowable

Allowable

Cell

Name

Value

Price

R.H. Side

Increase

Decrease

$E$3

Production (minutes)

480.00

0.07

480

420

210

$E$4

Syrup (gallons)

675.00

0.57

675

525

315

 

 

 

 

 

 

 

 

 

 

34) What is the optimal daily profit?

 

 

 

35) How many cases of regular and how many cases of diet soft drink should Whoppy produce to maximize daily profit?

 

 

 

36) What is the sensitivity range for the per case profit of a diet soft drink?

 

 

 

37) What is the sensitivity range of the production time?

 

 

 

38) if the company decides to increase the amount of syrup it uses during production of these soft drinks to 990 lbs. will the current product mix change? If show what is the impact on profit?

 

 

 

Mallory furniture buys 2 products for resale: big shelves (B) and medium shelves (M). Each big shelf costs $500 and requires 100 cubic feet of storage space, and each medium shelf costs $300 and requires 90 cubic feet of storage space. The company has $75000 to invest in shelves this week, and the warehouse has 18000 cubic feet available for storage. Profit for each big shelf is $300 and for each medium shelf is $150. Graphically solve this problem and answer the following questions.

 

 

 

39) What is the optimal product mix and maximum profit?

 

Key words: formulation, objective function

 

 

 

40) Determine the sensitivity range for the profit on the big shelf.

 

 

 

41) If the Mallory Furniture is able to increase the profit per medium shelf to $200, would the company purchase medium shelves. If so, what would be the new product mix and the total profit?

 

 

 

The linear programming problem whose output follows is used to determine how many bottles of fire red nail polish (x1), bright red nail polish (x2), basil green nail polish(x3), and basic pink nail polish(x4) a beauty salon should stock. The objective function measures profit; it is assumed that every piece stocked will be sold. Constraint 1 measures display space in units, constraint 2 measures time to set up the display in minutes. Note that green nail polish does not require any time to prepare its display. Constraints 3 and 4 are marketing restrictions. Constraint 3 indicates that the maximum demand for fire red and green polish is 25 bottles, while constraint 4 specifies that the minimum demand for bright red, green and pink nail polish bottles combined is at least 50 bottles.

 

 

 

MAX 100×1 + 120×2 + 150×3 + 125×4

 

 

 

Subject to 1. x1 + 2×2 + 2×3 + 2×4 ≤108

 

2. 3×1 + 5×2 + x4 ≤ 120

 

3. x1 + x3 ≤ 25

 

4. x2 + x3 + x4 ≥ 50

 

x1, x2 , x3, x4 ≥ 0

 

 

 

Optimal Solution:

 

Objective Function Value = 7475.000

 

 

 

 

 

 

 

 

 

 

 

Objective Coefficient Ranges

 

 

 

 

 

Right Hand Side Ranges

 

 

 

 

 

42) How much space will be left unused? How many minutes of idle time remaining for setting up the display?

 

 

 

43) a) To what value can the per bottle profit on fire red nail polish drop before the solution (product mix) would change?

 

b) By how much can the per bottle profit on green basil nail polish increase before the solution (product mix) would change?

 

 

 

44) a) By how much can the amount of space decrease before there is a change in the profit?

 

b) By how much can the amount of space decrease before there is a change in the product mix?

 

c) By how much can the amount of time available to setup the display can increase before the solution (product mix) would change?

 

d) What is the lowest value for the amount of time available to setup the display before the solution (product mix) would change?

 

 

 

45) You are offered the chance to obtain more space. The offer is for 15 units and the total price is $1500. What should you do? Why?

 

 

 

46) Max Z = 5×1 + 3×2

 

Subject to: 6×1 + 2×2 ≤ 18

 

15×1 + 20×2 ≤ 60

 

x1 + x2 ≥ 0

 

Determine the sensitivity range for each constraint.

 

Main Heading: Sensitivity Analysis and Computer Solution

 

Key words: sensitivity analysis, sensitivity range for right hand sides

 

 

 

47) Max Z = 5×1 + 3×2

 

Subject to: 6×1 + 2×2 ≤ 18

 

15×1 + 20×2 ≤ 60

 

x1 + x2 ≥ 0

 

Determine the sensitivity range for each objective function coefficient.

 

 

 

48) Max Z = 3×1 + 3×2

 

Subject to: 10×1 + 4×2 ≤ 60

 

25×1 + 50×2 ≤ 200

 

x1 , x2 ≥ 0

 

Determine the sensitivity range for each objective function coefficient.

 

Main Heading: Sensitivity Analysis and Computer Solution

 

Key words: sensitivity analysis/range for objective function coefficients

 

49) For a maximization problem, assume that a constraint is binding. If the original amount of a resource is 4 lbs., and the range of feasibility (sensitivity range) for this constraint is from 3 lbs. to 6 lbs., increasing the amount of this resource by 1 lb. will result in the:

 

A) same product mix, different total profit

 

B) different product mix, same total profit as before

 

C) same product mix, same total profit

 

D) different product mix, different total profit

 

 

 

50) A plant manager is attempting to determine the production schedule of various products to maximize profit. Assume that a machine hour constraint is binding. If the original amount of machine hours available is 200 minutes., and the range of feasibility is from 130 minutes to 340 minutes, providing two additional machine hours will result in:

 

A) the same product mix, different total profit

 

B) a different product mix, same total profit as before

 

C) the same product mix, same total profit

 

D) a different product mix, different total profit

 

 

 

The production manager for Beer etc. produces 2 kinds of beer: light (L) and dark (D). Two resources used to produce beer are malt and wheat. He can obtain at most 4800 oz of malt per week and at most 3200 oz of wheat per week respectively. Each bottle of light beer requires 12 oz of malt and 4 oz of wheat, while a bottle of dark beer uses 8 oz of malt and 8 oz of wheat. Profits for light beer are $2 per bottle, and profits for dark beer are $1 per bottle.

 

 

 

51) If the production manager decides to produce of 0 bottles of light beer and 400 bottles of dark beer, it will result in slack of

 

A) malt only

 

B) wheat only

 

C) both malt and wheat

 

D) neither malt nor wheat

 

 

 

52) Which of the following is not a feasible solution?

 

A) 0 L and 0 D

 

B) 0 L and 400 D

 

C) 200 L and 300 D

 

D) 400 L and 400 D

 

53) What is the optimal weekly profit?

 

A) $1000

 

B) $900

 

C) $800

 

D) $700

 

E) $600

 

 

 

Mallory Furniture buys 2 products for resale: big shelves (B) and medium shelves (M). Each big shelf costs $500 and requires 100 cubic feet of storage space, and each medium shelf costs $300 and requires 90 cubic feet of storage space. The company has $75000 to invest in shelves this week, and the warehouse has 18000 cubic feet available for storage. Profit for each big shelf is $300 and for each medium shelf is $150.

 

 

 

54) Which of the following is not a feasible purchase combination?

 

A) 0 big shelves and 200 medium shelves

 

B) 0 big shelves and 0 medium shelves

 

C) 150 big shelves and 0 medium shelves

 

D) 100 big shelves and 100 medium shelves

 

 

 

55) If the Mallory Furniture company decides to purchase 150 big shelves and no medium shelves, which of the two resources will be left over?

 

A) investment money only

 

B) storage space only

 

C) investment money and storage space

 

D) neither investment money nor storage space

 

The production manager for the Whoppy soft drink company is considering the production of 2 kinds of soft drinks: regular and diet. The company operates one “8 hour” shift per day. Therefore, the production time is 480 minutes per day. During the production process, one of the main ingredients, syrup is limited to maximum production capacity of 675 gallons per day. Production of a regular case requires 2 minutes and 5 gallons of syrup, while production of a diet case needs 4 minutes and 3 gallons of syrup. Profits for regular soft drink are $3.00 per case and profits for diet soft drink are $2.00 per case.

 

 

 

56) Which of the following is not a feasible production combination?

 

A) 90 R and 75 D

 

B) 135 R and 0 D

 

C) 0 R and 120 D

 

D) 75 R and 90 D

 

E) 50 R and 50 D

 

 

 

57) For the production combination of 135 regular cases and 0 diet cases, which resource is completely used up (at capacity)?

 

A) only time

 

B) only syrup

 

C) time and syrup

 

D) neither time nor syrup

 

 

 

58) The sensitivity range for the profit on a regular case of soda is

 

A) $2 to $3

 

B) $2 to $4

 

C) $1 to $3

 

D) $1 to $3.33

 

 

 

59) Which of the following could not be a linear programming problem constraint?

 

A) A + B ≤ -3

 

B) A – B ≤ -3

 

C) A – B ≤ 3

 

D) A + B ≥ -3

 

E) -A + B ≤ -3

 

60) Use the constraints given below and determine which of the following points is feasible.

 

(1) 14x + 6y ≤ 42

 

(2) x – y ≤ 3

 

A) x = 1; y = 5

 

B) x = 2; y = 2

 

C) x = 2; y = 8

 

D) x = 2; y = 4

 

E) x = 3; y = 0.5

 

 

 

61) For the constraints given below, which point is in the feasible region of this minimization problem?

 

(1) 14x + 6y ≤ 42

 

(2) x + 3y ≥ 6

 

A) x = 0; y = 4

 

B) x = 2; y = 5

 

C) x = 1; y = 2

 

D) x = 2; y = 1

 

E) x = 2; y = 3

 

 

 

62) What combination of x and y is a feasible solution that minimizes the value of the objective function ?

 

Min Z = 3x + 15y

 

(1) 2x + 4y ≥ 12

 

(2) 5x + 2y ≥10

 

A) x = 0; y = 3

 

B) x = 0; y = 5

 

C) x = 5; y = 0

 

D) x = 6; y = 0

 

E) x = 4; y = 1

 

 

 

63) A shadow price reflects which of the following in a maximization problem?

 

A) the marginal gain in the objective that would be realized by adding 1 unit of a resource

 

B) the marginal gain in the objective that would be realized by subtracting 1 unit of a resource

 

C) the marginal cost of adding additional resources

 

D) the marginal gain of selling one more unit

 

64) Given the following linear programming problem:

 

Max Z = 15x + 20 y

 

s.t.

 

8x + 5y ≤ 40

 

4x + y ≥ 4

 

What would be the values of x and y that will maximize revenue?

 

 

 

A) x = 5; y = 0

 

B) x = 0; y = 8

 

C) x = 0; y = 1

 

D) x = 1; y = 0

 

E) x = 3; y = 4

 

 

 

65) Given the following linear program that maximizes revenue:

 

Max Z = 15x + 20 y

 

s.t.

 

8x + 5y ≤ 40

 

4x + y ≥ 4

 

What is the maximum revenue at the optimal solution?

 

 

 

A) $120

 

B) $160

 

C) $185

 

D) $200

 

 

 

Given the following linear programming problem that minimizes cost.

 

Min Z = 2x + 8y

 

Subject to (1) 8x + 4y ≥ 64

 

(2) 2x + 4y ≥ 32

 

(3) y ≥ 2

 

 

 

66) Determine the optimum values for x and y.

 

A) x = 2; y = 6

 

B) x = 6; y = 2

 

C) x = 12; y = 2

 

D) x = 2; y = 2

 

E) x = 6; y = 5

 

 

 

67) At the optimal solution the minimum cost is:

 

A) $30

 

B) $40

 

C) $50

 

D) $52

 

E) $53.33

 

 

 

68) What is the sensitivity range for the cost of x?

 

A) 0 to 2

 

B) 4 to 6

 

C) 2 to 4

 

D) 0 to 4

 

 

 

69) What is the sensitivity range for the third constraint, y ≥ 2?

 

A) 0 to 4

 

B) 2 to 5.33

 

C) 0 to 5.33

 

D) 4 to 6.33

 

 

 

70) For a maximization problem, the shadow price measures the __________ in the value of the optimal solution, per unit increase for a given __________.

 

A) decrease, resource

 

B) increase, parameter

 

C) improvement, resource

 

D) change, objective function coefficient

 

E) decrease, parameter

 

 

 

71) Sensitivity analysis is the analysis of the effect of __________ changes on the __________.

 

A) price, company

 

B) cost, production

 

C) parameter, optimal solution

 

D) none of the above

 

72) For a linear programming problem, assume that a given resource has not been fully used. We can conclude that the shadow price associated with that constraint:

 

A) will have a positive value

 

B) will have a negative value

 

C) will have a value of zero

 

D) could have a positive, negative or a value of zero. (no sign restrictions)

 

 

 

73) For a resource constraint, either its slack value must be __________ or its shadow price must be __________.

 

A) negative, negative

 

B) negative, zero

 

C) zero, zero

 

D) zero, negative

 

 

 

Aunt Anastasia operates a small business: she produces seasonal ceramic objects to sell to tourists. For the spring, she is planning to make baskets, eggs, and rabbits. Based on your discussion with your aunt you construct the following table.

 

 

 

 

 

 

 

Your aunt also has committed to make 25 rabbits for a charitable organization. Based on the information in the table, you formulate the problem as a linear program.

 

B = number of baskets produced

 

E = number of eggs produced

 

R = number of rabbits produced

 

MAX 2.5B + 1.5E + 2R

 

s.t.

 

0.5 B + 0.333E + 0.25R ≤ 20

 

B + E + R ≤ 50

 

0.25B + 0.333E + 0.75R ≤ 80

 

R ≥ 25

 

The Excel solution and the answer and sensitivity report are shown below.

 

 

 

The Answer Report:

 

 

 

 

 

The Sensitivity Report:

 

 

 

 

 

74) Which additional resources would you recommend that Aunt Anastasia try to obtain?

 

A) mix/mold

 

B) kiln

 

C) paint and seal

 

D) demand

 

E) Cannot tell from the information provided

 

75) Suppose the charitable organization contacted Aunt Anastasia and told her that they had overestimated the amount of rabbits they needed. Instead of 25 rabbits, they need 35. How would this affect Aunt Anastasia’s profits?

 

A) Profits would increase by $5.

 

B) Profits would decrease by $5

 

C) Profits would increase by $2.50

 

D) Profits would decrease by $2.50

 

E) Cannot tell from the information provided.

 

 

 

76) Aunt Anastasia feels that her prices are too low, particularly for her eggs. How much would her profit have to increase on the eggs before it is profitable for her to make and sell eggs?

 

A) $0.50

 

B) $1.00

 

C) $1.50

 

D) $2.50

 

E) None of the above

 

 

 

77) Aunt Anastasia’s available hours for paint and seal have fallen from 80 hours to 60 hours because of other commitments. How will this affect her profits?

 

A) Profits will decrease by $30.

 

B) Profits will increase by $30.

 

C) Profits will decrease by $20.

 

D) Profits will increase by $20.

 

E) Profits will not change.

 

 

 

78) Aunt Anastasia can obtain an additional 10 hours of kiln capacity free of charge from a friend. If she did this, how would her profits be affected?

 

A) Profit would increase by $25.

 

B) Profits would decrease by $25.

 

C) Profits would increase by $6.25.

 

D) Profits would decrease by $6.25

 

E) Cannot tell from the information provided.

 

79) Aunt Anastasia is planning for next spring, and she is considering making only 2 products. Based on the results from the linear program, which two products would you recommend that she make?

 

A) baskets and eggs

 

B) baskets and rabbits

 

C) eggs and rabbits

 

D) She should continue to make all 3.

 

E) Cannot tell from the information provided.

 

 

 

Billy’s Blues sells 3 types of T-shirts: Astro, Bling, and Curious. Manufacturing Astros requires 2 minutes of machine time, 20 minutes of labor, and costs $10. Brand Bling requires 2..5 minutes of machine time, 30 minutes of labor, and costs $14 to produce. Brand Curious requires 3 minutes of machine time, 45 minutes of labor, and costs $18 to produce. There are 300 machining hours available per week, 3,750 labor hours, and he has a budget of $3,000. Brand Astro sells for $15, Brand Bling for $18, and Brand Curious for $25.

 

 

 

The LP formulation that maximizes week profit shown below.

 

 

 

MAX 15A +18B + 25 C

 

s.t.

 

2A + 2.5B + 3C ≤ 300

 

20A + 30B + 45C ≤ 3,750

 

10A + 14B + 18C ≤ 3,000

 

 

 

The solution from QM for Windows is show below.

 

 

 

 

 

 

 

 

 

80) If Billy could acquire more of any resource, which would it be?

 

A) machining time

 

B) labor time

 

C) money

 

D) buyers

 

 

 

81) If one of Billy’s machines breaks down, it usually results in about 6 hours of downtime. When this happens, Billy’s profits are reduced by

 

A) $15

 

B) 18

 

C) $25

 

D) $35

 

 

 

82) Billy’s accountant made an error, and the budget has been reduced from $3000 to $2500. Billy’s profit will go down by

 

A) $0

 

B) $625

 

C) $1350

 

D) $1650

 

 

 

83) Billy has decided that he can raise the price on the Curious t-shirt by 10% without losing sales. If he raises the price, his profits will

 

A) increase by 10%

 

B) decrease by 10%

 

C) increase by $2.50

 

D) increase by $125

 

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

PC Build Manual assignment Help

PC Build Manual assignment Help

Personal Computer Build Manual Project

This is one project, but is broken up into three parts. Using the following scenario and manual guidelines, create a manual that shows an entry level technician how to build a computer from scratch. The end result is a basic manual with table of contents, pictures and logical step instructions. I have already chosen the specs for the PC.

Scenario:

You have been recently hired as a computer technician at a local computer sales and repair shop. The shop offers a variety of services that range from installing new applications and fixing computers to recovering lost or deleted data. One service provided by this company is the opportunity for customers to have a computer built to their personal specifications. As a technician, it is your responsibility to capture the customer’s unique requests.

As part of the training process, your manager would like to evaluate how effective you are at this task, so he asked that you complete a two-part project:

Build a computer using a list of unique specifications and troubleshoot any problems that may come up during the building process.

Create a three part user manual that documents how to build the computer.

When you are finished, you will submit each part of the user manual for review. It will ultimately be used to train new computer technicians at the shop.

After speaking with your manager about the manual, you realize that you will be very busy over the next few weeks. In addition to working on the manual, you will also be in the process of preparing for the CompTIA A+ certification. One of the conditions of your employment at this company is that you obtain this certification within 60 days of being hired. You will have to manage your time wisely, because you will have to take a practice certification test just as you are completing the final part of your manual.

Part I:

Proposal: Develop a short proposal (see attached example) to design or procure a computer system based on business needs. Selecting the appropriate parts to build and design a computer system: an appropriate power supply, CPU, and RAM. Ex: Choose a case make, model, motherboard manufacturer, capacity of RAM, and PSU sized in units of watts. I have already specified (to some extent) the specs for the PC and they are listed below.

·        motherboard with Socket 1366

·        power supply that supports the specified motherboard: ATX, 20+4 pn, PCIe

·        Processor: Intel Core i7-960, 3.20 GHz processor

·        maximum memory possible: 2 GB DDR3

·        fastest hard drive possible: SATA

·        CD-DVD drive with fastest connection to the motherboard, SATA

·        best video card available (available on the shelf and compatible with the motherboard): DVI-I, HDMI, Crossfire, PCIe video card

 

Manual Section 1: Workspace Preparation by applying IT best practices

Developing documentation or a manual for each equipment or task (include photos):

Manual Section 2: Installing Motherboard
Manual Section 3: Installing Power Supply
Manual Section 4: Installing CPU
Manual Section 5: Installing RAM

Part II

For 6,7 and 8: Selecting an appropriate hard drive, optical drive, and video card for needs. Why does it meet needs/requirements?

Section 6: Installing Hard Drive ***For sections 6,7 and 8: Selecting an appropriate hard drive, optical drive, and video card for your specific needs.
Section 7: Installing Optical Drive
Section 8: Installing Video Card 
Section 9: Connecting Monitors, Keyboard, and Mouse
Section 10: BIOS Configuration

Part III

Section 11: Installing Windows 7 ***For section 11 & 12, you need to identify what basic settings and features are required for your needs.
Section 12: Configuring Critical Windows Features

In addition to including the sections listed below, your manual should address the environment in which the computer build will take place. For example, what are the best practices when working in a carpeted room?

Do not use computer jargon. Although the manual will be used to train new technicians, it may also be used by someone with limited computer knowledge, so the manual must be easy to understand.

Include explanations on methodology. For example, why is it important to use an antistatic grounding bracelet when working with the computer? Or why is it important to install memory sticks in pairs?

Workspace Preparation (LabSim 1.0)

Installing Motherboard (LabSim 3.3)

Installing Power Supply (LabSim 3.2)

Installing CPU (LabSim 3.4 and 3.10)

Installing RAM (LabSim 3.5)

Installing Hard Drive (LabSim 5.4)

Installing Optical Drive (LabSim 5.6)

Installing Video Card (LabSim 3.8)

Connecting Monitors, Keyboard, and Mouse (LabSim 4.0)

BIOS Configuration (LabSim 3.6)

Installing Windows 7 (LabSim 10.3)

Configuring Critical Windows Features (LabSim 9.0 and 10.0)

Formatting Notes:

Use IEEE citation style

Use credible reasoning, appropriate research, and supporting evidence in communication.

No plagiarism. Will be turned in using a plagiarism checker.

The manual should not document how to complete a LabSim section; rather, it should provide detailed instructions on how to build an actual computer for a potential customer:

Bad example: “Drag the motherboard from the shelf to the motherboard plate in the system case.”

Good example: “After properly grounding yourself, pick up the motherboard and place it inside the area where the motherboard will sit in the case. Align the screw holes on the motherboard with the screw holes on the case. Use appropriate screws to mount the motherboard inside the case, making sure not to scratch the surface of the motherboard.”

 

I have also attached a step by step of the final lab simulation project, in which it details each step of the process for a PC build. This should help in creating the build manual.

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Case Study 3 assignment Help

Case Study 3 assignment Help

Case Study 3: Carlson Companies 

Read the case study titled “Carlson Companies” found at the end of Chapter 10.

Write a three to four (3-4) page paper in which you:

· Assess how the Carlson SAN approach would be implemented in today’s environment.

· Compare the pros and cons of consolidating data on a SAN central data facility versus the dispersed arrangement it replaces.

· Evaluate the issues raised from the Carlson SAN mixing equipment from a number of vendors and determine the management options for dealing with this type of situation.

· Justify the reduction of administration and management of storage networking through Carlson’s IP SAN.

· Assess how cloud computing could be used by Carlson instead of a SAN. Create a diagram using Visio or its open source alternative software to illustrate the use of cloud computing. Note: The graphically depicted solution is not included in the required page length.

· Use at least three (3) quality resources in this assignment. Note: Wikipedia and similar Websites do not qualify as quality resources.

Your assignment must follow these formatting requirements:

· Be typed, double spaced, using Times New Roman font (size 12), with one-inch margins on all sides; references must follow APA or school-specific format.

The specific course learning outcomes associated with this assignment are:

· Compare and contrast among local area and wide area network technologies and architectures.

· Use technology and information resources to research issues in communication networks.

· Write clearly and concisely about communication networks using proper writing mechanics and technical style conventions.

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Implement American Option And European Option In C++ assignment Help

Implement American Option And European Option In C++ assignment Help

P4/CMakeLists.txt

### CMake Version ############################################################# cmake_minimum_required(VERSION 3.10) ### Project Configuration ##################################################### get_filename_component(PROJECT_DIR_NAME ${CMAKE_CURRENT_LIST_DIR} NAME) string(REPLACE ” ” “_” PROJECT_DIR_NAME ${PROJECT_DIR_NAME}) project(${PROJECT_DIR_NAME} VERSION 1.0.0.0 # <major>.<minor>.<patch>.<tweak> LANGUAGES CXX) ### List of Files ############################################################# set(INCLUDE ${PROJECT_SOURCE_DIR}/include/std_lib_facilities.h ${PROJECT_SOURCE_DIR}/include/EuropeanOption.h ) set(INPUT_FILES ) set(OUTPUT_FILES ) set(SRC ${PROJECT_SOURCE_DIR}/src/EuropeanOption.cpp ${PROJECT_SOURCE_DIR}/src/main.cpp ) set(OTHER_FILES ) ### Compiler Flags ############################################################ # UNIX only if(NOT WIN32) # C++14 set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) # Common Flags set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -Wall -fexceptions -pedantic-errors”) # Debug Flags set(CMAKE_CXX_FLAGS_DEBUG “-g -DDEBUG”) # Release Flags # -O2 instead of -O3 # -ftlo stands for Link Time Optimization (LTO) set(CMAKE_CXX_FLAGS_RELEASE “-O2 -DNDEBUG -flto”) # GCC (Ubuntu 18.04 LTS Bionic Beaver) if(UNIX AND NOT APPLE) set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS}”) endif(UNIX AND NOT APPLE) # Clang (macOS Mojave 10.14) # -Wno-tautological-compare is required when using std_lib_facilities on macOS if(APPLE) set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -Wno-tautological-compare”) endif(APPLE) endif(NOT WIN32) ### Build Types ############################################################### # UNIX only if(NOT WIN32) # if no build type is set, the default is Debug if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Debug) endif(NOT CMAKE_BUILD_TYPE) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/${CMAKE_BUILD_TYPE}) endif(NOT WIN32) ### Build Configuration ####################################################### add_executable(${PROJECT_NAME} ${INCLUDE} ${INPUT_FILES} ${OUTPUT_FILES} ${SRC} ${OTHER_FILES}) target_include_directories(${PROJECT_NAME} PRIVATE ${PROJECT_SOURCE_DIR}/include) ###############################################################################

__MACOSX/P4/._CMakeLists.txt

P4/.DS_Store

__MACOSX/P4/._.DS_Store

P4/include/std_lib_facilities.h

/* std_lib_facilities.h */ /* Simple “Programming: Principles and Practice using C++ (second edition)” course header to be used for the first few weeks. It provides the most common standard headers (in the global namespace) and minimal exception/error support. Students: please don’t try to understand the details of headers just yet. All will be explained. This header is primarily used so that you don’t have to understand every concept all at once. By Chapter 10, you don’t need this file and after Chapter 21, you’ll understand it Revised April 25, 2010: simple_error() added Revised November 25 2013: remove support for pre-C++11 compilers, use C++11: <chrono> Revised November 28 2013: add a few container algorithms Revised June 8 2014: added #ifndef to workaround Microsoft C++11 weakness */ #pragma once #include <algorithm> #include <array> #include <cmath> #include <cstdlib> #include <forward_list> #include <fstream> #include <iomanip> #include <iostream> #include <list> #include <random> #include <regex> #include <sstream> #include <stdexcept> #include <string> #include <unordered_map> #include <vector> //—————————————————————————— //—————————————————————————— typedef long Unicode; //—————————————————————————— using namespace std; template <class T> string to_string(const T& t) { ostringstream os; os << t; return os.str(); } struct Range_error : out_of_range { // enhanced vector range error reporting int index; Range_error(int i) : out_of_range(“Range error: ” + to_string(i)) , index(i) { } }; // trivially range-checked vector (no iterator checking): template <class T> struct Vector : public std::vector<T> { using size_type = typename std::vector<T>::size_type; #ifdef _MSC_VER // microsoft doesn’t yet support C++11 inheriting constructors Vector() {} explicit Vector(size_type n) : std::vector<T>(n) { } Vector(size_type n, const T& v) : std::vector<T>(n, v) { } template <class I> Vector(I first, I last) : std::vector<T>(first, last) { } Vector(initializer_list<T> list) : std::vector<T>(list) { } #else using std::vector<T>::vector; // inheriting constructor #endif T& operator[](unsigned int i) // rather than return at(i); { if (i < 0 || this->size() <= i) throw Range_error(i); return std::vector<T>::operator[](i); } const T& operator[](unsigned int i) const { if (i < 0 || this->size() <= i) throw Range_error(i); return std::vector<T>::operator[](i); } }; // disgusting macro hack to get a range checked vector: #define vector Vector // trivially range-checked string (no iterator checking): struct String : std::string { using size_type = std::string::size_type; // using string::string; char& operator[](unsigned int i) // rather than return at(i); { if (i < 0 || size() <= i) throw Range_error(i); return std::string::operator[](i); } const char& operator[](unsigned int i) const { if (i < 0 || size() <= i) throw Range_error(i); return std::string::operator[](i); } }; namespace std { template <> struct hash<String> { size_t operator()(const String& s) const { return hash<std::string>()(s); } }; } // of namespace std struct Exit : runtime_error { Exit() : runtime_error(“Exit”) { } }; // error() simply disguises throws: inline void error(const string& s) { throw runtime_error(s); } inline void error(const string& s, const string& s2) { error(s + s2); } inline void error(const string& s, int i) { ostringstream os; os << s << “: ” << i; error(os.str()); } template <class T> char* as_bytes(T& i) // needed for binary I/O { void* addr = &i; // get the address of the first byte // of memory used to store the object return static_cast<char*>(addr); // treat that memory as bytes } // added by https://thiagowinkler.github.io inline void cin_clear() { if (cin.fail()) { cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), ‘\n’); } } inline void keep_window_open() { cin.clear(); cout << “Please enter a character to exit\n”; char ch; cin >> ch; return; } inline void keep_window_open(string s) { if (s == “”) return; cin.clear(); cin.ignore(120, ‘\n’); for (;;) { cout << “Please enter ” << s << ” to exit\n”; string ss; while (cin >> ss && ss != s) cout << “Please enter ” << s << ” to exit\n”; return; } } // error function to be used (only) until error() is introduced in Chapter 5: inline void simple_error(string s) // write “error: s and exit program { cerr << “error: ” << s << ‘\n’; keep_window_open(); // for some Windows environments exit(1); } // make std::min() and std::max() accessible on systems with antisocial macros: #undef min #undef max // run-time checked narrowing cast (type conversion). See ???. template <class R, class A> R narrow_cast(const A& a) { R r = R(a); if (A(r) != a) error(string(“info loss”)); return r; } // random number generators. See 24.7. inline int randint(int min, int max) { static default_random_engine ran; return uniform_int_distribution<>{ min, max }(ran); } inline int randint(int max) { return randint(0, max); } //inline double sqrt(int x) { return sqrt(double(x)); } // to match C++0x // container algorithms. See 21.9. template <typename C> using Value_type = typename C::value_type; template <typename C> using Iterator = typename C::iterator; template <typename C> // requires Container<C>() void sort(C& c) { std::sort(c.begin(), c.end()); } template <typename C, typename Pred> // requires Container<C>() && Binary_Predicate<Value_type<C>>() void sort(C& c, Pred p) { std::sort(c.begin(), c.end(), p); } template <typename C, typename Val> // requires Container<C>() && Equality_comparable<C,Val>() Iterator<C> find(C& c, Val v) { return std::find(c.begin(), c.end(), v); } template <typename C, typename Pred> // requires Container<C>() && Predicate<Pred,Value_type<C>>() Iterator<C> find_if(C& c, Pred p) { return std::find_if(c.begin(), c.end(), p); }

__MACOSX/P4/include/._std_lib_facilities.h

P4/include/EuropeanOption.h

#pragma once #include “std_lib_facilities.h” class EuropeanOption { public: // Regular constructor EuropeanOption(string type, double spotPrice, double strikePrice, double interestRate, double volatility, double timeToMaturity); double getPrice(); private: string m_type; double m_spotPrice; double m_strikePrice; double m_interestRate; double m_volatility; double m_timeToMaturity; // Normal CDF double N(double value); };

__MACOSX/P4/include/._EuropeanOption.h

__MACOSX/P4/._include

P4/build/.DS_Store

__MACOSX/P4/build/._.DS_Store

P4/build/compile_commands.json

[ { “directory”: “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build”, “command”: “/usr/bin/clang++ -I/Users/zewenru/Desktop/2018Fall_A1Solution/P4/include -Wall -fexceptions -pedantic-errors -Wno-tautological-compare -g -DDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++14 -o CMakeFiles/P4.dir/src/EuropeanOption.cpp.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp”, “file”: “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp” }, { “directory”: “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build”, “command”: “/usr/bin/clang++ -I/Users/zewenru/Desktop/2018Fall_A1Solution/P4/include -Wall -fexceptions -pedantic-errors -Wno-tautological-compare -g -DDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++14 -o CMakeFiles/P4.dir/src/main.cpp.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp”, “file”: “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp” } ]

P4/build/CMakeFiles/cmake.check_cache

# This file is generated by cmake for dependency checking of the CMakeCache.txt file

P4/build/CMakeFiles/CMakeOutput.log

The system is: Darwin – 18.2.0 – x86_64 Compiling the CXX compiler identification source file “CMakeCXXCompilerId.cpp” succeeded. Compiler: /usr/bin/clang++ Build flags: Id flags: The output was: 0 Compilation of the CXX compiler identification source “CMakeCXXCompilerId.cpp” produced “a.out” The CXX compiler identification is AppleClang, found in “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/3.12.1/CompilerIdCXX/a.out” Determining if the CXX compiler works passed with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_73290/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_73290.dir/build.make CMakeFiles/cmTC_73290.dir/build Building CXX object CMakeFiles/cmTC_73290.dir/testCXXCompiler.cxx.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_73290.dir/testCXXCompiler.cxx.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp/testCXXCompiler.cxx Linking CXX executable cmTC_73290 /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_73290.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_73290.dir/testCXXCompiler.cxx.o -o cmTC_73290 Detecting CXX compiler ABI info compiled with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_32992/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_32992.dir/build.make CMakeFiles/cmTC_32992.dir/build Building CXX object CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/Cellar/cmake/3.12.1/share/cmake/Modules/CMakeCXXCompilerABI.cpp Linking CXX executable cmTC_32992 /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_32992.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_32992 Apple LLVM version 10.0.0 (clang-1000.10.44.4) Target: x86_64-apple-darwin18.2.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin “/Library/Developer/CommandLineTools/usr/bin/ld” -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o cmTC_32992 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/lib/darwin/libclang_rt.osx.a @(#)PROGRAM:ld PROJECT:ld64-409.12 BUILD 17:47:51 Sep 25 2018 configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em Library search paths: /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib Framework search paths: /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/ Parsed CXX implicit link information from above output: link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] ignore line: [Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp] ignore line: [] ignore line: [Run Build Command:”/usr/bin/make” “cmTC_32992/fast”] ignore line: [/Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_32992.dir/build.make CMakeFiles/cmTC_32992.dir/build] ignore line: [Building CXX object CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o] ignore line: [/usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/Cellar/cmake/3.12.1/share/cmake/Modules/CMakeCXXCompilerABI.cpp] ignore line: [Linking CXX executable cmTC_32992] ignore line: [/usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_32992.dir/link.txt –verbose=1] ignore line: [/usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names -v -Wl,-v CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_32992 ] ignore line: [Apple LLVM version 10.0.0 (clang-1000.10.44.4)] ignore line: [Target: x86_64-apple-darwin18.2.0] ignore line: [Thread model: posix] ignore line: [InstalledDir: /Library/Developer/CommandLineTools/usr/bin] link line: [ “/Library/Developer/CommandLineTools/usr/bin/ld” -demangle -lto_library /Library/Developer/CommandLineTools/usr/lib/libLTO.dylib -dynamic -arch x86_64 -macosx_version_min 10.14.0 -syslibroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -o cmTC_32992 -search_paths_first -headerpad_max_install_names -v CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o -lc++ -lSystem /Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/lib/darwin/libclang_rt.osx.a] arg [/Library/Developer/CommandLineTools/usr/bin/ld] ==> ignore arg [-demangle] ==> ignore arg [-lto_library] ==> ignore, skip following value arg [/Library/Developer/CommandLineTools/usr/lib/libLTO.dylib] ==> skip value of -lto_library arg [-dynamic] ==> ignore arg [-arch] ==> ignore arg [x86_64] ==> ignore arg [-macosx_version_min] ==> ignore arg [10.14.0] ==> ignore arg [-syslibroot] ==> ignore arg [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk] ==> ignore arg [-o] ==> ignore arg [cmTC_32992] ==> ignore arg [-search_paths_first] ==> ignore arg [-headerpad_max_install_names] ==> ignore arg [-v] ==> ignore arg [CMakeFiles/cmTC_32992.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore arg [-lc++] ==> lib [c++] arg [-lSystem] ==> lib [System] arg [/Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/lib/darwin/libclang_rt.osx.a] ==> lib [/Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/lib/darwin/libclang_rt.osx.a] Library search paths: [;/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib] Framework search paths: [;/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/] remove lib [System] remove lib [/Library/Developer/CommandLineTools/usr/lib/clang/10.0.0/lib/darwin/libclang_rt.osx.a] collapse library dir [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib] collapse framework dir [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/] ==> [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks] implicit libs: [c++] implicit dirs: [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/usr/lib] implicit fwks: [/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks] Detecting CXX [-std=c++1z] compiler features compiled with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_a520f/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_a520f.dir/build.make CMakeFiles/cmTC_a520f.dir/build Building CXX object CMakeFiles/cmTC_a520f.dir/feature_tests.cxx.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++1z -o CMakeFiles/cmTC_a520f.dir/feature_tests.cxx.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/feature_tests.cxx Linking CXX executable cmTC_a520f /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a520f.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_a520f.dir/feature_tests.cxx.o -o cmTC_a520f Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers Feature record: CXX_FEATURE:1cxx_alias_templates Feature record: CXX_FEATURE:1cxx_alignas Feature record: CXX_FEATURE:1cxx_alignof Feature record: CXX_FEATURE:1cxx_attributes Feature record: CXX_FEATURE:1cxx_attribute_deprecated Feature record: CXX_FEATURE:1cxx_auto_type Feature record: CXX_FEATURE:1cxx_binary_literals Feature record: CXX_FEATURE:1cxx_constexpr Feature record: CXX_FEATURE:1cxx_contextual_conversions Feature record: CXX_FEATURE:1cxx_decltype Feature record: CXX_FEATURE:1cxx_decltype_auto Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types Feature record: CXX_FEATURE:1cxx_default_function_template_args Feature record: CXX_FEATURE:1cxx_defaulted_functions Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers Feature record: CXX_FEATURE:1cxx_delegating_constructors Feature record: CXX_FEATURE:1cxx_deleted_functions Feature record: CXX_FEATURE:1cxx_digit_separators Feature record: CXX_FEATURE:1cxx_enum_forward_declarations Feature record: CXX_FEATURE:1cxx_explicit_conversions Feature record: CXX_FEATURE:1cxx_extended_friend_declarations Feature record: CXX_FEATURE:1cxx_extern_templates Feature record: CXX_FEATURE:1cxx_final Feature record: CXX_FEATURE:1cxx_func_identifier Feature record: CXX_FEATURE:1cxx_generalized_initializers Feature record: CXX_FEATURE:1cxx_generic_lambdas Feature record: CXX_FEATURE:1cxx_inheriting_constructors Feature record: CXX_FEATURE:1cxx_inline_namespaces Feature record: CXX_FEATURE:1cxx_lambdas Feature record: CXX_FEATURE:1cxx_lambda_init_captures Feature record: CXX_FEATURE:1cxx_local_type_template_args Feature record: CXX_FEATURE:1cxx_long_long_type Feature record: CXX_FEATURE:1cxx_noexcept Feature record: CXX_FEATURE:1cxx_nonstatic_member_init Feature record: CXX_FEATURE:1cxx_nullptr Feature record: CXX_FEATURE:1cxx_override Feature record: CXX_FEATURE:1cxx_range_for Feature record: CXX_FEATURE:1cxx_raw_string_literals Feature record: CXX_FEATURE:1cxx_reference_qualified_functions Feature record: CXX_FEATURE:1cxx_relaxed_constexpr Feature record: CXX_FEATURE:1cxx_return_type_deduction Feature record: CXX_FEATURE:1cxx_right_angle_brackets Feature record: CXX_FEATURE:1cxx_rvalue_references Feature record: CXX_FEATURE:1cxx_sizeof_member Feature record: CXX_FEATURE:1cxx_static_assert Feature record: CXX_FEATURE:1cxx_strong_enums Feature record: CXX_FEATURE:1cxx_template_template_parameters Feature record: CXX_FEATURE:1cxx_thread_local Feature record: CXX_FEATURE:1cxx_trailing_return_types Feature record: CXX_FEATURE:1cxx_unicode_literals Feature record: CXX_FEATURE:1cxx_uniform_initialization Feature record: CXX_FEATURE:1cxx_unrestricted_unions Feature record: CXX_FEATURE:1cxx_user_literals Feature record: CXX_FEATURE:1cxx_variable_templates Feature record: CXX_FEATURE:1cxx_variadic_macros Feature record: CXX_FEATURE:1cxx_variadic_templates Detecting CXX [-std=c++14] compiler features compiled with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_8fc55/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_8fc55.dir/build.make CMakeFiles/cmTC_8fc55.dir/build Building CXX object CMakeFiles/cmTC_8fc55.dir/feature_tests.cxx.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++14 -o CMakeFiles/cmTC_8fc55.dir/feature_tests.cxx.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/feature_tests.cxx Linking CXX executable cmTC_8fc55 /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8fc55.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_8fc55.dir/feature_tests.cxx.o -o cmTC_8fc55 Feature record: CXX_FEATURE:1cxx_aggregate_default_initializers Feature record: CXX_FEATURE:1cxx_alias_templates Feature record: CXX_FEATURE:1cxx_alignas Feature record: CXX_FEATURE:1cxx_alignof Feature record: CXX_FEATURE:1cxx_attributes Feature record: CXX_FEATURE:1cxx_attribute_deprecated Feature record: CXX_FEATURE:1cxx_auto_type Feature record: CXX_FEATURE:1cxx_binary_literals Feature record: CXX_FEATURE:1cxx_constexpr Feature record: CXX_FEATURE:1cxx_contextual_conversions Feature record: CXX_FEATURE:1cxx_decltype Feature record: CXX_FEATURE:1cxx_decltype_auto Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types Feature record: CXX_FEATURE:1cxx_default_function_template_args Feature record: CXX_FEATURE:1cxx_defaulted_functions Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers Feature record: CXX_FEATURE:1cxx_delegating_constructors Feature record: CXX_FEATURE:1cxx_deleted_functions Feature record: CXX_FEATURE:1cxx_digit_separators Feature record: CXX_FEATURE:1cxx_enum_forward_declarations Feature record: CXX_FEATURE:1cxx_explicit_conversions Feature record: CXX_FEATURE:1cxx_extended_friend_declarations Feature record: CXX_FEATURE:1cxx_extern_templates Feature record: CXX_FEATURE:1cxx_final Feature record: CXX_FEATURE:1cxx_func_identifier Feature record: CXX_FEATURE:1cxx_generalized_initializers Feature record: CXX_FEATURE:1cxx_generic_lambdas Feature record: CXX_FEATURE:1cxx_inheriting_constructors Feature record: CXX_FEATURE:1cxx_inline_namespaces Feature record: CXX_FEATURE:1cxx_lambdas Feature record: CXX_FEATURE:1cxx_lambda_init_captures Feature record: CXX_FEATURE:1cxx_local_type_template_args Feature record: CXX_FEATURE:1cxx_long_long_type Feature record: CXX_FEATURE:1cxx_noexcept Feature record: CXX_FEATURE:1cxx_nonstatic_member_init Feature record: CXX_FEATURE:1cxx_nullptr Feature record: CXX_FEATURE:1cxx_override Feature record: CXX_FEATURE:1cxx_range_for Feature record: CXX_FEATURE:1cxx_raw_string_literals Feature record: CXX_FEATURE:1cxx_reference_qualified_functions Feature record: CXX_FEATURE:1cxx_relaxed_constexpr Feature record: CXX_FEATURE:1cxx_return_type_deduction Feature record: CXX_FEATURE:1cxx_right_angle_brackets Feature record: CXX_FEATURE:1cxx_rvalue_references Feature record: CXX_FEATURE:1cxx_sizeof_member Feature record: CXX_FEATURE:1cxx_static_assert Feature record: CXX_FEATURE:1cxx_strong_enums Feature record: CXX_FEATURE:1cxx_template_template_parameters Feature record: CXX_FEATURE:1cxx_thread_local Feature record: CXX_FEATURE:1cxx_trailing_return_types Feature record: CXX_FEATURE:1cxx_unicode_literals Feature record: CXX_FEATURE:1cxx_uniform_initialization Feature record: CXX_FEATURE:1cxx_unrestricted_unions Feature record: CXX_FEATURE:1cxx_user_literals Feature record: CXX_FEATURE:1cxx_variable_templates Feature record: CXX_FEATURE:1cxx_variadic_macros Feature record: CXX_FEATURE:1cxx_variadic_templates Detecting CXX [-std=c++11] compiler features compiled with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_e42db/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_e42db.dir/build.make CMakeFiles/cmTC_e42db.dir/build Building CXX object CMakeFiles/cmTC_e42db.dir/feature_tests.cxx.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++11 -o CMakeFiles/cmTC_e42db.dir/feature_tests.cxx.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/feature_tests.cxx Linking CXX executable cmTC_e42db /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e42db.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_e42db.dir/feature_tests.cxx.o -o cmTC_e42db Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers Feature record: CXX_FEATURE:1cxx_alias_templates Feature record: CXX_FEATURE:1cxx_alignas Feature record: CXX_FEATURE:1cxx_alignof Feature record: CXX_FEATURE:1cxx_attributes Feature record: CXX_FEATURE:0cxx_attribute_deprecated Feature record: CXX_FEATURE:1cxx_auto_type Feature record: CXX_FEATURE:0cxx_binary_literals Feature record: CXX_FEATURE:1cxx_constexpr Feature record: CXX_FEATURE:0cxx_contextual_conversions Feature record: CXX_FEATURE:1cxx_decltype Feature record: CXX_FEATURE:0cxx_decltype_auto Feature record: CXX_FEATURE:1cxx_decltype_incomplete_return_types Feature record: CXX_FEATURE:1cxx_default_function_template_args Feature record: CXX_FEATURE:1cxx_defaulted_functions Feature record: CXX_FEATURE:1cxx_defaulted_move_initializers Feature record: CXX_FEATURE:1cxx_delegating_constructors Feature record: CXX_FEATURE:1cxx_deleted_functions Feature record: CXX_FEATURE:0cxx_digit_separators Feature record: CXX_FEATURE:1cxx_enum_forward_declarations Feature record: CXX_FEATURE:1cxx_explicit_conversions Feature record: CXX_FEATURE:1cxx_extended_friend_declarations Feature record: CXX_FEATURE:1cxx_extern_templates Feature record: CXX_FEATURE:1cxx_final Feature record: CXX_FEATURE:1cxx_func_identifier Feature record: CXX_FEATURE:1cxx_generalized_initializers Feature record: CXX_FEATURE:0cxx_generic_lambdas Feature record: CXX_FEATURE:1cxx_inheriting_constructors Feature record: CXX_FEATURE:1cxx_inline_namespaces Feature record: CXX_FEATURE:1cxx_lambdas Feature record: CXX_FEATURE:0cxx_lambda_init_captures Feature record: CXX_FEATURE:1cxx_local_type_template_args Feature record: CXX_FEATURE:1cxx_long_long_type Feature record: CXX_FEATURE:1cxx_noexcept Feature record: CXX_FEATURE:1cxx_nonstatic_member_init Feature record: CXX_FEATURE:1cxx_nullptr Feature record: CXX_FEATURE:1cxx_override Feature record: CXX_FEATURE:1cxx_range_for Feature record: CXX_FEATURE:1cxx_raw_string_literals Feature record: CXX_FEATURE:1cxx_reference_qualified_functions Feature record: CXX_FEATURE:0cxx_relaxed_constexpr Feature record: CXX_FEATURE:0cxx_return_type_deduction Feature record: CXX_FEATURE:1cxx_right_angle_brackets Feature record: CXX_FEATURE:1cxx_rvalue_references Feature record: CXX_FEATURE:1cxx_sizeof_member Feature record: CXX_FEATURE:1cxx_static_assert Feature record: CXX_FEATURE:1cxx_strong_enums Feature record: CXX_FEATURE:1cxx_template_template_parameters Feature record: CXX_FEATURE:1cxx_thread_local Feature record: CXX_FEATURE:1cxx_trailing_return_types Feature record: CXX_FEATURE:1cxx_unicode_literals Feature record: CXX_FEATURE:1cxx_uniform_initialization Feature record: CXX_FEATURE:1cxx_unrestricted_unions Feature record: CXX_FEATURE:1cxx_user_literals Feature record: CXX_FEATURE:0cxx_variable_templates Feature record: CXX_FEATURE:1cxx_variadic_macros Feature record: CXX_FEATURE:1cxx_variadic_templates Detecting CXX [-std=c++98] compiler features compiled with the following output: Change Dir: /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/CMakeTmp Run Build Command:”/usr/bin/make” “cmTC_22d71/fast” /Library/Developer/CommandLineTools/usr/bin/make -f CMakeFiles/cmTC_22d71.dir/build.make CMakeFiles/cmTC_22d71.dir/build Building CXX object CMakeFiles/cmTC_22d71.dir/feature_tests.cxx.o /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++98 -o CMakeFiles/cmTC_22d71.dir/feature_tests.cxx.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/feature_tests.cxx Linking CXX executable cmTC_22d71 /usr/local/Cellar/cmake/3.12.1/bin/cmake -E cmake_link_script CMakeFiles/cmTC_22d71.dir/link.txt –verbose=1 /usr/bin/clang++ -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cmTC_22d71.dir/feature_tests.cxx.o -o cmTC_22d71 Feature record: CXX_FEATURE:0cxx_aggregate_default_initializers Feature record: CXX_FEATURE:0cxx_alias_templates Feature record: CXX_FEATURE:0cxx_alignas Feature record: CXX_FEATURE:0cxx_alignof Feature record: CXX_FEATURE:0cxx_attributes Feature record: CXX_FEATURE:0cxx_attribute_deprecated Feature record: CXX_FEATURE:0cxx_auto_type Feature record: CXX_FEATURE:0cxx_binary_literals Feature record: CXX_FEATURE:0cxx_constexpr Feature record: CXX_FEATURE:0cxx_contextual_conversions Feature record: CXX_FEATURE:0cxx_decltype Feature record: CXX_FEATURE:0cxx_decltype_auto Feature record: CXX_FEATURE:0cxx_decltype_incomplete_return_types Feature record: CXX_FEATURE:0cxx_default_function_template_args Feature record: CXX_FEATURE:0cxx_defaulted_functions Feature record: CXX_FEATURE:0cxx_defaulted_move_initializers Feature record: CXX_FEATURE:0cxx_delegating_constructors Feature record: CXX_FEATURE:0cxx_deleted_functions Feature record: CXX_FEATURE:0cxx_digit_separators Feature record: CXX_FEATURE:0cxx_enum_forward_declarations Feature record: CXX_FEATURE:0cxx_explicit_conversions Feature record: CXX_FEATURE:0cxx_extended_friend_declarations Feature record: CXX_FEATURE:0cxx_extern_templates Feature record: CXX_FEATURE:0cxx_final Feature record: CXX_FEATURE:0cxx_func_identifier Feature record: CXX_FEATURE:0cxx_generalized_initializers Feature record: CXX_FEATURE:0cxx_generic_lambdas Feature record: CXX_FEATURE:0cxx_inheriting_constructors Feature record: CXX_FEATURE:0cxx_inline_namespaces Feature record: CXX_FEATURE:0cxx_lambdas Feature record: CXX_FEATURE:0cxx_lambda_init_captures Feature record: CXX_FEATURE:0cxx_local_type_template_args Feature record: CXX_FEATURE:0cxx_long_long_type Feature record: CXX_FEATURE:0cxx_noexcept Feature record: CXX_FEATURE:0cxx_nonstatic_member_init Feature record: CXX_FEATURE:0cxx_nullptr Feature record: CXX_FEATURE:0cxx_override Feature record: CXX_FEATURE:0cxx_range_for Feature record: CXX_FEATURE:0cxx_raw_string_literals Feature record: CXX_FEATURE:0cxx_reference_qualified_functions Feature record: CXX_FEATURE:0cxx_relaxed_constexpr Feature record: CXX_FEATURE:0cxx_return_type_deduction Feature record: CXX_FEATURE:0cxx_right_angle_brackets Feature record: CXX_FEATURE:0cxx_rvalue_references Feature record: CXX_FEATURE:0cxx_sizeof_member Feature record: CXX_FEATURE:0cxx_static_assert Feature record: CXX_FEATURE:0cxx_strong_enums Feature record: CXX_FEATURE:1cxx_template_template_parameters Feature record: CXX_FEATURE:0cxx_thread_local Feature record: CXX_FEATURE:0cxx_trailing_return_types Feature record: CXX_FEATURE:0cxx_unicode_literals Feature record: CXX_FEATURE:0cxx_uniform_initialization Feature record: CXX_FEATURE:0cxx_unrestricted_unions Feature record: CXX_FEATURE:0cxx_user_literals Feature record: CXX_FEATURE:0cxx_variable_templates Feature record: CXX_FEATURE:0cxx_variadic_macros Feature record: CXX_FEATURE:0cxx_variadic_templates

P4/build/CMakeFiles/P4.dir/DependInfo.cmake

# The set of languages for which implicit dependencies are needed: set(CMAKE_DEPENDS_LANGUAGES “CXX” ) # The set of files for implicit dependencies of each language: set(CMAKE_DEPENDS_CHECK_CXX “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp” “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/P4.dir/src/EuropeanOption.cpp.o” “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp” “/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/P4.dir/src/main.cpp.o” ) set(CMAKE_CXX_COMPILER_ID “AppleClang”) # The include file search paths: set(CMAKE_CXX_TARGET_INCLUDE_PATH “../include” ) # Targets to which this target links. set(CMAKE_TARGET_LINKED_INFO_FILES ) # Fortran module output directory. set(CMAKE_Fortran_TARGET_MODULE_DIR “”)

P4/build/CMakeFiles/P4.dir/depend.internal

# CMAKE generated file: DO NOT EDIT! # Generated by “Unix Makefiles” Generator, CMake Version 3.12 CMakeFiles/P4.dir/src/EuropeanOption.cpp.o ../include/EuropeanOption.h ../include/std_lib_facilities.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp CMakeFiles/P4.dir/src/main.cpp.o ../include/EuropeanOption.h ../include/std_lib_facilities.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp

P4/build/CMakeFiles/P4.dir/depend.make

# CMAKE generated file: DO NOT EDIT! # Generated by “Unix Makefiles” Generator, CMake Version 3.12 CMakeFiles/P4.dir/src/EuropeanOption.cpp.o: ../include/EuropeanOption.h CMakeFiles/P4.dir/src/EuropeanOption.cpp.o: ../include/std_lib_facilities.h CMakeFiles/P4.dir/src/EuropeanOption.cpp.o: ../src/EuropeanOption.cpp CMakeFiles/P4.dir/src/main.cpp.o: ../include/EuropeanOption.h CMakeFiles/P4.dir/src/main.cpp.o: ../include/std_lib_facilities.h CMakeFiles/P4.dir/src/main.cpp.o: ../src/main.cpp

P4/build/CMakeFiles/P4.dir/cmake_clean.cmake

file(REMOVE_RECURSE “CMakeFiles/P4.dir/src/EuropeanOption.cpp.o” “CMakeFiles/P4.dir/src/main.cpp.o” “Debug/P4.pdb” “Debug/P4” ) # Per-language clean rules from dependency scanning. foreach(lang CXX) include(CMakeFiles/P4.dir/cmake_clean_${lang}.cmake OPTIONAL) endforeach()

P4/build/CMakeFiles/P4.dir/link.txt

/usr/bin/clang++ -Wall -fexceptions -pedantic-errors -Wno-tautological-compare -g -DDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/P4.dir/src/EuropeanOption.cpp.o CMakeFiles/P4.dir/src/main.cpp.o -o Debug/P4

P4/build/CMakeFiles/P4.dir/progress.make

CMAKE_PROGRESS_1 = 1 CMAKE_PROGRESS_2 = 2 CMAKE_PROGRESS_3 = 3

P4/build/CMakeFiles/P4.dir/CXX.includecache

#IncludeRegexLine: ^[ ]*[#%][ ]*(include|import)[ ]*[<“]([^”>]+)([“>]) #IncludeRegexScan: ^.*$ #IncludeRegexComplain: ^$ #IncludeRegexTransform: ../include/EuropeanOption.h std_lib_facilities.h ../include/std_lib_facilities.h ../include/std_lib_facilities.h algorithm – array – cmath – cstdlib – forward_list – fstream – iomanip – iostream – list – random – regex – sstream – stdexcept – string – unordered_map – vector – /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp EuropeanOption.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp EuropeanOption.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.h std_lib_facilities.h /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/std_lib_facilities.h

P4/build/CMakeFiles/P4.dir/build.make

# CMAKE generated file: DO NOT EDIT! # Generated by “Unix Makefiles” Generator, CMake Version 3.12 # Delete rule output on recipe failure. .DELETE_ON_ERROR: #============================================================================= # Special targets provided by cmake. # Disable implicit rules so canonical targets will work. .SUFFIXES: # Remove some rules from gmake that .SUFFIXES does not remove. SUFFIXES = .SUFFIXES: .hpux_make_needs_suffix_list # Suppress display of executed commands. $(VERBOSE).SILENT: # A target that is always out of date. cmake_force: .PHONY : cmake_force #============================================================================= # Set environment variables for the build. # The shell in which to execute make rules. SHELL = /bin/sh # The CMake executable. CMAKE_COMMAND = /usr/local/Cellar/cmake/3.12.1/bin/cmake # The command to remove a file. RM = /usr/local/Cellar/cmake/3.12.1/bin/cmake -E remove -f # Escaping for special characters. EQUALS = = # The top-level source directory on which CMake was run. CMAKE_SOURCE_DIR = /Users/zewenru/Desktop/2018Fall_A1Solution/P4 # The top-level build directory on which CMake was run. CMAKE_BINARY_DIR = /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build # Include any dependencies generated for this target. include CMakeFiles/P4.dir/depend.make # Include the progress variables for this target. include CMakeFiles/P4.dir/progress.make # Include the compile flags for this target’s objects. include CMakeFiles/P4.dir/flags.make CMakeFiles/P4.dir/src/EuropeanOption.cpp.o: CMakeFiles/P4.dir/flags.make CMakeFiles/P4.dir/src/EuropeanOption.cpp.o: ../src/EuropeanOption.cpp @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green –progress-dir=/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles –progress-num=$(CMAKE_PROGRESS_1) “Building CXX object CMakeFiles/P4.dir/src/EuropeanOption.cpp.o” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/P4.dir/src/EuropeanOption.cpp.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp CMakeFiles/P4.dir/src/EuropeanOption.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green “Preprocessing CXX source to CMakeFiles/P4.dir/src/EuropeanOption.cpp.i” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp > CMakeFiles/P4.dir/src/EuropeanOption.cpp.i CMakeFiles/P4.dir/src/EuropeanOption.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green “Compiling CXX source to assembly CMakeFiles/P4.dir/src/EuropeanOption.cpp.s” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/EuropeanOption.cpp -o CMakeFiles/P4.dir/src/EuropeanOption.cpp.s CMakeFiles/P4.dir/src/main.cpp.o: CMakeFiles/P4.dir/flags.make CMakeFiles/P4.dir/src/main.cpp.o: ../src/main.cpp @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green –progress-dir=/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles –progress-num=$(CMAKE_PROGRESS_2) “Building CXX object CMakeFiles/P4.dir/src/main.cpp.o” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -o CMakeFiles/P4.dir/src/main.cpp.o -c /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp CMakeFiles/P4.dir/src/main.cpp.i: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green “Preprocessing CXX source to CMakeFiles/P4.dir/src/main.cpp.i” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp > CMakeFiles/P4.dir/src/main.cpp.i CMakeFiles/P4.dir/src/main.cpp.s: cmake_force @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green “Compiling CXX source to assembly CMakeFiles/P4.dir/src/main.cpp.s” /usr/bin/clang++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/zewenru/Desktop/2018Fall_A1Solution/P4/src/main.cpp -o CMakeFiles/P4.dir/src/main.cpp.s # Object files for target P4 P4_OBJECTS = \ “CMakeFiles/P4.dir/src/EuropeanOption.cpp.o” \ “CMakeFiles/P4.dir/src/main.cpp.o” # External object files for target P4 P4_EXTERNAL_OBJECTS = Debug/P4: CMakeFiles/P4.dir/src/EuropeanOption.cpp.o Debug/P4: CMakeFiles/P4.dir/src/main.cpp.o Debug/P4: CMakeFiles/P4.dir/build.make Debug/P4: CMakeFiles/P4.dir/link.txt @$(CMAKE_COMMAND) -E cmake_echo_color –switch=$(COLOR) –green –bold –progress-dir=/Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles –progress-num=$(CMAKE_PROGRESS_3) “Linking CXX executable Debug/P4” $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/P4.dir/link.txt –verbose=$(VERBOSE) # Rule to build all files generated by this target. CMakeFiles/P4.dir/build: Debug/P4 .PHONY : CMakeFiles/P4.dir/build CMakeFiles/P4.dir/clean: $(CMAKE_COMMAND) -P CMakeFiles/P4.dir/cmake_clean.cmake .PHONY : CMakeFiles/P4.dir/clean CMakeFiles/P4.dir/depend: cd /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build && $(CMAKE_COMMAND) -E cmake_depends “Unix Makefiles” /Users/zewenru/Desktop/2018Fall_A1Solution/P4 /Users/zewenru/Desktop/2018Fall_A1Solution/P4 /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build /Users/zewenru/Desktop/2018Fall_A1Solution/P4/build/CMakeFiles/P4.dir/DependInfo.cmake –color=$(COLOR) .PHONY : CMakeFiles/P4.dir/depend

P4/build/CMakeFiles/P4.dir/flags.make

# CMAKE generated file: DO NOT EDIT! # Generated by “Unix Makefiles” Generator, CMake Version 3.12 # compile CXX with /usr/bin/clang++ CXX_FLAGS = -Wall -fexceptions -pedantic-errors -Wno-tautological-compare -g -DDEBUG -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -std=c++14 CXX_DEFINES = CXX_INCLUDES = -I/Users/zewenru/Desktop/2018Fall_A1Solution/P4/include

P4/build/CMakeFiles/P4.dir/src/main.cpp.o

P4/build/CMakeFiles/P4.dir/src/EuropeanOption.cpp.o

P4/build/CMakeFiles/3.12.1/CMakeDetermineCompilerABI_CXX.bin

P4/build/CMakeFiles/3.12.1/CompilerIdCXX/a.out

P4/build/CMakeFiles/3.12.1/CompilerIdCXX/CMakeCXXCompilerId.cpp

P4/build/CMakeFiles/3.12.1/CompilerIdCXX/CMakeCXXCompilerId.cpp

/* This source file must have a .cpp extension so that all C++ compilers
recognize the extension without flags.  Borland does not know .cxx for
example.  */
#ifndef  __cplusplus
# error  "A C compiler has been selected for C++."
#endif

/* Version number components: V=Version, R=Revision, P=Patch
Version date components:   YYYY=Year, MM=Month,   DD=Day  */

#if  defined ( __COMO__ )
# define COMPILER_ID  "Comeau"
/* __COMO_VERSION__ = VRR */
# define COMPILER_VERSION_MAJOR DEC ( __COMO_VERSION__  /   100 )
# define COMPILER_VERSION_MINOR DEC ( __COMO_VERSION__  %   100 )

#elif  defined ( __INTEL_COMPILER )   ||  defined ( __ICC )
# define COMPILER_ID  "Intel"
#  if  defined ( _MSC_VER )
#  define SIMULATE_ID  "MSVC"
# endif
/* __INTEL_COMPILER = VRP */
# define COMPILER_VERSION_MAJOR DEC ( __INTEL_COMPILER / 100 )
# define COMPILER_VERSION_MINOR DEC ( __INTEL_COMPILER / 10   %   10 )
#  if  defined ( __INTEL_COMPILER_UPDATE )
#  define COMPILER_VERSION_PATCH DEC ( __INTEL_COMPILER_UPDATE )
#  else
#  define COMPILER_VERSION_PATCH DEC ( __INTEL_COMPILER    %   10 )
# endif
#  if  defined ( __INTEL_COMPILER_BUILD_DATE )
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
#  define COMPILER_VERSION_TWEAK DEC ( __INTEL_COMPILER_BUILD_DATE )
# endif
#  if  defined ( _MSC_VER )
/* _MSC_VER = VVRR */
#  define SIMULATE_VERSION_MAJOR DEC ( _MSC_VER  /   100 )
#  define SIMULATE_VERSION_MINOR DEC ( _MSC_VER  %   100 )
# endif

#elif  defined ( __PATHCC__ )
# define COMPILER_ID  "PathScale"
# define COMPILER_VERSION_MAJOR DEC ( __PATHCC__ )
# define COMPILER_VERSION_MINOR DEC ( __PATHCC_MINOR__ )
#  if  defined ( __PATHCC_PATCHLEVEL__ )
#  define COMPILER_VERSION_PATCH DEC ( __PATHCC_PATCHLEVEL__ )
# endif

#elif  defined ( __BORLANDC__ )   &&  defined ( __CODEGEARC_VERSION__ )
# define COMPILER_ID  "Embarcadero"
# define COMPILER_VERSION_MAJOR HEX ( __CODEGEARC_VERSION__ >> 24   &   0x00FF )
# define COMPILER_VERSION_MINOR HEX ( __CODEGEARC_VERSION__ >> 16   &   0x00FF )
# define COMPILER_VERSION_PATCH DEC ( __CODEGEARC_VERSION__      &   0xFFFF )

#elif  defined ( __BORLANDC__ )
# define COMPILER_ID  "Borland"
/* __BORLANDC__ = 0xVRR */
# define COMPILER_VERSION_MAJOR HEX ( __BORLANDC__ >> 8 )
# define COMPILER_VERSION_MINOR HEX ( __BORLANDC__  &   0xFF )

#elif  defined ( __WATCOMC__ )   &&  __WATCOMC__  <   1200
# define COMPILER_ID  "Watcom"
/* __WATCOMC__ = VVRR */
# define COMPILER_VERSION_MAJOR DEC ( __WATCOMC__  /   100 )
# define COMPILER_VERSION_MINOR DEC (( __WATCOMC__  /   10 )   %   10 )
#  if   ( __WATCOMC__  %   10 )   >   0
#  define COMPILER_VERSION_PATCH DEC ( __WATCOMC__  %   10 )
# endif

#elif  defined ( __WATCOMC__ )
# define COMPILER_ID  "OpenWatcom"
/* __WATCOMC__ = VVRP + 1100 */
# define COMPILER_VERSION_MAJOR DEC (( __WATCOMC__  -   1100 )   /   100 )
# define COMPILER_VERSION_MINOR DEC (( __WATCOMC__  /   10 )   %   10 )
#  if   ( __WATCOMC__  %   10 )   >   0
#  define COMPILER_VERSION_PATCH DEC ( __WATCOMC__  %   10 )
# endif

#elif  defined ( __SUNPRO_CC )
# define COMPILER_ID  "SunPro"
#  if  __SUNPRO_CC  >=   0x5100
/* __SUNPRO_CC = 0xVRRP */
#  define COMPILER_VERSION_MAJOR HEX ( __SUNPRO_CC >> 12 )
#  define COMPILER_VERSION_MINOR HEX ( __SUNPRO_CC >> 4   &   0xFF )
#  define COMPILER_VERSION_PATCH HEX ( __SUNPRO_CC     &   0xF )
#  else
/* __SUNPRO_CC = 0xVRP */
#  define COMPILER_VERSION_MAJOR HEX ( __SUNPRO_CC >> 8 )
#  define COMPILER_VERSION_MINOR HEX ( __SUNPRO_CC >> 4   &   0xF )
#  define COMPILER_VERSION_PATCH HEX ( __SUNPRO_CC     &   0xF )
# endif

#elif  defined ( __HP_aCC )
# define COMPILER_ID  "HP"
/* __HP_aCC = VVRRPP */
# define COMPILER_VERSION_MAJOR DEC ( __HP_aCC / 10000 )
# define COMPILER_VERSION_MINOR DEC ( __HP_aCC / 100   %   100 )
# define COMPILER_VERSION_PATCH DEC ( __HP_aCC      %   100 )

#elif  defined ( __DECCXX )
# define COMPILER_ID  "Compaq"
/* __DECCXX_VER = VVRRTPPPP */
# define COMPILER_VERSION_MAJOR DEC ( __DECCXX_VER / 10000000 )
# define COMPILER_VERSION_MINOR DEC ( __DECCXX_VER / 100000    %   100 )
# define COMPILER_VERSION_PATCH DEC ( __DECCXX_VER          %   10000 )

#elif  defined ( __IBMCPP__ )   &&  defined ( __COMPILER_VER__ )
# define COMPILER_ID  "zOS"
#  if  defined ( __ibmxl__ )
#  define COMPILER_VERSION_MAJOR DEC ( __ibmxl_version__ )
#  define COMPILER_VERSION_MINOR DEC ( __ibmxl_release__ )
#  define COMPILER_VERSION_PATCH DEC ( __ibmxl_modification__ )
#  define COMPILER_VERSION_TWEAK DEC ( __ibmxl_ptf_fix_level__ )
#  else
/* __IBMCPP__ = VRP */
#  define COMPILER_VERSION_MAJOR DEC ( __IBMCPP__ / 100 )
#  define COMPILER_VERSION_MINOR DEC ( __IBMCPP__ / 10   %   10 )
#  define COMPILER_VERSION_PATCH DEC ( __IBMCPP__     %   10 )
# endif

#elif  defined ( __ibmxl__ )   ||   ( defined ( __IBMCPP__ )   &&   ! defined ( __COMPILER_VER__ )   &&  __IBMCPP__  >=   800 )
# define COMPILER_ID  "XL"
#  if  defined ( __ibmxl__ )
#  define COMPILER_VERSION_MAJOR DEC ( __ibmxl_version__ )
#  define COMPILER_VERSION_MINOR DEC ( __ibmxl_release__ )
#  define COMPILER_VERSION_PATCH DEC ( __ibmxl_modification__ )
#  define COMPILER_VERSION_TWEAK DEC ( __ibmxl_ptf_fix_level__ )
#  else
/* __IBMCPP__ = VRP */
#  define COMPILER_VERSION_MAJOR DEC ( __IBMCPP__ / 100 )
#  define COMPILER_VERSION_MINOR DEC ( __IBMCPP__ / 10   %   10 )
#  define COMPILER_VERSION_PATCH DEC ( __IBMCPP__     %   10 )
# endif

#elif  defined ( __IBMCPP__ )   &&   ! defined ( __COMPILER_VER__ )   &&  __IBMCPP__  <   800
# define COMPILER_ID  "VisualAge"
#  if  defined ( __ibmxl__ )
#  define COMPILER_VERSION_MAJOR DEC ( __ibmxl_version__ )
#  define COMPILER_VERSION_MINOR DEC ( __ibmxl_release__ )
#  define COMPILER_VERSION_PATCH DEC ( __ibmxl_modification__ )
#  define COMPILER_VERSION_TWEAK DEC ( __ibmxl_ptf_fix_level__ )
#  else
/* __IBMCPP__ = VRP */
#  define COMPILER_VERSION_MAJOR DEC ( __IBMCPP__ / 100 )
#  define COMPILER_VERSION_MINOR DEC ( __IBMCPP__ / 10   %   10 )
#  define COMPILER_VERSION_PATCH DEC ( __IBMCPP__     %   10 )
# endif

#elif  defined ( __PGI )
# define COMPILER_ID  "PGI"
# define COMPILER_VERSION_MAJOR DEC ( __PGIC__ )
# define COMPILER_VERSION_MINOR DEC ( __PGIC_MINOR__ )
#  if  defined ( __PGIC_PATCHLEVEL__ )
#  define COMPILER_VERSION_PATCH DEC ( __PGIC_PATCHLEVEL__ )
# endif

#elif  defined ( _CRAYC )
# define COMPILER_ID  "Cray"
# define COMPILER_VERSION_MAJOR DEC ( _RELEASE_MAJOR )
# define COMPILER_VERSION_MINOR DEC ( _RELEASE_MINOR )

#elif  defined ( __TI_COMPILER_VERSION__ )
# define COMPILER_ID  "TI"
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
# define COMPILER_VERSION_MAJOR DEC ( __TI_COMPILER_VERSION__ / 1000000 )
# define COMPILER_VERSION_MINOR DEC ( __TI_COMPILER_VERSION__ / 1000     %   1000 )
# define COMPILER_VERSION_PATCH DEC ( __TI_COMPILER_VERSION__         %   1000 )

#elif  defined ( __FUJITSU )   ||  defined ( __FCC_VERSION )   ||  defined ( __fcc_version )
# define COMPILER_ID  "Fujitsu"

#elif  defined ( __SCO_VERSION__ )
# define COMPILER_ID  "SCO"

#elif  defined ( __clang__ )   &&  defined ( __apple_build_version__ )
# define COMPILER_ID  "AppleClang"
#  if  defined ( _MSC_VER )
#  define SIMULATE_ID  "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC ( __clang_major__ )
# define COMPILER_VERSION_MINOR DEC ( __clang_minor__ )
# define COMPILER_VERSION_PATCH DEC ( __clang_patchlevel__ )
#  if  defined ( _MSC_VER )
/* _MSC_VER = VVRR */
#  define SIMULATE_VERSION_MAJOR DEC ( _MSC_VER  /   100 )
#  define SIMULATE_VERSION_MINOR DEC ( _MSC_VER  %   100 )
# endif
# define COMPILER_VERSION_TWEAK DEC ( __apple_build_version__ )

#elif  defined ( __clang__ )
# define COMPILER_ID  "Clang"
#  if  defined ( _MSC_VER )
#  define SIMULATE_ID  "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC ( __clang_major__ )
# define COMPILER_VERSION_MINOR DEC ( __clang_minor__ )
# define COMPILER_VERSION_PATCH DEC ( __clang_patchlevel__ )
#  if  defined ( _MSC_VER )
/* _MSC_VER = VVRR */
#  define SIMULATE_VERSION_MAJOR DEC ( _MSC_VER  /   100 )
#  define SIMULATE_VERSION_MINOR DEC ( _MSC_VER  %   100 )
# endif

#elif  defined ( __GNUC__ )   ||  defined ( __GNUG__ )
# define COMPILER_ID  "GNU"
#  if  defined ( __GNUC__ )
#  define COMPILER_VERSION_MAJOR DEC ( __GNUC__ )
#  else
#  define COMPILER_VERSION_MAJOR DEC ( __GNUG__ )
# endif
#  if  defined ( __GNUC_MINOR__ )
#  define COMPILER_VERSION_MINOR DEC ( __GNUC_MINOR__ )
# endif
#  if  defined ( __GNUC_PATCHLEVEL__ )
#  define COMPILER_VERSION_PATCH DEC ( __GNUC_PATCHLEVEL__ )
# endif

#elif  defined ( _MSC_VER )
# define COMPILER_ID  "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC ( _MSC_VER  /   100 )
# define COMPILER_VERSION_MINOR DEC ( _MSC_VER  %   100 )
#  if  defined ( _MSC_FULL_VER )
#   if  _MSC_VER  >=   1400
/* _MSC_FULL_VER = VVRRPPPPP */
#   define COMPILER_VERSION_PATCH DEC ( _MSC_FULL_VER  %   100000 )
#   else
/* _MSC_FULL_VER = VVRRPPPP */
#   define COMPILER_VERSION_PATCH DEC ( _MSC_FULL_VER  %   10000 )
#  endif
# endif
#  if  defined ( _MSC_BUILD )
#  define COMPILER_VERSION_TWEAK DEC ( _MSC_BUILD )
# endif

#elif  defined ( __VISUALDSPVERSION__ )   ||  defined ( __ADSPBLACKFIN__ )   ||  defined ( __ADSPTS__ )   ||  defined ( __ADSP21000__ )
# define COMPILER_ID  "ADSP"
#if  defined ( __VISUALDSPVERSION__ )
/* __VISUALDSPVERSION__ = 0xVVRRPP00 */
# define COMPILER_VERSION_MAJOR HEX ( __VISUALDSPVERSION__ >> 24 )
# define COMPILER_VERSION_MINOR HEX ( __VISUALDSPVERSION__ >> 16   &   0xFF )
# define COMPILER_VERSION_PATCH HEX ( __VISUALDSPVERSION__ >> 8    &   0xFF )
#endif

#elif  defined ( __IAR_SYSTEMS_ICC__ )   ||  defined ( __IAR_SYSTEMS_ICC )
# define COMPILER_ID  "IAR"
#  if  defined ( __VER__ )
#  define COMPILER_VERSION_MAJOR DEC (( __VER__ )   /   1000000 )
#  define COMPILER_VERSION_MINOR DEC ((( __VER__ )   /   1000 )   %   1000 )
#  define COMPILER_VERSION_PATCH DEC (( __VER__ )   %   1000 )
#  define COMPILER_VERSION_INTERNAL DEC ( __IAR_SYSTEMS_ICC__ )
# endif

#elif  defined ( __ARMCC_VERSION )
# define COMPILER_ID  "ARMCC"
#if  __ARMCC_VERSION  >=   1000000
/* __ARMCC_VERSION = VRRPPPP */
# define COMPILER_VERSION_MAJOR DEC ( __ARMCC_VERSION / 1000000 )
# define COMPILER_VERSION_MINOR DEC ( __ARMCC_VERSION / 10000   %   100 )
# define COMPILER_VERSION_PATCH DEC ( __ARMCC_VERSION      %   10000 )
#else
/* __ARMCC_VERSION = VRPPPP */
# define COMPILER_VERSION_MAJOR DEC ( __ARMCC_VERSION / 100000 )
# define COMPILER_VERSION_MINOR DEC ( __ARMCC_VERSION / 10000   %   10 )
# define COMPILER_VERSION_PATCH DEC ( __ARMCC_VERSION     %   10000 )
#endif

#elif  defined ( _SGI_COMPILER_VERSION )   ||  defined ( _COMPILER_VERSION )
# define COMPILER_ID  "MIPSpro"
#  if  defined ( _SGI_COMPILER_VERSION )
/* _SGI_COMPILER_VERSION = VRP */
#  define COMPILER_VERSION_MAJOR DEC ( _SGI_COMPILER_VERSION / 100 )
#  define COMPILER_VERSION_MINOR DEC ( _SGI_COMPILER_VERSION / 10   %   10 )
#  define COMPILER_VERSION_PATCH DEC ( _SGI_COMPILER_VERSION     %   10 )
#  else
/* _COMPILER_VERSION = VRP */
#  define COMPILER_VERSION_MAJOR DEC ( _COMPILER_VERSION / 100 )
#  define COMPILER_VERSION_MINOR DEC ( _COMPILER_VERSION / 10   %   10 )
#  define COMPILER_VERSION_PATCH DEC ( _COMPILER_VERSION     %   10 )
# endif

/* These compilers are either not known or too old to define an
identification macro.  Try to identify the platform and guess that
it is the native compiler.  */
#elif  defined ( __sgi )
# define COMPILER_ID  "MIPSpro"

#elif  defined ( __hpux )   ||  defined ( __hpua )
# define COMPILER_ID  "HP"

#else   /* unknown compiler */
# define COMPILER_ID  ""
#endif

/* Construct the string literal in pieces to prevent the source from
getting matched.  Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array.  */
char   const *  info_compiler  =   "INFO"   ":"   "compiler["  COMPILER_ID  "]" ;
#ifdef  SIMULATE_ID
char   const *  info_simulate  =   "INFO"   ":"   "simulate["  SIMULATE_ID  "]" ;
#endif

#ifdef  __QNXNTO__
char   const *  qnxnto  =   "INFO"   ":"   "qnxnto[]" ;
#endif

#if  defined ( __CRAYXE )   ||  defined ( __CRAYXC )
char   const   * info_cray  =   "INFO"   ":"   "compiler_wrapper[CrayPrgEnv]" ;
#endif

#define  STRINGIFY_HELPER ( X )  #X
#define  STRINGIFY ( X )  STRINGIFY_HELPER ( X )

/* Identify known platforms by name.  */
#if  defined ( __linux )   ||  defined ( __linux__ )   ||  defined ( linux )
# define PLATFORM_ID  "Linux"

#elif  defined ( __CYGWIN__ )
# define PLATFORM_ID  "Cygwin"

#elif  defined ( __MINGW32__ )
# define PLATFORM_ID  "MinGW"

#elif  defined ( __APPLE__ )
# define PLATFORM_ID  "Darwin"

#elif  defined ( _WIN32 )   ||  defined ( __WIN32__ )   ||  defined ( WIN32 )
# define PLATFORM_ID  "Windows"

#elif  defined ( __FreeBSD__ )   ||  defined ( __FreeBSD )
# define PLATFORM_ID  "FreeBSD"

#elif  defined ( __NetBSD__ )   ||  defined ( __NetBSD )
# define PLATFORM_ID  "NetBSD"

#elif  defined ( __OpenBSD__ )   ||  defined ( __OPENBSD )
# define PLATFORM_ID  "OpenBSD"

#elif  defined ( __sun )   ||  defined ( sun )
# define PLATFORM_ID  "SunOS"

#elif  defined ( _AIX )   ||  defined ( __AIX )   ||  defined ( __AIX__ )   ||  defined ( __aix )   ||  defined ( __aix__ )
# define PLATFORM_ID  "AIX"

#elif  defined ( __sgi )   ||  defined ( __sgi__ )   ||  defined ( _SGI )
# define PLATFORM_ID  "IRIX"

#elif  defined ( __hpux )   ||  defined ( __hpux__ )
# define PLATFORM_ID  "HP-UX"

#elif  defined ( __HAIKU__ )
# define PLATFORM_ID  "Haiku"

#elif  defined ( __BeOS )   ||  defined ( __BEOS__ )   ||  defined ( _BEOS )
# define PLATFORM_ID  "BeOS"

#elif  defined ( __QNX__ )   ||  defined ( __QNXNTO__ )
# define PLATFORM_ID  "QNX"

#elif  defined ( __tru64 )   ||  defined ( _tru64 )   ||  defined ( __TRU64__ )
# define PLATFORM_ID  "Tru64"

#elif  defined ( __riscos )   ||  defined ( __riscos__ )
# define PLATFORM_ID  "RISCos"

#elif  defined ( __sinix )   ||  defined ( __sinix__ )   ||  defined ( __SINIX__ )
# define PLATFORM_ID  "SINIX"

#elif  defined ( __UNIX_SV__ )
# define PLATFORM_ID  "UNIX_SV"

#elif  defined ( __bsdos__ )
# define PLATFORM_ID  "BSDOS"

#elif  defined ( _MPRAS )   ||  defined ( MPRAS )
# define PLATFORM_ID  "MP-RAS"

#elif  defined ( __osf )   ||  defined ( __osf__ )
# define PLATFORM_ID  "OSF1"

#elif  defined ( _SCO_SV )   ||  defined ( SCO_SV )   ||  defined ( sco_sv )
# define PLATFORM_ID  "SCO_SV"

#elif  defined ( __ultrix )   ||  defined ( __ultrix__ )   ||  defined ( _ULTRIX )
# define PLATFORM_ID  "ULTRIX"

#elif  defined ( __XENIX__ )   ||  defined ( _XENIX )   ||  defined ( XENIX )
# define PLATFORM_ID  "Xenix"

#elif  defined ( __WATCOMC__ )
#  if  defined ( __LINUX__ )
#  define PLATFORM_ID  "Linux"

# elif defined ( __DOS__ )
#  define PLATFORM_ID  "DOS"

# elif defined ( __OS2__ )
#  define PLATFORM_ID  "OS2"

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Disaster -Assignment

 

Graded Assignments may be found at the end of each chapter of the required textbook under the title “Real-World Exercises”. Each assignment is due between Monday to Sunday evening by 11:59 p.m. EST. of the respective week. Each student is to select one exercise (per module exercise) from the grouping as identified below. Provide documented evidence, in Moodle, of completion of the chosen exercise (i.e. provide answers to each of the stated questions). Detailed and significant scholarly answers will be allotted full point value. Incomplete, inaccurate, or inadequate answers will receive less than full credit depending on the answers provided. All submissions need to directed to the appropriate area within Moodle. Late submissions, hardcopy, or email submissions will not be accepted.350 words 2 references

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Computer Science homework help

Computer Science homework help

You will write a flowchart, and C code for a program that does the following:

1. Uses a “for” loop.

2. Asks the user for their age.

3. Prints “Happy Birthday” for every year of the user’s age, along with the year.

Here is what the output of the program looks like.

File Submission

Upload your Flowgorithm file, your .c file, and a screen shot of your code output saved in a Word document including the path name directory at the top of the screen into the dropbox for grading.

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!

Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Introduction

Gastroesophageal Reflux Disease (GORD) is a prevalent gastrointestinal ailment affecting millions worldwide. Characterized by the backward flow of stomach acid into the esophagus, GORD poses significant discomfort and potential health risks if left untreated. The lower esophageal sphincter’s weakened state allows gastric contents to regurgitate, causing symptoms like heartburn, chest pain, and regurgitation. While the exact prevalence varies across demographics, GORD is commonly associated with factors such as obesity, smoking, and certain medications. Understanding the underlying mechanisms of GORD is crucial for effective management and prevention of complications. This essay explores the causes, symptoms, etiology, pathophysiology, diagnosis, treatment regimens, and patient education strategies related to GORD, shedding light on its impact on individuals’ daily lives and the importance of comprehensive management approaches. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD))

Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Causes

Gastroesophageal Reflux Disease (GORD) stems from various factors, primarily centered around the malfunctioning of the lower esophageal sphincter (LES), a muscular ring separating the esophagus from the stomach. This weakening or relaxation of the LES allows stomach acid and partially digested food to flow backward into the esophagus, leading to the characteristic symptoms of GORD.

One of the significant causes of LES dysfunction is obesity. Excess weight puts pressure on the abdomen, which can force stomach contents upward into the esophagus, particularly when lying down or bending over. Additionally, adipose tissue produces hormones and substances that may contribute to LES relaxation, exacerbating reflux symptoms in obese individuals.

Smoking is another prominent risk factor for GORD. The chemicals in cigarette smoke can weaken the LES and impair its ability to prevent acid reflux. Moreover, smoking reduces saliva production, which normally helps neutralize stomach acid in the esophagus. Consequently, smokers are more prone to experiencing severe and prolonged reflux symptoms.

Certain medications are known to exacerbate GORD symptoms or weaken the LES. These include nonsteroidal anti-inflammatory drugs (NSAIDs) like ibuprofen and aspirin, which can irritate the esophageal lining and increase acid production, aggravating reflux symptoms. Other medications, such as calcium channel blockers used to treat hypertension and some sedatives, may relax the LES, facilitating acid reflux.

Dietary factors play a crucial role in triggering GORD symptoms. Spicy, acidic, and fatty foods can irritate the esophagus and stimulate acid production, exacerbating reflux. Citrus fruits, tomatoes, chocolate, caffeine, and alcohol are common culprits known to worsen symptoms in susceptible individuals. Moreover, large meals and lying down shortly after eating can increase intra-abdominal pressure, promoting acid reflux.

Pregnancy is also associated with an increased risk of GORD due to hormonal changes and elevated intra-abdominal pressure as the uterus expands. Hormones like progesterone relax the LES, contributing to reflux symptoms during pregnancy. Additionally, the growing fetus can exert pressure on the stomach, forcing acid into the esophagus.

In summary, GORD is caused by a combination of factors, including obesity, smoking, certain medications, dietary habits, and pregnancy. Understanding these underlying causes is essential for developing effective management strategies tailored to individual patients and addressing modifiable risk factors to alleviate symptoms and improve quality of life. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Signs and Symptoms

Heartburn:
Heartburn is the hallmark symptom of Gastroesophageal Reflux Disease (GORD), characterized by a burning sensation in the chest or throat. It typically occurs after eating or when lying down and is caused by stomach acid refluxing into the esophagus. Heartburn can range from mild discomfort to severe pain and is often exacerbated by certain foods, beverages, or lying flat.

Regurgitation:
Regurgitation is the involuntary return of partially digested food or stomach contents into the mouth or throat. Individuals with GORD may experience a sour or bitter taste in their mouth as stomach acid regurgitates into the esophagus. Regurgitation can occur shortly after eating or when bending over and is often accompanied by a sensation of fluid moving up the chest.

Chest Pain:
Chest pain, also known as acid indigestion, is a common symptom of GORD that can mimic heart-related conditions such as angina or a heart attack. The pain may be sharp or burning and is typically located behind the breastbone. It may worsen when lying down or after consuming acidic or fatty foods. While chest pain in GORD is usually non-cardiac in nature, it should be evaluated by a healthcare professional to rule out serious cardiac conditions.

Difficulty Swallowing:
Some individuals with GORD may experience dysphagia, or difficulty swallowing, due to inflammation and irritation of the esophagus caused by acid reflux. Dysphagia can manifest as a sensation of food sticking in the throat or chest, discomfort or pain while swallowing, or the need to swallow repeatedly to move food down. Severe dysphagia may indicate complications such as esophageal strictures or narrowing.

Persistent Cough:
A chronic cough that persists despite treatment for other respiratory conditions may be a symptom of GORD. The reflux of stomach acid into the esophagus can irritate the throat and trigger coughing. This cough is often dry and persistent, particularly at night or after eating. While coughing is a common symptom of GORD, it can also be indicative of other respiratory or gastrointestinal disorders, necessitating proper evaluation by a healthcare provider.

In conclusion, GORD manifests through various signs and symptoms, including heartburn, regurgitation, chest pain, difficulty swallowing, and persistent cough. These symptoms can significantly impact an individual’s quality of life and may vary in severity depending on the frequency and extent of acid reflux. Recognizing these manifestations is crucial for timely diagnosis and management of GORD to alleviate discomfort and prevent complications. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD))

Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Etiology

Genetic Predisposition: While the exact cause of Gastroesophageal Reflux Disease (GORD) remains multifactorial, genetic predisposition plays a significant role in its development. Studies have identified a familial aggregation of GORD, suggesting a genetic component to the condition. Specific genetic variations may influence the function of the lower esophageal sphincter (LES) or alter gastric motility, predisposing individuals to reflux symptoms.

Obesity: Obesity is a well-established risk factor for GORD, with excess body weight contributing to increased intra-abdominal pressure. This pressure can weaken the LES, allowing gastric contents to reflux into the esophagus more easily. Adipose tissue also produces inflammatory cytokines and hormones that may further disrupt esophageal function and exacerbate reflux symptoms in obese individuals.

Hiatal Hernia: A hiatal hernia occurs when a portion of the stomach protrudes through the diaphragm into the chest cavity, disrupting the normal anatomy of the gastroesophageal junction. This structural abnormality can impair the function of the LES, leading to GORD symptoms. While not all individuals with hiatal hernias develop GORD, the presence of a hiatal hernia increases the risk of reflux and complications.

Smoking: Cigarette smoking is associated with an increased risk of GORD due to its effects on LES function and gastric motility. The chemicals in tobacco smoke can relax the LES, making it more prone to reflux. Smoking also reduces saliva production, which normally helps neutralize stomach acid in the esophagus. Consequently, smokers are more likely to experience severe and prolonged reflux symptoms.

Dietary Factors: Certain dietary habits and food choices can exacerbate GORD symptoms. Spicy, acidic, and fatty foods can irritate the esophagus and stimulate acid production, leading to increased reflux. Common trigger foods include citrus fruits, tomatoes, chocolate, caffeine, and alcohol. Large meals and lying down shortly after eating can also promote acid reflux by increasing intra-abdominal pressure. Identifying and avoiding trigger foods is essential for managing GORD symptoms.

Medications: Several medications are known to exacerbate GORD symptoms or weaken the LES, increasing the risk of reflux. Nonsteroidal anti-inflammatory drugs (NSAIDs) like ibuprofen and aspirin can irritate the esophageal lining and increase acid production, aggravating reflux symptoms. Additionally, calcium channel blockers used to treat hypertension and certain sedatives may relax the LES, facilitating acid reflux.

The etiology of Gastroesophageal Reflux Disease involves a complex interplay of genetic predisposition, obesity, hiatal hernias, smoking, dietary factors, and medications. Understanding these underlying contributors is essential for developing targeted management strategies and addressing modifiable risk factors to alleviate symptoms and improve quality of life. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Pathophysiology

Lower Esophageal Sphincter Dysfunction: Gastroesophageal Reflux Disease (GORD) primarily involves dysfunction of the lower esophageal sphincter (LES), a muscular ring that acts as a barrier between the esophagus and the stomach. In individuals with GORD, the LES fails to close properly or relaxes inappropriately, allowing gastric contents, including stomach acid and partially digested food, to reflux into the esophagus. This malfunctioning of the LES is central to the pathophysiology of GORD and leads to the characteristic symptoms associated with the condition.

Impaired Esophageal Clearance: Another aspect of GORD’s pathophysiology involves impaired esophageal clearance mechanisms. Normally, the esophagus has efficient mechanisms, including peristalsis and salivary neutralization, to clear refluxed material back into the stomach and neutralize gastric acid. However, in individuals with GORD, these clearance mechanisms may be compromised, leading to prolonged exposure of the esophageal mucosa to acidic gastric contents. This prolonged exposure contributes to esophageal mucosal injury and inflammation, exacerbating symptoms and potentially leading to complications such as erosive esophagitis or Barrett’s esophagus.

Esophageal Mucosal Injury and Inflammation: Repeated exposure of the esophageal mucosa to gastric acid and other corrosive contents leads to mucosal injury and inflammation in individuals with GORD. The acidic nature of gastric contents irritates the esophageal epithelium, causing tissue damage and inflammation. This inflammatory response further compromises esophageal function and exacerbates symptoms such as heartburn, regurgitation, and chest pain. Over time, chronic inflammation may contribute to the development of complications such as esophageal strictures, Barrett’s esophagus, or even esophageal adenocarcinoma in severe cases.

Potential Complications: GORD can lead to various complications due to chronic esophageal mucosal injury and inflammation. These complications may include erosive esophagitis, characterized by erosions or ulcers in the esophageal mucosa, which can cause pain and bleeding. Long-term untreated GORD may also result in the development of Barrett’s esophagus, a condition characterized by changes in the esophageal lining that predispose individuals to esophageal adenocarcinoma, a type of cancer. Additionally, severe and recurrent reflux can lead to esophageal strictures, narrowing of the esophagus that can cause difficulty swallowing and food impaction.

The pathophysiology of Gastroesophageal Reflux Disease involves dysfunction of the lower esophageal sphincter, impaired esophageal clearance mechanisms, mucosal injury, and inflammation. Chronic inflammation and mucosal injury may lead to complications such as erosive esophagitis, Barrett’s esophagus, and esophageal strictures if left untreated. Understanding the underlying pathophysiological mechanisms is essential for the effective management and prevention of complications associated with GORD. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)).

Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

DSM-5 Diagnosis

Clinical Evaluation: Diagnosing Gastroesophageal Reflux Disease (GORD) typically involves a comprehensive clinical evaluation based on the patient’s medical history, symptom presentation, and physical examination. Healthcare providers often rely on the presence of characteristic symptoms such as heartburn, regurgitation, chest pain, and difficulty swallowing to initiate further diagnostic investigations.

Diagnostic Criteria: While the Diagnostic and Statistical Manual of Mental Disorders, Fifth Edition (DSM-5) does not provide specific diagnostic criteria for GORD, it emphasizes the importance of assessing symptom severity and functional impairment in making a diagnosis. Healthcare providers use standardized questionnaires or symptom scales to evaluate the frequency, intensity, and impact of reflux symptoms on the patient’s daily functioning and quality of life.

Objective Measures: In addition to clinical assessment, objective measures such as upper gastrointestinal endoscopy, esophageal pH monitoring, and esophageal manometry may be employed to confirm the diagnosis of GORD and assess the extent of esophageal mucosal injury and dysfunction. Upper gastrointestinal endoscopy allows direct visualization of the esophageal mucosa and the identification of erosions, ulcers, or other pathological changes indicative of GORD. Esophageal pH monitoring measures the frequency and duration of acid reflux episodes, providing valuable information about the severity and pattern of reflux. Esophageal manometry evaluates esophageal motility and LES function, helping to identify underlying motor disorders contributing to GORD symptoms.

Differential Diagnosis: Diagnosing GORD requires differentiation from other conditions that may present with similar symptoms, such as peptic ulcer disease, gastritis, esophageal motility disorders, and cardiac conditions like angina or myocardial infarction. Healthcare providers consider the patient’s medical history, risk factors, symptom pattern, and response to initial interventions to rule out alternative diagnoses and confirm GORD.

Multidisciplinary Approach: Diagnosing GORD often involves a multidisciplinary approach, with collaboration between primary care physicians, gastroenterologists, and other healthcare professionals. This collaborative effort ensures comprehensive evaluation, appropriate diagnostic testing, and tailored management strategies to address individual patient needs and optimize outcomes.

Diagnosing Gastroesophageal Reflux Disease relies on a comprehensive clinical evaluation, standardized symptom assessment, and objective measures to confirm the diagnosis and assess the severity and impact of symptoms. While the DSM-5 does not provide specific diagnostic criteria for GORD, it underscores the importance of evaluating symptom severity and functional impairment in making a diagnosis. Differential diagnosis and a multidisciplinary approach are essential to differentiate GORD from other conditions with similar presentations and ensure optimal management and outcomes for affected individuals. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Treatment Regimens

Lifestyle Modifications: Effective management of Gastroesophageal Reflux Disease (GORD) often begins with lifestyle modifications aimed at reducing reflux symptoms and improving esophageal health. Patients are advised to avoid trigger foods and beverages known to exacerbate reflux, such as spicy, acidic, and fatty foods, caffeine, alcohol, and carbonated drinks. Additionally, consuming smaller, more frequent meals and avoiding lying down or bending over shortly after eating can help reduce intra-abdominal pressure and minimize reflux episodes.

Weight Management: Obesity is a significant risk factor for GORD, and weight management is an integral component of treatment. Patients are encouraged to achieve and maintain a healthy weight through a balanced diet and regular physical activity. Weight loss can alleviate pressure on the abdomen, reduce reflux symptoms, and improve overall esophageal health.

Elevating the Head of the Bed: Elevating the head of the bed by 6 to 8 inches can help prevent acid reflux during sleep by utilizing gravity to keep stomach contents in the stomach. Patients can achieve this elevation by using bed risers or placing blocks under the bed frame’s legs. Sleeping on a wedge-shaped pillow can also provide similar benefits by elevating the upper body during sleep.

Smoking Cessation: Smoking is a modifiable risk factor for GORD, and smoking cessation is an essential aspect of treatment. Patients are encouraged to quit smoking to reduce LES relaxation, improve esophageal motility, and decrease reflux symptoms. Healthcare providers can offer support and resources to help patients quit smoking, such as counseling, nicotine replacement therapy, or prescription medications.

Medications: Pharmacological interventions are often employed to manage GORD symptoms and reduce esophageal mucosal injury. Proton pump inhibitors (PPIs), such as omeprazole, lansoprazole, and esomeprazole, are commonly prescribed to suppress gastric acid production and promote esophageal healing. H2 receptor antagonists, such as ranitidine and famotidine, can also be used to reduce acid secretion and alleviate reflux symptoms. Antacids may provide symptomatic relief by neutralizing stomach acid, although they are less effective at healing esophageal mucosal damage.

Surgical Intervention: In refractory cases or when complications arise, surgical intervention may be considered to improve LES function and prevent reflux. Fundoplication is a surgical procedure in which the upper part of the stomach is wrapped around the LES to strengthen its closure and reduce reflux. Endoscopic procedures, such as transoral incisionless fundoplication (TIF) or radiofrequency ablation (RFA), may also be performed to tighten the LES and improve reflux control. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD)

Patient Education: Patient education is essential for empowering individuals to actively participate in their GORD management and achieve optimal outcomes. Patients should be educated about the importance of adhering to lifestyle modifications, including dietary changes, weight management, and smoking cessation, to minimize reflux symptoms and prevent complications. Healthcare providers should discuss the rationale behind recommended interventions, potential side effects of medications, and expected outcomes to enhance patient understanding and adherence.

Monitoring and Follow-Up: Regular monitoring and follow-up are crucial components of GORD management to assess treatment efficacy, adjust interventions as needed, and address any emerging concerns or complications. Patients should be encouraged to report any persistent or worsening symptoms, side effects of medications, or difficulties adhering to recommended lifestyle modifications during follow-up visits.

The management of Gastroesophageal Reflux Disease involves a multifaceted approach encompassing lifestyle modifications, pharmacological interventions, surgical options, and patient education. Tailored treatment regimens should address individual patient needs and preferences while emphasizing the importance of adherence to lifestyle modifications and regular monitoring to achieve optimal symptom control and improve esophageal health.

Conclusion

Gastroesophageal Reflux Disease (GORD) is a complex gastrointestinal disorder with multifactorial etiology and diverse clinical manifestations. This essay has provided an overview of the causes, signs and symptoms, etiology, pathophysiology, DSM-5 diagnosis, treatment regimens, and patient education strategies related to GORD. By emphasizing the importance of simple yet formal language, concise paragraphs, and clear transitions, this essay has sought to enhance readability and comprehension while maintaining a formal tone. Effective management of GORD requires a comprehensive approach that encompasses lifestyle modifications, pharmacological interventions, surgical options, and patient education. By addressing modifiable risk factors, empowering patients through education, and individualizing treatment regimens, healthcare providers can improve symptom control, prevent complications, and enhance the quality of life for individuals living with GORD. (Nursing Paper Example on Gastrointestinal Disease: Gastroesophageal Reflux Disease (GORD).

References

http://Clarrett DM, Hachem C. Gastroesophageal Reflux Disease (GERD). Mo Med. 2018 May-Jun;115(3):214-218. PMID: 30228725; PMCID: PMC6140167.

 
Do you need a similar assignment done for you from scratch? Order now!
Use Discount Code "Newclient" for a 15% Discount!