2023 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)
Cong Youyou  Kashima Ryo  Tanaka Keisuke 
Class Format
Lecture / Exercise    (Face-to-face)
Media-enhanced courses
Day/Period(Room No.)
Mon7-8(W8E-307(W833))  Thr5-8(W8E-307(W833))  
Group
-
Course number
MCS.T204
Credits
3
Academic year
2023
Offered quarter
1Q
Syllabus updated
2023/4/5
Lecture notes updated
-
Language used
Japanese
Access Index

Course description and aims

This course consists of computer science lectures, programming lectures, and programming exercises.
The computer science lectures cover topics related to computers and the theory of computation.
The programming lectures and exercises introduce recipes for solving problems through programming in the Scala language.
The last lecture discusses ethical issues in science.
This course is the starting point of all studies in the Department of Mathematical and Computing Science.

Student learning outcomes

By taking this course, students will acquire basic knowledge and skills in computer science and programming.

Keywords

computer science, programming, scientific ethics

Competencies that will be developed

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

Class flow

The course consists of lectures and programming exercises.

Course schedule/Required learning

  Course schedule Required learning
Class 1 (Computer Science Lecture 1) History of computers & representation of data Instructed in the class.
Class 2 (Programming Lecture 1) Function definition Instructed in the class.
Class 3 (Programming Exercise 1) Function definition Instructed in the class.
Class 4 (Computer Science Lecture 2) Boolean algebra and logic circuits Instructed in the class.
Class 5 (Programming Lecture 2) Booleans and algebraic data types Instructed in the class.
Class 6 (Programming Exercise 2) Booleans and algebraic data types Instructed in the class.
Class 7 (Computer Science Lecture 3) How programs are executed Instructed in the class.
Class 8 (Programming Lecture 3) Complex data types Instructed in the class.
Class 9 (Programming Exercise 3) Complex data types Instructed in the class.
Class 10 (Computer Science Lecture 4) Computability & computational complexity Instructed in the class.
Class 11 (Programming Lecture 4) Lists, recursion, and higher-order functions Instructed in the class.
Class 12 (Programming Exercise 4) Lists, recursion, and higher-order functions Instructed in the class.
Class 13 (Programming Lecture 5) Various recursive data types Instructed in the class.
Class 14 (Programming Exercise 5) Various recursive data types Instructed in the class.
Class 15 (Computer Science Lecture 5) Lambda calculus Instructed in the class.
Class 16 (Programming Lecture 6) Advanced forms of recursion Instructed in the class.
Class 17 (Programming Exercise 6) Advanced forms of recursion Instructed in the class.
Class 18 (Computer Science Lecture 6) Logic and programming Instructed in the class.
Class 19 (Programming Lecture 7) The N puzzle Instructed in the class.
Class 20 (Programming Exercise 7) The N puzzle Instructed in the class.
Class 21 (Computer Science Lecture 7) Ethics of science Instructed in the class.

Out-of-Class Study Time (Preparation and Review)

To achieve high learning outcomes, students are encouraged to spend a certain amount of time outside of the class on preparation and review (including for assignments), as specified by the Tokyo Institute of Technology Rules on Undergraduate Learning (東京工業大学学修規程) and the Tokyo Institute of Technology Rules on Graduate Learning (東京工業大学大学院学修規程), for each class.
They should do so by referring to textbooks and other course material.

Textbook(s)

Instructed in the class.

Reference books, course materials, etc.

Felleisen et al. How to Design Programs, Second Edition. (https://htdp.org/)

Assessment criteria and methods

Evaluation is done based on the performance in paper-based quizzes (30%) and programming exercises (70%).
Note that earning credits requires gaining 60 points or more in both quizzes and exercises.

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 students in Department of Mathematical and Computing Science may take this course.
Students must have successfully completed Information Literacy I and II (LAS.I111, LAS.I112) or have equivalent knowledge.

Page Top