The essence of “computation” is quite simple: four basic arithmetic operations, zero test, and iteration. What is executed on computers is a “program” consisting of such very simple operations. Computer Science is a field of science and engineering that investigates various methods for realizing what we want to do as “computation” so that it can be executed on computers. This course introduces key concepts and methods for analyzing tasks and problems from the computational viewpoint. This new view should be a key to not only using of computers but also for understanding things in any other fields of science and engineering.
At the end of this course students are able to:
1) Explain how various objects are encoded as binary strings and processed in computers.
2) Understand how a computation is specified as a program.
3) Explain basic concepts used in programming such as variable, branch, iteration, array, and subroutine.
4) Understand the basic structure of computers as a software system as well as a hardware system.
Digitalization, basis of computation, computer architecture, program, programming, software, operating system
Specialist skills | Intercultural skills | Communication skills | ✔ Critical thinking skills | ✔ Practical and/or problem-solving skills |
Lecture and programming exercise are given in turn. Be sure to check where a class is held every time. In each class, a homework assignment or a programming project assignment is given for checking your understanding.
Course schedule | Required learning | |
---|---|---|
Class 1 | Introduction to the basis of computation: digitalization, basic operations for computation, program | Write basic programs for simple tasks. |
Class 2 | Programming exercise by using basic operations. | Understand a way to construct programs and execute them on a computer. |
Class 3 | Basic programming tools: Array | Understand the concept of array and its usage. |
Class 4 | Programming exercise by using arrays. | Construct programs using array. |
Class 5 | Basic programming tools: string, subroutine | Understand the notions of string and subroutine and their usage. |
Class 6 | Programming exercise by using strings and subroutines. | Construct programs for string processing by using subroutines. |
Class 7 | Introduction to computer architecture and computer software systems. | Understand the basics of computer architecture and software systems. |
Class 8 | Summary of the course. | Review the fundamentals of computation that students experienced through lectures and programming exercises. |
None required.
Osamu Watanabe, Computer Science (in Japanese), Maruzen Science Pallet, 2015, ISBN 978-621-08972-9.
Other materials are either provided during class or can be found on OCW-i.
Students' course scores are determined based on project assignments (about 70%) and a final exam (about 30%).
No prerequisites are necessary, but enrollment in Information Literacy I (LAS.I111) is desirable.