Introduction to Programming (MAY343): Διαφορά μεταξύ των αναθεωρήσεων

Από Wiki Τμήματος Μαθηματικών
Χωρίς σύνοψη επεξεργασίας
 
(10 ενδιάμεσες εκδόσεις από 2 χρήστες δεν εμφανίζονται)
Γραμμή 1: Γραμμή 1:
[[Undergraduate Courses Outlines]] - [https://math.uoi.gr  Department of Mathematics]
* [[Εισαγωγή στον Προγραμματισμό (ΜΑΥ343)|Ελληνική Έκδοση]]
{{Course-UnderGraduate-Top-EN}}
{{Menu-OnAllPages-EN}}


=== General ===
=== General ===
Γραμμή 48: Γραμμή 50:
|-
|-
! Course Website (URL)
! Course Website (URL)
|
| See [https://ecourse.uoi.gr/ eCourse], the Learning Management System maintained by the University of Ioannina.
http://www.cs.uoi.gr/~charis/c343/
|}
|}


Γραμμή 58: Γραμμή 59:
! Learning outcomes
! Learning outcomes
|
|
This course aims at introducing to students the philosophy of programming and at giving them the ability to implement algorithms in C/C++.
This course aims at analyzing and solving problems using the computer as well as at introducing a high-level programming language (which in this case is C++ and Python). After successfully passing this course, the students will be able to:
After successfully passing this course the students will be able to:
* Write simple or complex programs.
* Write simple or complex programs
* Verify the correctness and appropriateness of a given program.
* Verify the correctness and appropriateness of a given program
* Debug programs.
* Debug programs
* Understand basic programming concepts, structures and techniques.
* Understand basic programming concepts, structures and techniques
* Use arrays, strings, and functions.
* Use arrays, strings, and functions
* Understand elementary notions of object-oriented programming.
* Conduct simple and complex arithmetic computations via programming
* Conduct simple and complex arithmetic computations via programming.
* Use control flow constructs, conditions, decision structures and loops
* Use control flow constructs, conditions, decision structures and loops.
* Structure their programs with the help of iterative and recursive functions
* Structure their programs with the help of iterative and recursive functions.
* Program basic operations on data, such as searching and sorting.
* Program basic operations on data, such as searching and sorting.
|-
|-
Γραμμή 80: Γραμμή 81:
=== Syllabus ===
=== Syllabus ===


* Introduction to programming and binary representation
* Introduction to programming  
* Input/Output, data structures and variables
* Preprocessing, numerical, boolean and logical operators  
* Preprocessing, numerical, boolean and logical operators  
* Flow control: if/else, switch, for, while, do-while
* Flow control: if/else, switch, for, while, do-while
* Structuring, locality of parameters, pass by value/reference, variable scope, recursive functions, program stack.
* Structuring, locality of parameters, pass by value/reference, variable scope, recursive functions, program stack.
* Arrays  
* Arrays, strings, objects
* Input/Output
* Functions, variables’ scope  and recursion
* Searching and sorting data
* Searching and sorting data
* String operations
* Elementary data structures.
* Type and data structures and file processing.  


=== Teaching and Learning Methods - Evaluation ===
=== Teaching and Learning Methods - Evaluation ===
Γραμμή 137: Γραμμή 138:
=== Attached Bibliography ===
=== Attached Bibliography ===


