Presentation on theme: "Introduction to Programming. Prof. George Zolla Prof. Gary Porter (IS 2020)"— Presentation transcript:
Introduction to Programming. Prof. George Zolla Prof. Gary Porter (IS 2020)
Programs b A program is a set of step- by-step instructions that directs the computer to do the tasks you want it to do and produce the results you want.
Programming Languages b A programming language is a set of rules that provides a way of telling a computer what operations to perform.
What Can a Program Do? b A program can only instruct a computer to: Read InputRead Input SequenceSequence CalculateCalculate Store dataStore data Compare and branchCompare and branch Iterate or LoopIterate or Loop Write OutputWrite Output
Sequence Control Structures b Sequence control structures direct the order of program instructions. b The fact that one instruction follows another—in sequence—establishes the control and order of operations.
Calculate b A program can instruct a computer to perform mathematical operations. Add 1 to Counter
Store b A program will often instruct a computer to store intermediate results. Place 1 in Counter
Compare and Branch b A program can instruct a computer to compare two items and do something based on a match or mismatch which, in turn, redirect the sequence of programming instructions. There are two forms:There are two forms: IF-THENIF-THEN IF-THEN-ELSEIF-THEN-ELSE
IF-THEN Test condition p falsetrue Entry Exit True statement a
IF-THEN-ELSE falsetrue Entry Exit Test condition p “true” statement a “false” statement a
Iterate b A program loop is a form of iteration. A computer can be instructed to repeat instructions under certain conditions. No
Iteration Control Structures b Iteration control structures are looping mechanisms. b Loops repeat an activity until stopped. The location of the stopping mechanism determines how the loop will work: b Leading decisions b Trailing decisions
Leading Decisions b If the stop is at the beginning of the iteration, then the control is called a leading decision. b The command DO WHILE performs the iteration and places the stop at the beginning.
DO WHILE Loop No Yes Entry Exit Test condition p Loop statement a
Trailing Decisions b If the stop is at the end of the iteration, the control mechanism is called a trailing decision. b The command DO UNTIL performs the iteration and puts the stop at the end of the loop.
DO UNTIL Loop Loop statement a NoYes Entry Test condition p Exit
Programs are Solutions to Problems b Programmers arrive at these solutions by using one or more of these devices: b Logic flowcharts b Structure charts b Pseudocode b Structured Programming
Logic Flowcharts b These represent the flow of logic in a program and help programmers “see” program design.
Terminator. Shows the starting and ending points of the program. A terminator has flowlines in only one direction, either in (a stop node) or out (a start node). Data Input or Output. Allows the user to inputdata and results to be displayed. Processing. Indicates an operation performed by the computer, such as a variable assignment or mathematical operation. Decision. The diamond indicates a decision structure. A diamond always has two flowlines out. One flowlineout is labeled the “yes” branch and the other is labeled the “no” branch. Predefined Process. One statement denotes a group of previously defined statements. For instance, “Calculate m!” indicates that the program executes the necessary commands to compute m factorial. Connector. Connectors avoid crossing flowlines, making the flowchart easier to read. Connectors indicate where flowlines are connected. Connectors come in pairs, one with a flowline in and the other with a flowline out. Off-page connector. Even fairly small programs can have flowcharts that extend several pages. The off-page connector indicates the continuation of the flowchart on another page. Just like connectors, off-page connectors come in pairs. Flowline. Flowlines connect the flowchart symbols and show the sequence of operations during the program execution. Common Flowchart Symbols
Start sum=0 Input price sum=sum+price More items? tax=sum x total=sum+tax Output sum, tax, and total Stop No Yes Flowchart for a Cash Register Program
Structure Charts b Structure charts illustrate the structure of a program by showing independent hierarchical steps. b Major divisions are subdivided into smaller pieces of information.
Psuedocode b This device is not visual but is considered a “first draft” of the actual program. b Pseudocode is written in the programmer’s native language and concentrates on the logic in a program—not the syntax of a programming language.
sum=0 While More items do Input price sum=sum+price End While tax=sum x total=sum+tax Output sum, tax, total Pseudocode for a Cash Register Program
Structured Programming b Structured program languages lend themselves to flowcharts, structure charts, and pseudocode. b Structured programming languages work best where the instructions have been broken up into small, manageable parts.
Analyze the problem Design the solution algorithm Design the user interface Write the code Test and debug the program Complete the documentation The Program Development Cycle
Levels of Programming Languages b Machine language b Assembly Language b High Level Languages b Fourth Generation Languages (4GL)
Machine Languages b different for each computer processor
Assembly Languages b different for each computer processor mainproc pay mov ax, dseg mov ax, 0b00h add ax, dx mov a1, b1 mul b1, ax mov b1, 04h
High-Level Languages b Higher Level Languages Use traditional programming logic where the programming instructions tell the computer what to do and how to perform the required operations.Use traditional programming logic where the programming instructions tell the computer what to do and how to perform the required operations. b 4GLs Use high-level English-like instructions to specify what to do, not how to do it.Use high-level English-like instructions to specify what to do, not how to do it.
Interpreter vs Compiler b Interpreter Translates instructions to machine code line- by-line.Translates instructions to machine code line- by-line. b Compiler Translates the entire program to machine code before running it.Translates the entire program to machine code before running it.
Types of Programming Languages b Machine language b Procedure-oriented languages b Object-oriented languages b Event-driven languages
Procedure-Oriented Languages b FORTRAN b COBOL b Pascal b C b Ada
OOED Languages b Object-oriented languages SmalltalkSmalltalk C++C++ Ada 95Ada 95 b Event-driven languages Visual BasicVisual Basic most Visual languagesmost Visual languages
Programmer’s Lingo Program - detailed set of instructions for a computer Programming Language - tool used to create a program; defined by semantics and syntax Semantics - the meaning of words in a language Syntax - rules for combining symbols of a language
Programmer’s Lingo Source Code (code) Source Code (code) - program you write using a programming language Interpreter Interpreter - translates and executes source code statement by statement