Modern Programming Methods
1st Semester, Course Code: ΜΕΧΤΕ102
Credits: 7,5
Learning Outcomes
This course provides the general foundations of Python. Knowing programming languages may be a useful skill. Python is a wonderful programming language, where execution speed appears often as an issue in practical applications. For applications where this is an issue, also coding in C++ can significantly improve performance. As C++ can relatively easily be integrated in a Python project, it is also possible (and common) to code just the bottleneck in that language.
Upon successful completion of the course, the students will be able to:
- learn the fundamental programming concepts and methodologies which are essential to building good C++ programs.
- practice the fundamental programming methodologies in the C++ programming language via laboratory experiences.
- code, document, test, and implement a well-structured, robust computer program using the C++ programming language.
- identify core aspects of programming and features of the Python language.
- understand and apply core programming concepts in Python like conditionals, loops, variables, and functions.
- use different ways for writing and running Python code.
- design and write fully-functional Python programs using commonly used data structures, custom functions, and reading and writing to files.
General Competences
- Search for, analysis and synthesis of data and information, with the use of the necessary technology.
- Adapting to new situations.
- Decision-making.
- Working independently.
- Team work.
- Working in an interdisciplinary environment.
- Critical thinking.
- Development of free, creative and inductive thinking.
Course Content
The following material will be presented:
- Introduction to C++ and Python Programming, and general understanding.
- Practical demonstrations of C++ Programming and Python Programming.
- Understanding of C++ And Python programming interface.
- C++ Arrays, C++ Operators, C++ Assignment, Logical and Relational Operators.
- C++ Accessing Structure Members, C++ Functions, Calling a Function, Class Template, Conditional Compilations.
- Python Arrays, Python Operators, Arithmetic, Bitwise, Membership Operators.
- Python List, Python Access, Update and Delete Lists, List Methods, Built-in Functions.
- Python Tuple and Tuple Operations, Python Dictionary and Dictionary Operations.
- Python Conditional Statements, Python Loops and Statements.
- Python Functions
Student Performance Evaluation
I. Written exam (70%) that includes:
- Questions on theory.
- Explicit description of algorithmic methods.
- Development of computational algorithms for the numerical solution of problems.
II. Coursework (30%) that includes the development and execution of computational algorithms for the numerical solution of problems, subject to the material taught in class.
This is a 3-hour written exam. The individual evaluation grades are explicitly written next to each question.
Bibliography
Suggested Bibliography
- Bjarne Stroustrup, The C++ Programming Language, 4th Edition, Pearson Education (US), 2013.
- Mark Lutz, Learning Python: Powerful Object-Oriented Programming, 5th Edition, O’Reilly Media, 2013.
Related Academic Journals