Programming for Engineers: A Foundational Approach to Learning C and Matlab

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

To learn to program is to be initiated into an entirely new way of thinking about engineering, mathematics, and the world in general. Computation is integral to all modern engineering disciplines, so the better you are at programming, the better you will be in your chosen field.

The author departs radically from the typical presentation by teaching concepts and techniques in a rigorous manner rather than listing how to use libraries and functions. He presents pointers in the very first chapter as part of the development of a computational model that facilitates an ab initio presentation of subjects such as function calls, call-by-reference, arrays, the stack, and the heap. The model also allows students to practice the essential skill of memory manipulation throughout the entire course rather than just at the end. As a result, this textbook goes further than is typical for a one-semester course -- abstract data types and linked lists, for example, are covered in depth. The computational model will also serve students in their adventures with programming beyond the course: instead of falling back on rules, they can think through the model to decide how a new programming concept fits with what they already know.

The book is appropriate for undergraduate students of engineering and computer science, and graduate students of other disciplines. It contains many exercises integrated into the main text, and the author has made the source code available online.

Author(s): Aaron R. Bradley (auth.)
Edition: 1
Publisher: Springer-Verlag Berlin Heidelberg
Year: 2011

Language: English
Pages: 238
Tags: Software Engineering/Programming and Operating Systems; Electrical Engineering; Data Structures, Cryptology and Information Theory; Mathematics of Computing

Front Matter....Pages I-XIII
Memory: The Stack....Pages 1-30
Control....Pages 31-45
Arrays and Strings....Pages 47-80
Debugging....Pages 81-92
I/O....Pages 93-112
Memory: The Heap....Pages 113-136
Abstract Data Types....Pages 137-159
Linked Lists....Pages 161-180
Introduction to Matlab....Pages 181-198
Exploring ODEs with Matlab....Pages 199-214
Exploring Time and Frequency Domains with Matlab....Pages 215-230
Back Matter....Pages 231-235