دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: ریاضیات ویرایش: First Edition نویسندگان: Edward Scheinerman سری: ISBN (شابک) : 158488584X, 9781584885849 ناشر: CRC Press سال نشر: 2006 تعداد صفحات: 521 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 30 مگابایت
در صورت تبدیل فایل کتاب C++ for Mathematicians: An Introduction for Students and Professionals به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب C++ برای ریاضیدانان: مقدمه ای برای دانش آموزان و حرفه ای ها نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
برای مسائلی که نیاز به محاسبات گسترده دارند، یک برنامه ++C می تواند میلیاردها مثال را سریعتر از سایر انتخاب های محاسباتی طی کند. C++ ریاضیدانان تقریباً هر رشته ای را قادر می سازد تا برنامه هایی را برای رفع سریع نیازهای خود ایجاد کنند و در اکثر سیستم های رایانه ای بدون هیچ هزینه ای در دسترس است. C++ for Mathematicians: In Introduction for Students and Professionals مفاهیم C++ را که برای تحقیقات محض و کاربردی ریاضی ارزشمند هستند، برجسته می کند. این اولین کتاب موجود در برنامه نویسی C++ است که به طور خاص برای مخاطبان ریاضی نوشته شده است. ویژگیهای مبهمتر زبان را به نفع جنبههای بیشترین کاربرد برای کار ریاضی حذف میکند. نویسنده نحوه استفاده از C++ را برای فرمولبندی حدسها، ایجاد تصاویر و نمودارها، تأیید اثباتها، ساخت ساختارهای ریاضی و کشف مثالهای بیشمار توضیح میدهد. این کتاب با تاکید بر نقش اساسی تمرین به عنوان بخشی از فرآیند یادگیری، به طور ایده آل برای دوره های کارشناسی و همچنین خودآموزی طراحی شده است. هر فصل مشکلات و راهحلهای زیادی را ارائه میکند که متن را تکمیل میکند و به شما امکان میدهد تا به سرعت یاد بگیرید که چگونه آنها را برای مشکلات خود به کار ببرید. یک سی دی رام همراه تمام برنامه های شماره گذاری شده را فراهم می کند تا خوانندگان بتوانند به راحتی از کد مورد نیاز استفاده کرده یا آن را تطبیق دهند. با ارائه توضیحات و مثالهای واضح از دنیای ریاضیات که مفاهیم را از پایه توسعه میدهند، C++ for Mathematicians میتواند بارها و بارها به عنوان منبعی برای استفاده از C++ برای مسائلی که از پایه تا پیچیده را شامل میشوند، استفاده شود.
For problems that require extensive computation, a C++ program can race through billions of examples faster than most other computing choices. C++ enables mathematicians of virtually any discipline to create programs to meet their needs quickly, and is available on most computer systems at no cost. C++ for Mathematicians: An Introduction for Students and Professionals accentuates C++ concepts that are most valuable for pure and applied mathematical research. This is the first book available on C++ programming that is written specifically for a mathematical audience; it omits the language’s more obscure features in favor of the aspects of greatest utility for mathematical work. The author explains how to use C++ to formulate conjectures, create images and diagrams, verify proofs, build mathematical structures, and explore myriad examples. Emphasizing the essential role of practice as part of the learning process, the book is ideally designed for undergraduate coursework as well as self-study. Each chapter provides many problems and solutions which complement the text and enable you to learn quickly how to apply them to your own problems. An accompanying CD ROM provides all numbered programs so that readers can easily use or adapt the code as needed. Presenting clear explanations and examples from the world of mathematics that develop concepts from the ground up, C++ for Mathematicians can be used again and again as a resource for applying C++ to problems that range from the basic to the complex.
C++ for Mathematicians......Page 1
Contents......Page 6
Programs......Page 14
Figures......Page 18
Why C++?......Page 20
What can my computer do for me?......Page 21
No pointers! (almost)......Page 22
Acknowledgments......Page 23
Part I: Procedures......Page 26
1.1 What is C++?......Page 28
1.2 Hello C++......Page 29
1.3 Exercises......Page 33
2.1 The integer types......Page 36
2.3 The bool and char types......Page 39
2.4 Checking the size and capacity of the different types......Page 40
2.5 Standard operations......Page 43
2.6 Comparisons and Boolean operations......Page 47
2.7 Complex numbers......Page 48
2.8 Naming variables......Page 52
2.9 Exercises......Page 53
3.2 A first approach......Page 56
3.3 Euclid’s method......Page 62
3.4 Looping with for, while, and do......Page 66
3.5 An exhaustive approach to the GCD problem......Page 68
3.6 Extended gcd, call by reference, and overloading......Page 70
3.7 Exercises......Page 74
4.1 Pseudo random number generation......Page 78
4.2 Uniform random values......Page 79
4.3 More on pseudo random number generation......Page 82
4.4 A Monte Carlo program for the GCD problem......Page 85
4.5 Normal random values......Page 86
4.6 Exercises......Page 88
5.1 Euler’s totient......Page 92
5.2 Array fundamentals......Page 94
5.3 A procedure to factor integers......Page 96
5.4 A procedure to calculate Euler’s totient......Page 101
5.5 The Sieve of Eratosthenes: new and delete[]......Page 103
5.6 A faster totient......Page 108
5.7 Computing pn for large n......Page 110
5.8 The answer......Page 112
5.9 Exercises......Page 113
Part II: Objects......Page 116
6.1 Data and methods......Page 118
6.2 Declaring the Point class......Page 119
6.3 Data hiding......Page 122
6.4 Constructors......Page 124
6.5 Assignment and conversion......Page 125
6.6 Methods......Page 126
6.7 Procedures using arguments of type Point......Page 128
6.8 Operators......Page 129
6.9 Exercises......Page 137
7.1 Generating Pythagorean triples......Page 140
7.2 Designing a primitive Pythagorean triple class......Page 141
7.3 Implementation of the PTriple class......Page 142
7.4 Finding and sorting the triples......Page 146
7.5 Exercises......Page 150
8.1 Sets......Page 152
8.2 Set iterators......Page 155
8.3 Multisets......Page 158
8.4 Adjustable arrays via the vector class......Page 159
8.5 Ordered pairs......Page 163
8.6 Maps......Page 164
8.7.1 Lists......Page 169
8.7.3 Queues......Page 173
8.7.4 Deques......Page 174
8.7.5 Priority queues......Page 175
8.8 Exercises......Page 176
9.1 Designing the Mod type......Page 182
9.2 The code......Page 183
9.3 The default modulus: Static class variables and methods......Page 188
9.5 Comparison operators......Page 192
9.6 Arithmetic operators......Page 194
9.8 A main to demonstrate the Mod class......Page 197
9.9 Exercises......Page 199
10.1 Introduction to the projective plane, RP2......Page 202
10.2 Designing the classes PPoint and PLine......Page 203
10.3 Inheritance......Page 206
10.4 Protected class members......Page 209
10.5 Class and file organization for PPoint and PLine......Page 211
10.6 The parent class PObject......Page 212
10.7 The classes PPoint and PLine......Page 220
10.8 Discovering and repairing a bug......Page 225
10.9 Pappus revisited......Page 232
10.10 Exercises......Page 236
11.1 Ulam’s problem......Page 240
11.2 Designing the Permutation class......Page 242
11.2.2 Constructors and destructors......Page 243
11.2.3 Copy and assign......Page 245
11.2.4 Basic inspection and modi.cation methods......Page 248
11.2.5 Permutation operations......Page 249
11.2.8 The code .le......Page 250
11.3 Finding monotone subsequences......Page 254
11.4 Exercises......Page 257
12.1 Procedure templates......Page 260
12.2.1 Using class templates......Page 263
12.2.2 Creating class templates......Page 264
12.3 The Polynomial class template......Page 267
12.3.2 Constructors......Page 268
12.3.3 Get and set methods......Page 269
12.3.4 Function methods......Page 270
12.3.6 Arithmetic......Page 271
12.3.9 The code......Page 272
12.4 The GCD problem revisited......Page 279
12.5.1 Signed versus unsigned integers......Page 283
12.5.2 Bit operations......Page 284
class template......Page 285
12.5.4 Class templates with non-type arguments......Page 288
12.6 Exercises......Page 289
Part III: Topics......Page 292
13.1 Arbitrary precision arithmetic: The GMP package......Page 294
13.2.1 Two-dimensional arrays in C++......Page 298
13.2.2 The TNT and JAMA packages......Page 299
13.2.3 The newmat package......Page 307
13.3 Other packages......Page 311
13.4 Exercises......Page 312
14.1 Character arrays......Page 314
14.2.1 Initialization......Page 316
14.2.2 Fundamental operations......Page 317
14.2.3 Searching......Page 320
14.3 Command line arguments......Page 322
14.4.1 Opening files for input/output......Page 325
14.4.2 Reading and writing......Page 328
14.4.3 Detecting the end of an input file......Page 329
14.4.4 Other methods for input......Page 330
14.5 String streams......Page 332
14.6 Formatting......Page 333
14.6.2 Showing all digits......Page 334
14.6.3 Setting the width......Page 335
14.7 A class to parse files......Page 336
14.8 Visualization......Page 340
14.8.1 Introducing and installing the plotutils package......Page 341
14.8.2 Drawing with......Page 342
14.8.3 Pascal’s triangle modulo two......Page 347
14.8.4 Tracing the motion of a point moving randomly in a triangle......Page 349
14.8.5 Drawing Paley graphs......Page 351
14.9 Exercises......Page 355
15.1 The switch statement......Page 358
15.2 Labels and the goto statement......Page 361
15.3.1 The basics of try, throw, and catch......Page 363
15.3.2 Other features of the exception-handling system......Page 367
15.4 Friends......Page 369
15.5.1 Structures......Page 372
15.5.3 Unions......Page 373
15.5.4 Using typedef......Page 374
15.6.1 Pointer basics......Page 375
15.6.2 Dereferencing......Page 376
15.6.3 Arrays and pointer arithmetic......Page 378
15.6.4 new and delete revisited......Page 380
15.6.5 Why use pointers?......Page 381
15.7 Exercises......Page 383
Part IV: Appendices......Page 386
A.1 Programming with a command window and a text editor......Page 388
A.1.1 What you need and how to get it (for free)......Page 389
A.1.2 Editing program files......Page 390
A.1.3 Compiling and running your program......Page 391
A.1.4 Compiler options......Page 393
A.1.5 Introduction to make......Page 395
A.2 Programming with an integrated development environment......Page 397
A.2.1 Visual C++ for Windows......Page 398
A.2.2 Xcode for Macintosh OS X......Page 401
A.3 General advice on debugging......Page 403
B.1 Doxygen comments......Page 406
B.1.2 Documenting procedures......Page 407
B.1.3 Documenting classes, data, and methods......Page 408
B.2.1 Configuring Doxygen......Page 411
B.2.3 More features......Page 414
C.1.2 Standard classes/templates......Page 416
C.1.4 Static variables and scope......Page 417
C.1.6 Arrays......Page 418
C.2.4 Logical operators......Page 419
C.2.6 Potpourri......Page 420
C.3.2 Looping: for, while, and do......Page 421
C.3.3 switch......Page 422
C.4 Procedures......Page 423
C.4.2 Call by value versus call by reference......Page 424
C.4.5 Templates......Page 425
C.5.1 Overview and file organization......Page 426
C.5.2 Constructors and destructors......Page 427
C.5.3 Operators......Page 428
C.5.4 Copy and assign......Page 429
C.5.5 static data and methods......Page 430
C.5.7 Friends......Page 431
C.5.9 Inheritance......Page 432
C.6.1 Mathematical functions......Page 433
C.6.3 Character procedures......Page 436
C.6.4 Other useful functions......Page 438
Index......Page 512