Other Flashcards
Algorithm
- Step by step method for accomplishing some task
- A set of rules for solving a problem a finite number of steps
A good algorithm
- specifies the sequence of events and the details of each step
- unambiguous
- must stop
- input
- output
- effective
Algorithm creation
- analyze the problem
- design an algorithm solution
- implement the algorithm
- test the program
Computer science
Computer science is the study of the storage, transformation, and transfer of information
The field encompasses both the theoretical study of algorithm and the practical problems involved in implementing them in terms of computer software and hardware
Machine code
- is interpretable by machines but not readable for humans
- two main parts
- opcode: some sort of instruction
- arguements: can be registers of raw values
Compiler
Is a program that translates code into Machine code
Numerical analysis
Is concerned with accurate, efficient approximations of solutions to problems of continuous mathematics
In other words efficient algorithms for approximating real and complex math
Where is numerical analysis used
- ENIAC
- calculators
- mathematical modelling of natural systems
- robots and manufacturing
- gaming
Compiled languages
- Ada
- C
- C++
- Go
- FORTRAN
- Objective-C
- Pascal
Interpreted languages
- Javascript
- Lisp
- MATLAB
- Perl
- Python
- Ruby
- Shell Scripts
Virtual machine languages
- Java
- C#
- F#
- Visual Basic .NET
FORTRAN
- the first widely used programming language
- designed in 1950s
Round off error
The error introduced by representing real, continuous numbers using a finite, discrete number system
Stability
The measure of an algorithms effect on the propagation of round off error
Truncation error
The error resulting from approximating an infinite mathematical process with a finite computer algorithm