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

Από Wiki Τμήματος Μαθηματικών
Γραμμή 74: Γραμμή 74:
=== Syllabus ===
=== Syllabus ===


# Computer - Hardware, Software
* Introduction to Numerical Representation
# Binary system - data representation
*# Arithmetic operations in numerical systems
# Algorithms description methods, Flow diagrams, Greek algorithmic language
*# Representations of binary numbers
# Program Design
* Introduction to Mathematical Logic (Boolean Algebra)
# Basic features of the programming language C/C++, Integrated development environment
*# Semantic approach: principles of propositional logic, conjunctive normal form (CNF), complete sets, meta-theorems
# Basic data types
*# Syntactic approach: axioms, Modus Ponens rule, meta-theorems (abduction, inversion), validity and completeness theorems.
# Operators, Arithmetic / Logic expressions
* Basic Programming Techniques with programming language C/C++
# Assignment operators
*# Input/Output data, type of structures and variables
# Input / Output  
*# Flow control if/else
# Program flow control commands
*# Loop structures: for, while, do-while
# Selection commands
*# Defensive Programming
# Loop commands
*# Arrays (one dimension and multidimensions)
# Arrays
# Introduction to user defined functions
# Applications, examples, and exercises in problem solving of simple and complex problems using C/C++
# The course includes laboratory exercises


=== Teaching and Learning Methods - Evaluation ===
=== Teaching and Learning Methods - Evaluation ===

Αναθεώρηση της 00:57, 29 Σεπτεμβρίου 2022

Undergraduate Courses Outlines - Department of Mathematics

General

School

School of Science

Academic Unit

Department of Mathematics

Level of Studies

Undergraduate

Course Code

MAY242

Semester 2
Course Title

Introduction to Computer Science

Independent Teaching Activities

Lectures and laboratory exercises (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 offers an introduction to the Computer Science. It mainly focuses on how to algorithmically solve simple and complex mathematical problems. It provides basic programming techniques using a high-level programming language such as C/C ++. Moreover, the course analyzes the basic numbering systems, it provides the basic arithmetic operations in different numerical systems and refers to the representation of information on computer systems. Additionally, the course provides basic concepts of mathematical logic, such as Boolean algebra, and principles that govern the semantic and syntactic approach of propositional logic. Upon completion of the course, the students will be able to:

  • Recognize different numbering systems and process number representations on computer systems.
  • Understand basic concepts and theorems of propositional logic, make use of metatheorems of propositional logic and understand the formal proof of logical expressions through the syntactic approach.
  • Describe basic algorithms for solving simple and complex mathematical problems and implement algorithms by using basic concepts of a programming language (C/C ++).

The course includes laboratory exercises in which the participation is obligatory.

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
  • Development of algorithmic thinking

Syllabus

  • Introduction to Numerical Representation
    1. Arithmetic operations in numerical systems
    2. Representations of binary numbers
  • Introduction to Mathematical Logic (Boolean Algebra)
    1. Semantic approach: principles of propositional logic, conjunctive normal form (CNF), complete sets, meta-theorems
    2. Syntactic approach: axioms, Modus Ponens rule, meta-theorems (abduction, inversion), validity and completeness theorems.
  • Basic Programming Techniques with programming language C/C++
    1. Input/Output data, type of structures and variables
    2. Flow control if/else
    3. Loop structures: for, while, do-while
    4. Defensive Programming
    5. Arrays (one dimension and multidimensions)

Teaching and Learning Methods - Evaluation

Delivery

Face to face

Use of Information and Communications Technology

Yes

Teaching Methods
Activity Semester Workload
Lectures (13X5) 65
Self study 100
Exercises 22.5
Course total 187.5
Student Performance Evaluation

Written final exam (70%) comprised of:

  • multiple choice questions related to the theory of computers and the programming language C/C++
  • questions about the design and implementation of algorithm for the solution of problems using C/C++

Laboratory exercises (30%).

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:

  • Η. Deitel and P. Deitel, C++ Προγραμματισμός 6η Εκδοση, Εκδόσεις Μ. Γκιούρδας, 2013. Κωδικός Ευδ: 12536819.
  • Κωδικός Ευδόξου [77106820]: Διακριτά μαθηματικά και εφαρμογές τους, 8η Έκδοση, Kenneth H. Rosen
  • Κωδικός Ευδόξου [86055409]: Διακριτά μαθηματικά, Hunter David (Συγγρ.)
  • Κωδικός Ευδόξου [77109607]: Εισαγωγή στην πληροφορική, Evans Alan, Martin Kendall, Poatsy Mary Anne.
  • Ζάχος, Ε., Παγουρτζής, Α., Σούλιου, Θ., 2015. Θεμελίωση επιστήμης υπολογιστών. [ηλεκτρ. βιβλ.] Αθήνα:Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών. Διαθέσιμο στο: http://hdl.handle.net/11419/545
  • [Περιοδικό / Journal] IEEE Transactions on Computers