Undergraduate Compulsory 1014

Από Περιγράμματα - Τμήμα Μαθηματικών
(διαφορά) ← Παλαιότερη αναθεώρηση | Τελευταία αναθεώρηση (διαφορά) | Νεότερη αναθεώρηση → (διαφορά)
Μετάβαση σε: πλοήγηση, αναζήτηση



Γενικά

Σχολή Σχολή Θετικών Επιστημών
Τμήμα Τμήμα Μαθηματικών
Επίπεδο Σπουδών Προπτυχιακό
Κωδικός Μαθήματος MAY343
Εξάμηνο 3
Τίτλος Μαθήματος Εισαγωγή στον Προγραμματισμό
Αυτοτελείς Διδακτικές Δραστηριότητες Διαλέξεις και Ασκήσεις / Quiz (Εβδομαδιαίες Ώρες Διδασκαλίας: 5, Πιστωτικές Μονάδες: 7.5)
Τύπος Μαθήματος Επιστημονικής Περιοχής
Προαπαιτούμενα Μαθήματα
Γλώσσα Διδασκαλίας και Εξετάσεων Ελληνική
Τρόπος Διεξαγωγής Μαθήματος Δια ζώσης (100%)
Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus Ναι (στην Αγγλική γλώσσα)
Ηλεκτρονική Σελίδα Μαθήματος (URL) Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων.

Μαθησιακά Αποτελέσματα

Μαθησιακά Αποτελέσματα

Tο μάθημα στοχεύει στην ανάλυση και επίλυση προβλημάτων χρησιμοποιώντας τον υπολογιστή καθώς και στην εισαγωγή μιας γλώσσας προγραμματισμού υψηλού επιπέδου (που στην περίπτωση αυτή είναι η C++ και η Python). Με την επιτυχή ολοκλήρωση του μαθήματος, ο φοιτητής/τρια θα είναι σε θέση να:

  • Γράψει απλά ή σύνθετα προγράμματα.
  • Επαληθεύσει την ορθότητα και την καταλληλόλητα ενός προγράμματος.
  • Αποσφαλματώσει ένα πρόγραμμα.
  • Κατανοήσει θεμελιώσεις έννοιες, δομές και τεχνικές προγραμματισμού.
  • Χρησιμοποιήσει πίνακες, συμβολοσειρές και συναρτήσεις.
  • Κατανοήσει βασικές έννοιες αντικειμενοστραφούς προγραμματισμού.
  • Διεξάγει προχωρημένους αριθμητικούς υπολογισμούς μέσω προγραμματισμού.
  • Χρησιμοποιήσει δομές ροής ελέγχου, συνθήκες, δομές απόφασης και βρόχους.
  • Δομήσει ένα πρόγραμμα με τη βοήθεια επαναληπτικών και αναδρομικών συναρτήσεων.
  • Προγραμματίσει βασικές λειτουργίες σε δεδομένα, όπως αναζήτηση και ταξινόμηση.
Γενικές Ικανότητες
  • Αναζήτηση, ανάλυση και σύνθεση δεδομένων και πληροφοριών, με τη χρήση και των απαραίτητων τεχνολογιών
  • Προαγωγή ελεύθερης, δημιουργικής και επαγωγικής σκέψης
  • Αυτόνομη εργασία
  • Ανάλυση απαιτήσεων για επίλυση προβλημάτων
  • Ανάπτυξη αλγοριθμικής σκέψης
  • Ικανότητα αφαίρεσης στη μοντελοποίηση προβλημάτων

Περιεχόμενο Μαθήματος

  • Εισαγωγή στον προγραμματισμό
  • Αριθμητικοί, boolean και λογικοί τελεστές
  • Εντολές και παραστάσεις
  • Έλεγχος ροής: if/else, switch, for, while, do-while
  • Πίνακες, συμβολοσειρές, αντικείμενα
  • Είσοδος/Έξοδος
  • Συναρτήσεις, εμβέλεια μεταβλητών και αναδρομή
  • Αναζήτηση και ταξινόμηση δεδομένων
  • Στοιχειώδεις δομές δεδομένων.

Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση

