Presentation is loading. Please wait.

Presentation is loading. Please wait.

ALGORITHMS CSC 171 LECTURE 1. What is “Computer Science”? What is “Science”? What is a “Computer”? What is “Computation”?

Similar presentations


Presentation on theme: "ALGORITHMS CSC 171 LECTURE 1. What is “Computer Science”? What is “Science”? What is a “Computer”? What is “Computation”?"— Presentation transcript:

1 ALGORITHMS CSC 171 LECTURE 1

2 What is “Computer Science”? What is “Science”? What is a “Computer”? What is “Computation”?

3 Computer Science Is Computer Science, “science”? Is computation part of nature? Is information part of nature? How do we study computation?

4 SCIENCE

5 History Muhammad ibn Musa Al'Khowarizmi (ca. 825) Described rules to be followed for arithmetic using Hindu numerals. A written process to be followed to achieve some goal Translated into Latin in 1202 by Leonardo Fibonacci Al’Khowarazimi -> “Algorithmus”

6 More Recent History Charles Babbage (1791-1871) – The father of computing – Difference Engine & Analytical Engine Ada Lovelace (1815-1852) – First programmer John Atanasoff – First electronic digital computer 1937-42 Maucly & Eckert – 1943-45 - ENIAC – First all electronic computer

7 COMPUTER ARCHITECTURE

8 ALGORITHM An algorithm is a procedure for solving problems in terms of : 1. The actions to be executed (statements) 2. The order in which these actions are executed Algorithms are independent of any specific computer language which may be used to for their implementation. – Often expressed informally as pseudocode.

9 Some Algorithms How do I get to the pit? – Your classmate – Your parents – A robot Move forward x meters Turn right y radians

10 Statements What do we need for “Statements” Syntax – the form in which statements may be written Semantics – “meaning” attached to syntactic constructs

11 Example Syntax – F = (9/5) * C + 32 – 2 F 3=+)C 9 * / 5( Semantics 1. Take the Celsius temperature 2. Multiply it by 1.8 3. Add 32 4. The result is the Fahrenheit temperature

12 How do Computers represent information? Computers are switches Switches are “on” or “off” Suppose we want to represent number We can decide to interpret (semantics) an “on” switch as a “1” and an “off” switch as a “0”

13 Language What does language do? – Transfer information (describe) – Action oriented languages (directions) – Functional languages Area = Pi * Radius * Radius – Object oriented languages “model” the world around us

14 Programming Languages Three levels of programming languages – Low level Machine Languages (binary codes) – Assembly Languages (mid level) Symbolic programming Requires an assembler to translate assembly programs into machine program – High Level Conceptual programming Requires a compiler to translate high-level languages into assembly level languages

15 Computer Languages To a human we might say: – Write: “Hello, CSC 171” To a computer we might say – System.out.println(“Hello, CSC 171”);

16 JAVA Java is a high-level object oriented language Two types of Java programs are Applets – run with web browsers Applications – run “stand alone”

17 A Computer Program public class myFirstProgram { public static void main(String args[]){ System.out.println(“Hello, CSC171”); }

18 The Containment Pattern Starts with some “begin” symbol – {([“ Ends with some “end” symbol – “])} General Pattern + +

19 Named containment + + + +

20 A Computer Program public class myFirstProgram { public static void main(String args[]){ System.out.println(“Hello, CSC171”); }

21 SOFTWARE DEVELOPMENT

22 ERRORS Syntax errors System.ouch.print("..."); System.out.print("Hello); – Detected by the compiler Logic errors System.out.print("Hell"); – Detected (hopefully) through testing

23 EDIT- COMPILE- TEST LOOP


Download ppt "ALGORITHMS CSC 171 LECTURE 1. What is “Computer Science”? What is “Science”? What is a “Computer”? What is “Computation”?"

Similar presentations


Ads by Google