1/8
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
When doing serious, large-scale scientific computing or computational science, what operating system environment is this carried out on and what type of programming language is used to carry it out?
Serious large-scale scientific computing or computational science is done only with compiled languages in a Unix or Linux environment.
Name two examples of both compiled and interpreted languages
Compiled languages: Fortran, C, C++
Interpreted languages: Python, R, Matlab
Explain what a ‘low level’ programming language is and give two examples of them
A low-level programming language has no or little abstraction from the processor’s instruction set, and thus is close to the hardware. It deals with registers, memory addresses and call stacks, is optimised for a given system architecture and thus is not well portable.
The first generation is machine code, which runs directly on the processor without a compiler or interpreter. The second generation is assembly language, which provides one abstraction level over machine code and is transformed into the latter by an assembler.
Explain what a ‘high level’ programming language is and give two examples of them
A high-level programming language has a strong abstraction from the hardware details of a particular computer. It deals with variables, arrays, objects, control structures, functions, and focuses on usability by a human programmer rather than on runtime optimisation, at the cost of an abstraction penalty. These languages are portable across a variety of computers.
List an example of each of the four generations of programming languages
First generation: Machine code
Second generation: Assembly code
Third generation: Python
Fourth generation: SQL
What is a Turing machine and a Turing-complete programming language?
A Turing machine is an abstract computer that can implement any computer algorithm. A programming language is Turing-complete if it can simulate a Turing machine. Turing-complete languages have the features and constructs necessary to perform general-purpose computations, although they are not all equally good at it.
Name and explain the three flow-control structures in structured programming
e.g. C++, Python

Define structured programming
Structured programming uses only three flow-control structures (sequential, conditional and iterated execution), with sequential or nested but not intertwined go tos. This helps writing code that is easy to read and maintain. e.g. C++, Python.
Explain what procedural programming is
Procedural programming is a subset of structured programming which splits the code into separate procedures, also called functions, (sub)routines or methods, which call each other through clearly defined interfaces. e.g. C++, Fortran, but NOT Java or Python.