2016 Introduction to Computer Science

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Undergraduate major in Mathematical and Computing Science
Instructor(s)
Kashima Ryo  Aotani Tomoyuki 
Course component(s)
Lecture / Exercise
Day/Period(Room No.)
Mon7-8(W833)  Thr5-8(W833)  
Group
-
Course number
MCS.T204
Credits
3
Academic year
2016
Offered quarter
1Q
Syllabus updated
2016/4/27
Lecture notes updated
2016/6/1
Language used
Japanese
Access Index

Course description and aims

This course gives an overview of programming, including logic gates, machine codes, low-level and high-level programming languages, theory of computability and complexity, and verification of programs. Ethical issues in science are also discussed. Programming exercise is provided.
This course is the starting point of all the studies in our department of Mathematical and Computing Science.

Student learning outcomes

At the end of this course, students will acquire basic knowledge and skills in programming.

Keywords

programming, machine code, high-level programming language, control flow, data structure, computability, program verification, ethics of science.

Competencies that will be developed

Intercultural skills Communication skills Specialist skills Critical thinking skills Practical and/or problem-solving skills
- - -

Class flow

Lecture and programming excercise.

Course schedule/Required learning

  Course schedule Required learning
Class 1 introduction, programming paradigm Instructed in the class.
Class 2 logic gate, boolean algebra Instructed in the class.
Class 3 adder, flip-flop Instructed in the class.
Class 4 machine code Instructed in the class.
Class 5 high-level programming language, compiler Instructed in the class.
Class 6 floating point number, precision in computation Instructed in the class.
Class 7 control flow (1): conditional branching, loop Instructed in the class.
Class 8 control flow (2): function call, recursion Instructed in the class.
Class 9 data structure (1): tuple, list, pattern matching Instructed in the class.
Class 10 data structure (2): higher-order function, polymorphism Instructed in the class.
Class 11 computational complexity, computability Instructed in the class.
Class 12 program verification (1): model checking Instructed in the class.
Class 13 program verification (2): Hoare logic Instructed in the class.
Class 14 ethics of science Instructed in the class.
Class 15 ethics of science Instructed in the class.

Textbook(s)

unfixed

Reference books, course materials, etc.

unfixed

Assessment criteria and methods

Students’ course scores are based on final exams (30%), programming excercise (60%), and other exercise problems (10%).

Related courses

  • LAS.I111 : Information Literacy I
  • LAS.I112 : Information Literacy II
  • LAS.I121 : Computer Science I
  • LAS.I122 : Computer Science II

Prerequisites (i.e., required knowledge, skills, courses, etc.)

Only the students of Department of Mathematical and Computing Science can take this course.
Students must have successfully completed Information Literacy I and II (LAS.I111, LAS.I112) or have equivalent knowledge.

Page Top