Programming for Engineers

General

Course Contents

Functions: declaration, definition, and call
Function Parameters: Call by value, Call by reference, Call by address
Scope of variables
Function Overload
Pointers, Dynamic Memory allocation
Multidimensional Arrays
Alphanumeric as C-Strings (arrays) and as C++ objects
Introduction to Data Files
Structures
Laboratory Exercises and applications in C/C++

Educational Goals

Upon successful completion of the course the student will:
– obtain a deep knowledge of modular programming based on subprograms
– understand the use of pointers
– be able to write programs for processing data organized in text files
– be familiar with string manipulation
– know about composite data types defined by the programmer (structures)
– be able to analyze and develop complex programs

General Skills

Competency in analyzing and developing complex modular programs based on subroutines, new structured data types defined by the programmer and data stored in text files.
Independent work, Teamwork – distribution of responsibilities

Teaching Methods

Lectures, Lab Exercises, Online guidance, Projected Presentations, E-mail communication, Online Synchronous and Asynchronous Teaching Platform (moodle).

Students Evaluation

Assessment Language: Greek/English
The final grade of the course is formed by 70% by the grade of the theoretical part and by 30% by the grade of the laboratory part.
1. The grade of the theoretical part is formed by a written final examination, which may include:
Short answer questions, Program Analysis, Program development, Solving problems of application of the acquired knowledge,
2. The examination of the Laboratory Exercises is carried out with the continuous evaluation of the laboratory skills and the theoretical knowledge that were acquired in the course by the method of continuous evaluation and submission of weekly assignments.

Recommended Bibliography

Programming for Engineers, Lecture Notes, D.E. Manolakis, Uploaded to moodle (Greek language)
English Language Textbooks
Object Oriented Programming in C++, R. Lafore, CourseSams Publishing
C++ How to Program (Early Objects Version), Paul Deitel, Harvey Deitel, 10th Edition, 2017, Pearson
Problem Solving with C++, Walter Savitch, Kenrick Mock (contributor, 10th Edition, 2018, Addison-Wesley Professional
Journals:
Computing in Science & Engineering (co-published by IEEE and AIP)
IEEE Transactions on Computers
IEEE Transactions on Software Engineering
Science of Computer Programming
Material from Internet:
www.tutorialspoint.com/cprogramming/
http://www.tutorialspoint.com/cplusplus/
http://www.learn-c.org/
http://www.cplusplus.com/

The C++ Tutorial


http://www.cprogramming.com