Konrad Zuse (1910-1995) was a construction engineer for the Henschel Aircraft Company in Berlin, Germany at the beginning of WWII. Konrad Zuse earned the semiofficial title of "inventor of the modern computer" for his series of automatic calculators, which he invented to help him with his lengthy engineering calculations. Zuse has modestly dismissed the title while praising many of the inventions of his contemporaries and successors as being equally if not more important than his own.
One of the most difficult aspects of doing a large calculation with either a slide rule or a mechanical adding machine is keeping track of all intermediate results and using them, in their proper place, in later steps of the calculation. Konrad Zuse wanted to overcome that difficulty. He realized that an automatic-calculator device would require three basic elements: a control, a memory, and a calculator for the arithmetic.
In 1936, Zuse made a mechanical calculator called the Z1, the first binary computer. Zuse used it to explore several groundbreaking technologies in calculator development: floating-point arithmetic, high-capacity memory and modules or relays operating on the yes/no principle. Zuse's ideas, not fully implemented in the Z1, succeeded more with each Z prototype.
In 1939, Zuse completed the Z2, the first fully functioning electro-mechanical computer.
Konrad Zuse completed the Z3 in 1941, with recycled materials donated by fellow university staff and students. This was the world's first electronic, fully programmable digital computer based on a binary floating-point number and switching system. Zuse used old movie film to store his programs and data for the Z3, instead of using paper tape or punched cards. Paper was in short supply in Germany during the war.
According to "The Life and Work of Konrad Zuse" (by Horst Zuse)
In 1941, the Z3 contained almost all of the features of a modern computer as defined by John von Neumann and his colleagues in 1946. The only exception was the ability to store the program in the memory together with the data. Konrad Zuse did not implement this feature in the Z3, because his 64-word memory was too small to support this mode of operation. Due to the fact that he wanted to calculate thousands of instructions in a meaningful order, he only used the memory to store values or numbers.
The block structure of the Z3 is very similar to a modern computer. The Z3 consisted of separate units, such as a punch tape reader, control unit, floating-point arithmetic unit, and input/output devices.
Konrad Zuse wrote the first algorithmic programming language called 'Plankalkül' in 1946, which he used to program his computers. He wrote the world's first chess-playing program using Plankalkül.
The Plankalkül language included arrays and records and used a style of assignment (storing the value of an expression in a variable) in which the new value appears in the right column. An array is a collection of identically typed data items distinguished by their indices (or "subscripts"), for example written something like A[i,j,k], where A is the array name and i, j and k are the indices. Arrays are best when accessed in an unpredictable order. This is in contrast to lists, which are best when accessed sequentially.
Zuse was unable to convince the Nazi government to support his work for a computer based on electronic valves. The Germans thought they were close to winning the War and felt no need to support further research.
The Z1 through Z3 models were destroyed during the war along with Zuse Apparatebau, the first computer company that Zuse formed in 1940. Zuse left for Zurich to finish his work on the Z4, smuggling the Z4 from Germany in a military truck, which he hid in stables on route to Zurich, Switzerland. He completed and installed the Z4 in the Applied Mathematics Division of Zurich's Federal Polytechnical Institute, in use there until 1955. The Z4 had a mechanical memory with a capacity of 1,024 words and several card readers. Zuse no longer had to use movie film to store programs; he could now use punched cards. The Z4 had punches and various facilities to enable flexible programming including address translation and conditional branching. In 1949, he moved back to Germany to form a second company called Zuse KG for the construction and marketing of his designs. Zuse later rebuilt models of the Z3 in 1960 and the Z1 in 1984.