Böhm, Jacopini, and Dijkstra
The theory of programming languages is vast, and one of the important concepts is
structured programming.
We will learn to program using fundamental structures.
Remarkable is the study published in 1966 by
Corrado Böhm and
Giuseppe Jacopini
("
The Structured Programming Theorem"), followed by the work of the Dutch scientist
Edsger W. Dijkstra,
who rooted the notion of
structured programming in 1968. A period of scientific glory,
if you consider that
Neil Armstrong stepped on the Moon the following year...
The principle is this:
Any algorithm that has inputs and outputs, meaning a starting point and an ending point, can be represented
through a combination of three fundamental
control structures called:
• sequence (
linear structure)
• decision (
alternative structure)
• loop (
repetitive structure)
Structured programming allows programs to be written in natural language
(called
pseudocode), independent of the practical language.
Programs are based on calculation algorithms, which can be translated into
flowcharts, like the one below:
We will also use flowcharts in this course. They are super cool, synthesizing the algorithm
and helping you better understand how the program works!
Remember these important details.