See [https://service.eudoxus.gr/public/departments#20 Eudoxus].
<!-- In order to edit the bibliography, visit the webpage -->
<!-- https://wiki.math.uoi.gr/index.php/%CE%A0%CF%81%CF%8C%CF%84%CF%85%CF%80%CE%BF:MAY343-Biblio -->
 
See the official [https://service.eudoxus.gr/public/departments#20 Eudoxus site] or the [https://cloud.math.uoi.gr/index.php/s/62t8WPCwEXJK7oL local repository] of Eudoxus lists per academic year, which is maintained by the Department of Mathematics. Books and other resources, not provided by Eudoxus:
 
{{MAY343-Biblio}}

Τελευταία αναθεώρηση της 12:23, 15 Ιουνίου 2023

General

School

School of Science

Academic Unit

Department of Mathematics

Level of Studies

Undergraduate

Course Code

MAY343

Semester 3
Course Title

Introduction to Programming

Independent Teaching Activities

Lectures, laboratory exercises, tutorials, quiz (Weekly Teaching Hours: 5, Credits: 7.5)

Course Type

General Background

Prerequisite Courses -
Language of Instruction and Examinations

Greek

Is the Course Offered to Erasmus Students

Yes (in English)

Course Website (URL) See eCourse, the Learning Management System maintained by the University of Ioannina.

Learning Outcomes

Learning outcomes

This course aims at analyzing and solving problems using the computer as well as at introducing a high-level programming language (which in this case is C++ and Python). After successfully passing this course, the students will be able to:

  • Write simple or complex programs.
  • Verify the correctness and appropriateness of a given program.
  • Debug programs.
  • Understand basic programming concepts, structures and techniques.
  • Use arrays, strings, and functions.
  • Understand elementary notions of object-oriented programming.
  • Conduct simple and complex arithmetic computations via programming.
  • Use control flow constructs, conditions, decision structures and loops.
  • Structure their programs with the help of iterative and recursive functions.
  • Program basic operations on data, such as searching and sorting.
General Competences
  • Search for, analysis and synthesis of data and information, with the use of the necessary technology
  • Working independently
  • Team work
  • Project planning and management.

Syllabus

  • Introduction to programming
  • Preprocessing, numerical, boolean and logical operators
  • Flow control: if/else, switch, for, while, do-while
  • Structuring, locality of parameters, pass by value/reference, variable scope, recursive functions, program stack.
  • Arrays, strings, objects
  • Input/Output
  • Functions, variables’ scope and recursion
  • Searching and sorting data
  • Elementary data structures.

Teaching and Learning Methods - Evaluation

Delivery

Lectures, labs session

Use of Information and Communications Technology
  • Use of projector and interactive board during lectures.
  • Use of computer for demonstation of programming.
  • Use of computers in laboratories for development and testing of programs.
  • Course website maintenance. Announcements and posting of teaching material (lecture slides and notes, programs).
  • Announcement of assessment marks via the ecourse platform by UOI.
Teaching Methods
Activity Semester Workload
Lectures (13X5) 65
Laboratory practice 100
Tutorials 22.5
Course total 187.5
Student Performance Evaluation

Final written examination (80%)

  • Multiple choice questions
  • Develop programs

Laboratory exercises (20%)

  • Multiple choice questions
  • Develop programs

Attached Bibliography

See the official Eudoxus site or the local repository of Eudoxus lists per academic year, which is maintained by the Department of Mathematics. Books and other resources, not provided by Eudoxus:

  • L. Jesse, Πλήρες εγχειρίδιο της C++, Εκδόσεις Α. Γκιούρδα, 2006. Κωδικός Ευδ: 12374.
  • Βιβλίο [50656350]: Υπολογισμοί και Προγραμματισμός με την Python, John V. Guttag, Κλειδάριθμος, 2015.
  • Βιβλίο [59357236]: Εισαγωγή στον Προγραμματισμό με την Python, Schneider David
  • Βιβλίο [77119000]: Προγραμματισμός με την Python, Στράτος Καλαφατούδης, Γεώργιος Σταμούλης
  • Βιβλίο [320152]: Εισαγωγή στον Προγραμματισμό με αρωγό τη γλώσσα Python [Ηλεκτρονικό Βιβλίο], Γεώργιος Μανής
  • Βιβλίο [174838]: Python Scripting for Computational Science [electronic resource], Hans Petter Langtangen
  • Βιβλίο [170352]: Beginning Python [electronic resource], Magnus Lie Hetland
  • [Περιοδικό / Journal] Science of Computer Programming, ELSEVIER.
  • [Περιοδικό / Journal] ACM Transactions on Programming Languages and Systems (TOPLAS)