Computer Science 111 Fundamentals of Programming I Introduction
Three Fundamental Ideas of CS Information processing Algorithms Automation
Information Processing Began over 2500 years ago with the invention of writing in ancient Mesopotamia and Greece –Rhetoric: use of symbols in ordinary writing –Mathematics: use of symbols to represent abstract systems of ideas and chains of reasoning –Computing: automatic symbolic information processing
An Algorithm Is... A description of a series of steps that leads to the solution of a problem Examples: –Make a pizza from scratch –Give directions to the soccer field –Change a flat tire on an automobile
Example: Make Pancakes 1.Beat two eggs 2.Add 2 Tb. brown sugar 3.Add 1/2 cup of milk 4.Add 1 Tb. melted butter 5.Add 1 cup self-rising flour 6.Pour batter onto griddle and cook until done
Automation If we can design an algorithm to solve a problem... Then we can (in principle) build a real computer to automate the solution
A Universal Machine Some computers are highly specialized, others are general purpose A general purpose computer can (in principle) automate the solution of any algorithmic problem
Algorithms and Programs Algorithms are abstract ideas, pure thought-stuff Programs express algorithms in particular programming languages, such as –Basic –FORTRAN –C++ –Java –Python –Lisp
Programs and Computing A stored program computer can be reused for many different types of problems Build a general-purpose computer once and then build specialized solutions as needed
For Monday Read Chapter 1 of the textbook and start Chapter 2