|
C++ for Mathematicians: An Introduction for Students and Professionals |  | Author: Edward Scheinerman Publisher: CRC Press Category: Book
List Price: $71.95 Buy New: $52.95 as of 9/6/2010 04:22 MDT details You Save: $19.00 (26%)
New (11) Used (9) from $41.00
Seller: philscorner Rating: 3 reviews Sales Rank: 957234
Media: Paperback Pages: 520 Number Of Items: 1 Shipping Weight (lbs): 1.7 Dimensions (in): 9.3 x 6.3 x 1.2
ISBN: 158488584X Dewey Decimal Number: 005.133 EAN: 9781584885849 ASIN: 158488584X
Publication Date: June 6, 2006 Availability: Usually ships in 1-2 business days
| |
| Also Available In:
|
| Accessories:
|
| Similar Items:
| |
| Editorial Reviews:
Product Description 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.
|
| Customer Reviews: Exactly as the title states October 25, 2009 Jaime Moreno (Farmersville,CA) This book is pretty much the book you would want to get if you are a mathematician or math student needing to write a C++ program.
It keeps things simple by sticking more of the error prone and complicated parts of C++ to the end. I guess you could see it as a cookbook approach to learning C++ since as the author states the main goal is "... we are interested in getting data into our programs and results out of them" and the book succeeds in this regard. It sticks to using call-by-reference and the STL container classes to cover alot more than other books that cover building container classes from scratch. All the examples are math oriented so you know it's intended for math types and would come in handy for any student taking math classes wanted to write programs to follow what they are doing in class. What I really liked is that it covers some things that other C++ don't cover at all like using Doxygen to documentation your code or creating your own makefiles. It also covers thing like using GNU Multiple Precision Library for arbitrary precision, the TNT and JAMA packages for linear algebra work, and GNU plotutils package for visualization work with your programs which I have yet to see any other introductory C++ books I've read. It's also platform agnostic so most if not all the examples should work on any computer you use be it Windows, Linux or Mac.
Perfect for learning September 21, 2007 T. Patrick Sullivan (Germantown, TN United States) 2 out of 4 found this review helpful
I bought this book a couple of weeks ago and have worked the exercises in the first four chapters so far. The exercises are perfectly chosen; the math is interesting and the programming is challenging, and there are thoughtful solutions to almost every exercise! It's obviously not appropriate for a future programmer, but for a mathematician who needs passing familiarity with programming it's perfect. Even if you don't want to use C++ in your work, a firm foundation in it gives you the freedom to branch out to Java, C#, or another language later on. I'd recommend it for anyone with a mathematical background who wants a fun introduction to C++.
Surprisingly interesting presentation, but needs better technical editing, and removal of non-ISO Standard usage & terminology. November 22, 2007 Reader 11 out of 11 found this review helpful
This book is well-written with material clearly presented. Its use of interesting mathematical examples, rather than the more typically forced and artificial ones in other texts, makes it an enjoyable book to read. The author's interest in the subject is evident, and infectious. The book is suitable for beginners, as the author presents material in a manner almost as if he's teaching us what he himself has recently learned and still remembers the problems beginners might experience.
There are, however, a number of problems, most minor but some more serious. In the minor category is the editing which could be somewhat improved. As early as page four a sentence contains an extra "is". On page 12 the author presents a formula to determine the range of minimum and maximum integer values and inadvertently and incorrectly uses bytes rather than bits in the formula. Fortunately, most of the technical editing errors are obvious with careful reading, and may even help readers feel they are really understanding the material.
Also in the minor category, and possibly reflective of the author's emphasis on using C++ for mathematical applications rather than on C++ itself, is his references to C++ items by names that differ from those commonly used by most C++ professionals. For example, he refers to the '<< insertion operator' as 'the << operation'. When introducing 'endl' he identifies it as the endl object, rather than, as is common, a 'stream manipulator'. He makes the stated choice not to use the more common C++ term `function' but chooses to refer to these program entities as procedures, so as not to have any confusion between the mathematical and computer uses of this term.
However, many mathematical terms are "overloaded". For example, 'modulus', is used with different meanings in arithmetic, complex numbers, set theory, elliptic functions, etc. Thus, the author's terminology decisions appear unnecessary for the intended audience, particularly, as these decisions make it a bit more difficult for readers to use other C++ references. The use of more common C++ terminology should provide greater value to the intended audience than the choices made by the author.
The author usually uses good coding practices, although there is the occasional slip. As one example, Program 3.5 finds the greatest common divisor of two integers using a 'for' loop. The loop ends when a variable exceeds the first number entered. This code is inefficient if the first number entered is greater than the second. If so, the values should be swapped before the loop, putting the smaller value first so the number of times through the loop is not unnecessarily large. This would improve speed without loss of generality.
Occasionally programming idioms that appear to be carry overs from a language other than C++ are used. They work, but are often not the most appropriate, efficient, or error reducing way to code in C++.
The more serious problems arise from the author statements about C++ constructs without regard for the ISO standard. He states that in the expression a%b, b can even be "zero!" (the explanation point is the author's). However, the standard notes that when the second operand of either the '/' or '%' operators is zero the behavior is undefined. Generally this results in runtime errors. In Exercise 2.3 readers are asked to determine the results of (-1)%3, (-5)%(-3), and 5%(-3). No reference is made to the ISO standard's statement that if both operands are not non-negative than the sign of the result is implementation-defined. There are similar problems with the author's answers regarding division by zero in problem 2.6. C++ beginners, the target audience, will not know which material presented here is inappropriate for standard implementations.
Although the book has 496 pages, and is 9+ inches high, it is relatively smaller than many other introductory C++ textbooks. This is due both to its comparatively lower page count, and its width which is about one inch less than some other popular introductory C++ texts such as Prata's or Deitel's. This has it pros and cons. Because of its smaller size and weight the book is much easier to hold and use. It also means the author has chosen to select those topics he feels most important and leave out many others. Of course a consequence of this is that the book contains less C++ content.
In spite of its deficiencies this is a book that's hard not to like. With a technical scrub by a C++ professional using the ISO standard, and the use of more common C++ terminology this book would be a standout. Its organization, writing, and explanations are exceptionally clear and the book is surprisingly, for a C++ text, entertaining. However, Chapman and Hall's pricing appears inappropriately high considering the book's relative size and paperback binding.
If the deficiencies mentioned above can be corrected, this would be an outstanding C++ text. A book I wouldn't hesitate to highly recommend as an excellent choice not only for mathematicians, but for others interested in quickly developing the skills needed to program quantitative problems in C++.
|
|
|
CERTAIN CONTENT THAT APPEARS ON THIS SITE COMES FROM AMAZON SERVICES LLC. THIS CONTENT IS PROVIDED ‘AS IS’ AND IS SUBJECT TO CHANGE OR REMOVAL AT ANY TIME. | |