Τρόπος Διδασκαλίας
  • Εβδομαδιαίες διαλέξεις στην τάξη
  • Εργαστήρια στις εργαστηριακές αίθουσες.
Τρόπος και Συχνότητα Επικοινωνίας με Φοιτητές Η επικοινωνία με τους φοιτητές γίνεται:
  • Μέσω email.
  • Δια ζώσης στο γραφείο.
  • Κατά τη διάρκεια των διαλέξεων.

Η συχνότητα επικοινωνίας με τους φοιτητές καθορίζεται από τις ανάγκες των φοιτητών.

Διασφάλιση Τρόπου Επικοινωνίας Μεταξύ Φοιτητών Συνέργεια στα πλαίσια της παράδοσης του μαθήματος.
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών
  • Χρήση διαφανειών στις διαλέξεις.
  • Χρήση υπολογιστών στο εργαστήριο για την ανάπτυξη και έλεγχο των προγραμμάτων.
  • Λογισμικό Προγραμματισμού στο περιβάλλον Visual Studio Code.
  • Λογισμικό Προγραμματισμού στο περιβάλλον python.
  • Υποστήριξη Μαθησιακής διαδικασίας μέσω της ηλεκτρονικής πλατφόρμας ecourse.
Απαιτούμενος Τεχνολογικός Εξοπλισμός και Γνώσεις Τεχνολογίας Δεν απαιτείται τεχνολογικός εξοπλισμός, καθώς παρέχεται. Δεν απαιτούνται εξειδικευμένες γνώσεις τεχνολογίας.
Πολιτική Μαθήματος για τη Λογοκλοπή και Εργαλεία Ελέγχου Λογοκλοπής Η λογοκλοπή απαγορεύεται ρητά και τιμωρείται κλιμακούμενα, ανάλογα με την επανάληψη της χρήσης της. Ελέγχεται, δε, με σχετικά εργαλεία όπως το "Turnitin", που παρέχει η Βιβλιοθήκη του Πανεπιστημίου.
Πολιτική Μαθήματος για τη Χρήση Τεχνητής Νοημοσύνης Επιτρέπεται η χρήση Τεχνητής Νοημοσύνης κατόπιν άδειας από τον διδάσκοντα/τη διδάσκουσα.
Οργάνωση Διδασκαλίας
Δραστηριότητα Φόρτος Εργασίας Εξαμήνου
Διαλέξεις (13Χ5) 65
Αυτοτελής Μελέτη 100
Επίλυση Ασκήσεων - εργασίες 22.5
Σύνολο Μαθήματος 187.5
Αξιολόγηση Φοιτητών
  • Γραπτή τελική εξέταση (70%)
    1. Ερωτήσεις πολλαπλής επιλογής
    2. Ανάπτυξη προγραμμάτων
  • Εργαστηριακές Ασκήσεις (30%)
    1. Ερωτήσεις πολλαπλής επιλογής
    2. Ανάπτυξη προγραμμάτων

Συνιστώμενη Βιβλιογραφία

Δείτε την υπηρεσία Εύδοξος.
Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:

Introduction to Programming


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
Mode of Course Delivery Face-to-face (100%)
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

Mode of Instruction Lectures, labs session.
Mode and Frequency of Communication with Students Communication with students takes place through:
  • Email.
  • In-person meetings during office hours.
  • During lectures.

The frequency of communication with students is determined by their needs.

Ensuring Communication Among Students Collaboration and interaction are encouraged within the context of course delivery.
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.
Required Technological Equipment and Technology Skills No technological equipment is required from students, as all necessary equipment is provided. No specialized technology skills are required.
Course Policy on Plagiarism and Plagiarism Detection Tools Plagiarism is strictly prohibited and is subject to progressively stricter penalties in the event of repeated offenses. It is monitored using plagiarism detection tools such as Turnitin, which is provided by the University Library.
Course Policy on the Use of Artificial Intelligence The use of Artificial Intelligence is permitted only with the prior approval of the instructor.
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.
Books and other resources, not provided by Eudoxus:

  • [Περιοδικό / Journal] Science of Computer Programming, ELSEVIER.
  • [Περιοδικό / Journal] ACM Transactions on Programming Languages and Systems (TOPLAS)