The University of Southampton
University of Southampton Institutional Repository

A comparison of C, Matlab and Python as teaching languages in engineering

A comparison of C, Matlab and Python as teaching languages in engineering
A comparison of C, Matlab and Python as teaching languages in engineering
We describe and compare the programming languages C, MATLAB and Python as teaching languages for engineering students. We distinguish between two distinct phases in the process of converting a given problem into a computer program that can provide a solution: (i) finding an algorithmic solution and (ii) implementing this in a particular programming language. It is argued that it is most important for the understanding of the students to perform the first step whereas the actual implementation in a programming language is of secondary importance for the learning of problem-solving techniques. We therefore suggest to chose a well-structured teaching language that provides a clear and intuitive syntax and allows students to quickly express their algorithms. In our experience in engineering computing we find that MATLAB is much better suited than C for this task but the best choice in terms of clarity and functionality of the language is provided by Python.
3540221298
3039
1210-1217
Springer
Fangohr, Hans
9b7cfab9-d5dc-45dc-947c-2eba5c81a160
Bubak, Martin
van Albada, Geert Dick
Sloot, Peter M.A.
Dongarra, Jack J.
Fangohr, Hans
9b7cfab9-d5dc-45dc-947c-2eba5c81a160
Bubak, Martin
van Albada, Geert Dick
Sloot, Peter M.A.
Dongarra, Jack J.

Fangohr, Hans (2004) A comparison of C, Matlab and Python as teaching languages in engineering. Bubak, Martin, van Albada, Geert Dick, Sloot, Peter M.A. and Dongarra, Jack J. (eds.) In Computational Science - ICCS 2004: 4th International Conference. Springer. pp. 1210-1217 . (doi:10.1007/b98005).

Record type: Conference or Workshop Item (Paper)

Abstract

We describe and compare the programming languages C, MATLAB and Python as teaching languages for engineering students. We distinguish between two distinct phases in the process of converting a given problem into a computer program that can provide a solution: (i) finding an algorithmic solution and (ii) implementing this in a particular programming language. It is argued that it is most important for the understanding of the students to perform the first step whereas the actual implementation in a programming language is of secondary importance for the learning of problem-solving techniques. We therefore suggest to chose a well-structured teaching language that provides a clear and intuitive syntax and allows students to quickly express their algorithms. In our experience in engineering computing we find that MATLAB is much better suited than C for this task but the best choice in terms of clarity and functionality of the language is provided by Python.

Text
Fang_04.pdf - Accepted Manuscript
Download (127kB)

More information

Published date: 2004
Additional Information: ISSN of series: 0302-9743
Venue - Dates: ICCS 2004: 4th International Conference, Kraków, Poland, 2004-06-06 - 2004-06-09
Organisations: Engineering Sciences

Identifiers

Local EPrints ID: 22811
URI: http://eprints.soton.ac.uk/id/eprint/22811
ISBN: 3540221298
PURE UUID: 44e8bd57-3ee6-4283-b767-aa1198e71169
ORCID for Hans Fangohr: ORCID iD orcid.org/0000-0001-5494-7193

Catalogue record

Date deposited: 30 Mar 2006
Last modified: 16 Mar 2024 03:09

Export record

Altmetrics

Contributors

Author: Hans Fangohr ORCID iD
Editor: Martin Bubak
Editor: Geert Dick van Albada
Editor: Peter M.A. Sloot
Editor: Jack J. Dongarra

Download statistics

Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.

View more statistics

Atom RSS 1.0 RSS 2.0

Contact ePrints Soton: eprints@soton.ac.uk

ePrints Soton supports OAI 2.0 with a base URL of http://eprints.soton.ac.uk/cgi/oai2

This repository has been built using EPrints software, developed at the University of Southampton, but available to everyone to use.

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×