{"id":9196,"date":"2025-09-24T23:32:33","date_gmt":"2025-09-24T20:32:33","guid":{"rendered":"https:\/\/www.econ.uoa.gr\/?post_type=course&#038;p=9196"},"modified":"2026-04-17T14:31:13","modified_gmt":"2026-04-17T11:31:13","slug":"csc302-data-structures-and-programming-principles","status":"publish","type":"course","link":"https:\/\/www.econ.uoa.gr\/en\/course\/csc302-data-structures-and-programming-principles\/","title":{"rendered":"CSC302 - Data Structures and Principles of Computer Programming (semester 6)"},"content":{"rendered":"<p><strong>Course Description<\/strong><\/p>\n<p><strong>\u039c\u03ac\u03b8\u03b7\u03bc\u03b1: \u0394\u039f\u039c\u0395\u03a3 \u0394\u0395\u0394\u039f\u039c\u0395\u039d\u03a9\u039d \u039a\u0391\u0399 \u0391\u03a1\u03a7\u0395\u03a3 \u03a0\u03a1\u039f\u0393\u03a1\u0391\u039c\u039c\u0391\u03a4\u0399\u03a3\u039c\u039f\u03a5 \u03a5\u03a0\u039f\u039b\u039f\u0393\u0399\u03a3\u03a4\u03a9\u039d<\/strong><\/p>\n<p><strong>Code:<\/strong><strong>CSC<\/strong><strong>302<\/strong><\/p>\n<p><strong>\u0395\u03be\u03ac\u03bc\u03b7\u03bd\u03bf: 6 (\u0395\u03b1\u03c1\u03b9\u03bd\u03cc)<\/strong><\/p>\n<p><strong>\u0394\u03b9\u03b4\u03ac\u03c3\u03ba\u03c9\u03bd:\u00a0\u0393. \u03a1\u03b7\u03b3\u03cc\u03c0\u03bf\u03c5\u03bb\u03bf\u03c2<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Content<\/strong><\/p>\n<ul>\n<li>Writing the first program in Python implementing the concepts of variables, strings, functions, loops and conditions, and branching<\/li>\n<li>Graphs and environments (pip, matplotlib)<\/li>\n<li>Modules and packages (numpy)<\/li>\n<li>Understanding the subtle nuances of lists, sets, dictionaries, objects, and classes<\/li>\n<li>Working with data in Python, such as reading and writing files, loading, working with, and storing data with Panda<\/li>\n<\/ul>\n<p><strong>Learning outcomes<\/strong><\/p>\n<p>At the end of the course, our students should be able to:<\/p>\n<p><strong>(a) Knowledge and understanding<\/strong><\/p>\n<p>demonstrate knowledge and understanding of data structures and programming principles<\/p>\n<p><strong>(b) Applied knowledge and understanding<\/strong><\/p>\n<p>have developed problem-solving capabilities using programming methods<\/p>\n<p><strong>(c) General cognitive skills<\/strong><\/p>\n<ul>\n<li>have assimilated knowledge of a) data structures, b) the role of information systems in business development and c) program development methodologies, acquiring the ability to handle the complexity of programming<\/li>\n<li>have developed analytical skills<\/li>\n<li>have developed synthetic thinking skills<\/li>\n<li>have developed reflective computer usage characteristics<\/li>\n<\/ul>\n<p><strong>(d) Learning strategies<\/strong><\/p>\n<ul>\n<li>have learned to study guided, self-directed and in collaboration with others<\/li>\n<li>have learned to manage their time effectively, whether working alone or collectively<\/li>\n<li>have learned to search for information<\/li>\n<\/ul>\n<p><strong>(e) Direct skills<\/strong><\/p>\n<ul>\n<li>have acquired skills in the Python programming language<\/li>\n<li>have acquired skills in the operational use of Python for program development<\/li>\n<li>learn to work in the Python environment, as a development tool in data science<\/li>\n<\/ul>\n<p><strong>With<\/strong><strong>two<\/strong><strong>words<\/strong><strong>:<\/strong><\/p>\n<ul>\n<li>Install and run the Python interpreter<\/li>\n<li>Create and execute Python programs<\/li>\n<li>Understand the concepts of file I\/O<\/li>\n<li>Be able to read data from a text file using Python<\/li>\n<li>Plot data using appropriate Python visualization libraries<\/li>\n<li>To learn how to design and program Python applications<\/li>\n<li>To learn how to use lists, tuples, and dictionaries in Python programs<\/li>\n<li>To define the structure and components of a Python program<\/li>\n<li>To learn how to write functions and pass arguments in Python<\/li>\n<li>To employ environments<\/li>\n<\/ul>\n<p><strong>Activities and workload (hours per semester)<\/strong><\/p>\n<p>Lectures, 40<\/p>\n<p>Laboratory, 40<\/p>\n<p>Study, problem solving and program development, 100<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Technological requirements<\/strong><\/p>\n<p>Students must have access to a computer with Internet capabilities and a relevant connection. For online connections, they must have a headset with a microphone for use in webex sessions.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Assignments and assessment<\/strong><\/p>\n<p><strong>Tasks<\/strong><\/p>\n<p>Students must attend 10 out of 13 lectures and participation in the laboratory is mandatory. There are weekly study and planning assignments.<\/p>\n<p><strong>Rating<\/strong><\/p>\n<p>The grading of laboratory work gives 40% of the grade and the final exam gives 60% of the grade, but the prerequisite for promotion in the course is the base of 20% and 30% respectively.<\/p>\n<p><strong>Eclass URL<\/strong><\/p>\n<p><a href=\"https:\/\/eclass.uoa.gr\/courses\/ECON106\/\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/eclass.uoa.gr\/courses\/ECON106\/<\/a><\/p>\n<p>&nbsp;<\/p>\n<p><strong>\u0392\u03b9\u03b2\u03bb\u03b9\u03bf\u03b3\u03c1\u03b1\u03c6\u03af\u03b1<\/strong><\/p>\n<ol>\n<li>N. Avouris, M. Koukias, V. Paliouras, K. Sgarbas, Python, Introduction to Computers, University Press of Crete, 4th Edition, Heraklion 2018<\/li>\n<li>AB Downey, Think in Python, Kleidaritmos Publications, Athens 2020<\/li>\n<li>TR Padmanbhan. Programming with Python, Springer, Singapore 2016<\/li>\n<li>The ebook of python from python.org:<\/li>\n<li>C. R. Severance, Python for Everybody \u2013 Exploring Data Using Python 2009<\/li>\n<\/ol>","protected":false},"parent":0,"template":"","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":""},"course-type":[67,94,86],"semester":[83],"class_list":{"0":"post-9196","1":"course","2":"type-course","3":"status-publish","5":"course-type-eleftheris-epilogis","6":"course-type-94","7":"course-type-86","8":"semester-83"},"acf":[],"_links":{"self":[{"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/course\/9196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/course"}],"about":[{"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/types\/course"}],"wp:attachment":[{"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/media?parent=9196"}],"wp:term":[{"taxonomy":"course-type","embeddable":true,"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/course-type?post=9196"},{"taxonomy":"semester","embeddable":true,"href":"https:\/\/www.econ.uoa.gr\/en\/wp-json\/wp\/v2\/semester?post=9196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}