ENIAC is just ONE of the first computers!

Defining characteristics of some early digital computers of the 1940s (In the history of computing hardware)

Modelling Problems and Solutions

How to represent the problem in computer world, and how to represent its solution.

Structured programming is a programming paradigm aimed at improving the clarity, quality, and development time of a computer program by making extensive use of subroutinesblock structuresfor and while loops—in contrast to using simple tests and jumps such as the go to statement, which could lead to "spaghetti code" that is difficult to follow and maintain.

In computer sciencecontrol flow (or flow of control) is the order in which individual statementsinstructions or function calls of an imperativeprogram are executed or evaluated.

Variable

In more advanced mathematics, a variable is a symbol that denotes a mathematical object, which could be a number, a vector, a matrix, or even a function. In this case, the original property of "variability" of a variable is not kept (except, sometimes, for informal explanations).

Similarly, in computer science, a variable is a name (commonly an alphabetic character or a word) representing some value represented in computer memory. 

What is computation?

counting, calculating, computing..., and what's more?

本质是状态变化,INPUT  ——>  OUTPUT

Representation - 一种编码方法

computer is a device that can be instructed to carry out arbitrary sequences of arithmetic or logical operations automatically. The ability of computers to follow generalized sets of operations, called programs, enables them to perform an extremely wide range of tasks.

An expression in a programming language is a combination of one or more constants, variables, operators, and functions that the programming language interprets (according to its particular rules of precedence and of association) and computes to produce ("to return", in a stateful environment) another value. This process, as for mathematical expressions, is called evaluation.