トップページへ

2023 Faculty Courses School of Computing Undergraduate major in Mathematical and Computing Science

Introduction to Computer Science

Academic unit or major
Undergraduate major in Mathematical and Computing Science
Instructor(s)
Youyou Cong / Ryo Kashima / Keisuke Tanaka
Class Format
Lecture/Exercise (Face-to-face)
Media-enhanced courses
-
Day of week/Period
(Classrooms)
7-8 Mon (W8E-307(W833)) / 5-8 Thu (W8E-307(W833))
Class
-
Course Code
MCS.T204
Number of credits
210
Course offered
2023
Offered quarter
1Q
Syllabus updated
Jul 8, 2025
Language
Japanese

Syllabus

Course overview and goals

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.

Course description and aims

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

Keywords

computer science, programming, scientific ethics

Competencies

  • 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/Objectives

Course schedule Objectives
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.

Study advice (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/)

Evaluation methods and criteria

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

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.