Procedural Programming
|
|
- Marion Russell
- 6 years ago
- Views:
Transcription
1 Procedural Programming Lecture 2 - Summer Semester 2016 Control Structures Flow Charts Faculty of Engineering Institute of Computer Engineering
2 What we know so far... Programming is only one step in program development process We use computers to solve problems Therefore, we reduce complex problems into more simple parts applying problem-solving strategies Abstraction cascade: from system to model By algorithms we structure a solution approach into a sequence of instructions to follow for solving a problem Flow of changes to model state Programs are translations of algorithms that we have written in a programming language and which can be understood and executed by computers Instructions (the program) operate on data, which represents the model. Both are stored in the main memory of a computer. 2
3 How to cross the river? A farmer with a fox, a goose, and a sack of corn needs to cross the river. The boat can carry the farmer and only one item at a time. The fox cannot beleftonthesameshoreasthegoose,andthegoosecannotbelefton thesameshoreh as thesack of corn without t the farmer watching thi them. 3
4 How to cross the river? A farmer with a fox, a goose, and a sack of corn needs to cross the river. The boat can carry the farmer and only one item at a time.thefox cannot be leftonthesameshoreasthegoose,andthegoosecannotbeleftonthe same shore as the sack of corn without the farmer watching them. 4
5 Perform according to Program Development Process Buildingupa up self contained model of the problem situation: Restate the problem by collecting allfacts Reduce the problem to relevant parts 5
6 How to cross the river? Restate the problem A farmer with a fox, a goose, and a sack of corn needs to cross the river. The boat can carry the farmer and only one item at a time.thefox cannot be leftonthesameshoreasthegoose,andthegoosecannotbeleftonthe same shore as the sack of corn without the farmer watching them. 6
7 Collect all facts: Overview of model elements (variables) 2 shores 3 items: Fox Goose Sack of corn 1 farmer in a boat 7
8 Collect all facts: Relational constraints on model elements and their values (conditions) One shore is near, one shore is far. Any item and the boat can be only at one shore at a time. The farmer can carry one or none item in the boat. In order to load an item, it must be at the same shore as the boat and the boat must be empty. Goose and fox cannot be at the same shore alone (viz. without t farmer). Goose and sack of corn cannot be at the same shore alone (viz. without farmer). The boat can cross the river from near to far shore or vice versa. In the beginning the boat and all items are at the near shore (INIT STATE). In the end the boat and all items are at the far shore (GOAL STATE). 8
9 Collect all facts: Overview of methods to change model state The boat can cross the river. Items can be loaded and unloaded to the boat. The farmer can judge the criticality of a situtation at a shore. 9
10 Reduce the problem to relevant parts in your model Attribute / Elements: Boat Fox Goose Corn Values: Near shore Far shore Methods: Cross the river Load Unload Safe shore? 10
11 1.2 Solution Design
12 Perform according to Program Development Process Building upa self contained model of the problem situation: Restate the problem by collecting allfacts Reduce the problem to relevant parts Transferring modelof of problem situation into a desired state systematically: Create a step wise change of the model written as algorithm Document solution approach in a commonly accepted way 12
13 Decision making and program flow (1/2) The computer executes a sequences of instructions (program) to change data in its main memory (model state). t Change of data is done by assignment. Values can be the results of e.g. arithmetic operations (value operator value), use of constants and value copies from other addresses. Assignment or assignment statement sets the value (of a variable) stored in a storage cell denoted by an address. Address Content of storage cell Comments adr := con 1 Assignmentof cell Goose Goose with value 1 (here: 1 represents far shore) Storage cell for variable ibl Goose 13
14 Decision making and program flow (2/2) Sequences in algorithm or respective program execution can be interrupted by decisions as a result of checking conditions given in the model state. Depending on the outcome of a decision (usually a logical expression, which is evaluated) alternative ways of continuing model state changes are executed. Programs leave sequences based on (un)conditional jumps. Four basic ways of structuring statements (instructions) are considered: Sequence Decision Repetition Procedure Control Structures are ways of structuring statements controlling the order in which the computer executes statements. 14
15 Program control structures (1/4) Sequence a series of statements that are executed one after another. 15
16 Program control structures (2/4) Decision or selection (branch) is a conditional control structure, which executes different statements and thus yields alternative program flows depending on logical evaluation of certain conditions. 16
17 Program control structures (3/4) Repetition or iteration (loop) is a repetitive control structure, which repeats statements while certain conditions are met. 17
18 Program control structures (4/4) Procedure or subprogram (method) allows to structure the program by breaking it into smaller pieces and assemble them into the final form. 18
19 Flowchart A diagram that represents an algorithm Illustrates a step-wise solution to a given problem Arrows showing flow of control Notation Description Activity: a processing step, which can consist of several statements. Decision: where based on evaluating a condition (commonly a YES NO question) the algorithm continues in executing the respective branch. Input/Output: Information is received or send to user. Start/End State: Total of values the algorithm starts or ends with. 19
20 Flowchart for calculating the absolute value Calculating the absolute value (or modulus) n of a real number n is the non-negative value of n without regard to its sign. The absolute value of a number may be thought of as its distance from zero. 20
21 In the beginning was the GOTO (1/3) -- Example: calculating absolute values in 3AC Address Content of storage cell Comments adr := con 13 Begin of program adr := con if val > 0 then GOTO adr Conditional jump (based on decision) Adr := val * val Simply taking the next instruction the PC points to is one example for an unconditional jump next instruction End of program Storage cell for variable n Storage cell for variable factor 21
22 In the beginning was the GOTO (2/3) -- How to make use of identifiers An identifier (id) is a Address Content of storage cell label. In our 3AC example it exchanges the absolute address of a storage cell by a name. Its comparable to an URL of a website. Identifiers do not change the program but its readability adr := con adr factor := con if val > 0 then GOTO adr Adr := val * val next instruction factor 1 factor 22
23 In the beginning was the GOTO (3/3) Address Content of storage cell Example for n= 13 START adr number := con adr factor := con if val number > 0 then GOTO adr END adr number := val number * val factor END... next instruction... number factor 1 23
24 Perform according to Program Development Process Building upa self contained model of the problem situation: Restate the problem by collecting allfacts Reduce the problem to relevant parts Transferring modelof of problem situation into a desired state systematically: Create a step wise change of the model written as algorithm Document solution approach in a commonly accepted way 24
25 Step-by-Step Solution Design Problem-Solving Technique used here: Reduction Approach we use is comparable to Means-Ends Analysis (MEA) in which the solution of a problem can be described by finding a sequence of actions that lead to a desirable goal Reaching the goal depends on building up associations between particular model state changes and methods that will bring these changes about Represented by flowchart 25
26 Overview of relevant parts for: How to cross the river? Attribute / Elements: Boat Fox Goose Corn Values: Near shore Far shore Methods: Cross the river Load Unload Safe shore? 26
27 Creating a flowchart for: How to cross the river? START INIT STATE END GOAL STATE 27
28 Creating a flowchart for: How to cross the river (1/5) START CROSS THE RIVER CURRENT STATE END We cannot END here, all conditions are violated and nothing has been carried over. 28
29 Creating a flowchart for : How to cross the river? (2/5) START LOAD ITEM CROSS THE RIVER UNLOAD ITEM END CURRENT STATE We cannot END here, since the farmer has to judge which item is safe to carry over. 29
30 Flowchart: How to cross the river? (3/5) START LOAD ITEM CROSS THE RIVER YES SAFE SHORE? NO CURRENT STATE UNLOAD ITEM END We cannot END here, because not all items are carried over to the far shore. 30
31 Creating a flowchart for: How to cross the river? (3/5) START LOAD ITEM SAFE CURRENT STATE YES? NO CROSS GOAL THE RIVER YES STATE? NO UNLOAD ITEM END We cannot do a simple repetition, otherwise we would undo our advancement towards a solution. 31
32 Final flowchart for: How to cross the river? (5/5) YES START LOAD ITEM SAFE? NO Trick: In case of a safe far shore situation return with an empty boat (no items loaded) to near shore, otherwise loadcritical item and return to near shore. CROSS THE RIVER YES SAFE? NO YES UNLOAD ITEM GOAL STATE? END NO CROSS THE RIVER LOAD ITEM CROSS THE RIVER UNLOAD ITEM 32
33 Flowchart and Pseudocode START LOAD ITEM Pseudocode is a kind of structured English for describing algorithms. YES YES SAFE? CROSS THE RIVER UNLOAD ITEM GOAL STATE? END NO NO YES CROSS THE RIVER SAFE? NO LOAD ITEM CROSS THE RIVER UNLOAD ITEM It allows to focus on the logic of the algorithm, which describes the sequence of instructions to follow represented by control structures such as: Sequence Decision IF THEN ELSE ELSE Repetition WHILE DO, REPEAT UNTIL Procedure 33
34 Pseudocode for flowchart: How to cross the river? PROCEDURE RowBoatFromNearToFarShore LoadItem PROCEDURE RowBoatFromFarToNearShore REPEAT IF Safe LoadItem THEN CrossTheRiver UNTIL Safe ELSE CrossTheRiver LoadItem UnloadItem CrossTheRiver ENDPROCEDURE UnloadItem ENDIF ENDPROCEDURE START CALL RowBoatFromNeartoFarShore WHILE NotGoalState DO CALL RowBoatFromFarToNearShore CALL RowBoatFromNeartoFarShore ENDWHILE END 34
35 END of 2nd Lecture
Procedural Programming
Procedural Programming Lecture 2 - Summer Semester 2017 Control Structures Flow Charts Faculty of Engineering Institute of Computer Engineering Practical Training REGISTRATION ends tomorrow Wednesday (26
More informationProcedural Programming & Fundamentals of Programming
Procedural Programming & Fundamentals of Programming Lecture 4 - Summer Semester 2018 & Joachim Zumbrägel Writing a computer program is only one step in the Program Development Process 2 1 What we know
More informationFlowchart & Algorithm
Flowchart & Algorithm 1 What is Algorithm? What is Flowchart? Write down the advantages and disadvantages. Compare them. Flowchart Flowchart is a pictorial or graphical representation of a process. Each
More informationMethod & Tools for Program Analysis & Design
Method & Tools for Program Analysis & Design TMB208 Pemrograman Teknik Kredit: 3 (2-3) 1 Programming Logic and Design, Introductory, Fourth Edition 2 1 Programming Methods Based on structures of programming
More informationSNS COLLEGE OF ENGINEERING,
SNS COLLEGE OF ENGINEERING, COIMBATORE Department of Computer Science and Engineering QUESTION BANK(PART A) GE8151 - PROBLEM SOLVING AND PYTHON PROGRAMMING TWO MARKS UNIT-I 1. What is computer? Computers
More informationCPSC 3740 Programming Languages University of Lethbridge. Control Structures
Control Structures A control structure is a control statement and the collection of statements whose execution it controls. Common controls: selection iteration branching Control Structures 1 15 Howard
More informationControl Structures. Code can be purely arithmetic assignments. At some point we will need some kind of control or decision making process to occur
Control Structures Code can be purely arithmetic assignments At some point we will need some kind of control or decision making process to occur C uses the if keyword as part of it s control structure
More informationCSC 121 Spring 2017 Howard Rosenthal
CSC 121 Spring 2017 Howard Rosenthal Agenda To be able to define computer program, algorithm, and highlevel programming language. To be able to list the basic stages involved in writing a computer program.
More informationBIL101E: Introduction to Computers and Information systems Lecture 8
BIL101E: Introduction to Computers and Information systems Lecture 8 8.1 Algorithms 8.2 Pseudocode 8.3 Control Structures 8.4 Decision Making: Equality and Relational Operators 8.5 The if Selection Structure
More informationAlgorithm: 1. Introduction
Algorithm 1 Algorithm: a finite set of instructions that specify a sequence of operations to be carried out in order to solve a specific problem or class of problems. [Zwass] Properties of algorithms:
More informationIDENTIFY WAYS OF REPRESENTING ALGORITHMS.
IDENTIFY WAYS OF REPRESENTING ALGORITHMS. OBJECTIVES: Identify ways of representing algorithms: Content Representation of algorithms as Pseudocode or Flowcharts; use of flow chart symbols: input/output
More informationSOEE1160: Computers and Programming in Geosciences Semester /08. Dr. Sebastian Rost
SOEE1160 L3-1 Structured Programming SOEE1160: Computers and Programming in Geosciences Semester 2 2007/08 Dr. Sebastian Rost In a sense one could see a computer program as a recipe (this is pretty much
More informationControl Structures. Lecture 4 COP 3014 Fall September 18, 2017
Control Structures Lecture 4 COP 3014 Fall 2017 September 18, 2017 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions or function calls
More informationChapter Two: Program Design Process and Logic
Chapter Two: Program Design Process and Logic 2.1 Chapter objectives Describe the steps involved in the programming process Understand how to use flowchart symbols and pseudocode statements Use a sentinel,
More informationA Quick Review of Chapter 1
A Quick Review of Chapter 1 The core of computing is algorithms Algorithm A well-ordered collection of unambiguous and effectively computable operations that, when executed, produces a result and halts
More informationPROBLEM SOLVING AND PYTHON PROGRAMMING
ALGORITHM UNIT-1 It is defined as a sequence of instructions that describe a method for solving a problem. In other words it is a step by step procedure for solving a problem. Properties of Algorithms
More informationIntroduction. C provides two styles of flow control:
Introduction C provides two styles of flow control: Branching Looping Branching is deciding what actions to take and looping is deciding how many times to take a certain action. Branching constructs: if
More informationK Hinds Section No.2 Problem-Solving and Program Design12
Section No.2 Problem-Solving and Program Design12 Problem Solving To model a program with utility to a problem, we need to implement a number of processes prior to actually writing any code in any programming
More informationFLOW CHART AND PSEUDO CODE
FLOW CHART AND PSEUDO CODE Flowchart A Flowchart is a pictorial representation of an algorithm. The First flowchart is made by John Von Newman in 1945. It is a symbolic diagram of operation sequence, dataflow,
More informationIntroduction to C/C++ Lecture 3 - Program Flow Control
Introduction to C/C++ Lecture 3 - Program Flow Control Rohit Sehgal Nishit Majithia Association of Computing Activities, Indian Institute of Technology,Kanpur rsehgal@cse.iitk.ac.in nishitm@cse.iitk.ac.in
More informationSlide 1. Slide 2. Slide 3. General Problem-Solving. Find the Weight of the Block. General_Problem_Solving_slides.docx 9/7/07 MET 107
Slide 1 General Problem-Solving MET 107 Slide 2 General problem-solving techniques Set aside some time to think about the problem before starting. Draw a sketch of the problem. Understand the overall purpose
More informationCS 199 Computer Programming. Spring 2018 Lecture 5 Control Statements
CS 199 Computer Programming Spring 2018 Lecture 5 Control Statements Control Structures 3 control structures Sequence structure Programs executed sequentially by default Branch structure Unconditional
More information2.2 (a) Statement, subroutine, procedure, function, parameter, loop
Chapter 2.2: The structure of procedural programs 2.2 (a) Statement, subroutine, procedure, function, parameter, loop Procedural programs are ones in which instructions are executed in the order defined
More informationDecision Making -Branching. Class Incharge: S. Sasirekha
Decision Making -Branching Class Incharge: S. Sasirekha Branching The C language programs presented until now follows a sequential form of execution of statements. Many times it is required to alter the
More informationProgramming Logic & Pseudocode. Python Bootcamp, Day 1 Anna Rosen
Programming Logic & Pseudocode Python Bootcamp, Day 1 Anna Rosen Programming 101 Computer programming involves having the user formulate commands that the computer can run for a specific purpose. The computer
More informationIntroduction. Computers, algorithms
Introduction Computers, algorithms Computer mathematical engine that processes programs and data it uses some physical principle, for example: mechanical computers Pascal electronic computers after the
More informationComputers and FORTRAN Language Fortran 95/2003. Dr. Isaac Gang Tuesday March 1, 2011 Lecture 3 notes. Topics:
Computers and FORTRAN Language Fortran 95/2003 Dr. Isaac Gang Tuesday March 1, 2011 Lecture 3 notes Topics: - Program Design - Logical Operators - Logical Variables - Control Statements Any FORTRAN program
More informationCOMSC-051 Java Programming Part 1. Part-Time Instructor: Joenil Mistal
COMSC-051 Java Programming Part 1 Part-Time Instructor: Joenil Mistal Chapter 5 5 Controlling the Flow of Your Program Control structures allow a programmer to define how and when certain statements will
More informationPROGRAM DESIGN TOOLS. Algorithms, Flow Charts, Pseudo codes and Decision Tables. Designed by Parul Khurana, LIECA.
PROGRAM DESIGN TOOLS Algorithms, Flow Charts, Pseudo codes and Decision Tables Pseudo-Code Pseudo-code is another programming tool that is used for planning the program. The word pseudo means imitation
More informationProgramming Logic and Design Seventh Edition
Programming Logic and Design Seventh Edition Chapter 3 Understanding Structure Objectives In this chapter, you will learn about: The disadvantages of unstructured spaghetti code The three basic structures
More informationCS 199 Computer Programming. Spring 2018 Lecture 2 Problem Solving
CS 199 Computer Programming Spring 2018 Lecture 2 Problem Solving ALGORITHMS AND FLOWCHARTS A typical programming task can be divided into two phases: Problem solving phase produce an ordered sequence
More informationPseudocode. ARITHMETIC OPERATORS: In pseudocode arithmetic operators are used to perform arithmetic operations. These operators are listed below:
Pseudocode There are 3 programming/pseudocode constructs: 1. Sequence: It refers that instructions should be executed one after another. 2. Selection: This construct is used to make a decision in choosing
More informationChapter 5 Conditional and Iterative Statements. Statement are the instructions given to the computer to perform any kind of action.
Chapter 5 Conditional and Iterative Statements Statement Statement are the instructions given to the computer to perform any kind of action. Types of Statement 1. Empty Statement The which does nothing.
More informationCOS 598C - Advanced Compilers
Lecture 4: Control Flow Optimization COS 598C Advanced Compilers Reducible Flow Graphs!"# $ &## bb1 Nonreducible! bb2 bb3 Back to Loops Assembly Generation Schema for (i=x; i
More informationA Beginner s Guide to Programming Logic, Introductory
A Beginner s Guide to Programming Logic, Introductory Chapter 3 Understanding Structure Objectives In this chapter, you will learn about: The features of unstructured spaghetti code The three basic structures
More informationCNG 140 C Programming. Syllabus. Course Info Fall Semester. Catalog Description
CNG 140 C Programming 2012-2013 Fall Semester Syllabus Course Info Catalog Description Advanced programming with C: Storage and control structures, recursion and programming with dynamic data structures.
More informationProgramming Logic and Design Sixth Edition
Objectives Programming Logic and Design Sixth Edition Chapter 4 Making Decisions In this chapter, you will learn about: Evaluating Boolean expressions to make comparisons The relational comparison operators
More informationProgramming Fundamentals - A Modular Structured Approach using C++ By: Kenneth Leroy Busbee
1 0 1 0 Foundation Topics 1 0 Chapter 1 - Introduction to Programming 1 1 Systems Development Life Cycle N/A N/A N/A N/A N/A N/A 1-8 12-13 1 2 Bloodshed Dev-C++ 5 Compiler/IDE N/A N/A N/A N/A N/A N/A N/A
More informationIntroduction to Computer Programming/Handout 01 Page 1 of 13
Introduction to Computer Programming/Handout 01 Page 1 of 13 Table of Contents Table of Contents... 1 Learning Objectives... 2 Program... 2 Programmer... 2 Programming Language... 2 Types of Languages...
More informationSNS COLLEGE OF ENGINEERING
SNS COLLEGE OF ENGINEERING DEPARTMENT OF CSE Presented By Thillaiarasu.N SCRAMBLE 2 Solution 3 What is Pseudocode? 4 Consists of: Short Readable Formally styled English language Used for: Explaining the
More information6. Control Statements II
Visibility Declaration in a block is not visible outside of the block. 6. Control Statements II Visibility, Local Variables, While Statement, Do Statement, Jump Statements main block int main () int i
More informationConditions, logical expressions, and selection. Introduction to control structures
Conditions, logical expressions, and selection Introduction to control structures 1 Flow of control In a program, statements execute in a particular order By default, statements are executed sequentially:
More informationPROBLEM SOLVING AND OFFICE AUTOMATION. A Program consists of a series of instruction that a computer processes to perform the required operation.
UNIT III PROBLEM SOLVING AND OFFICE AUTOMATION Planning the Computer Program Purpose Algorithm Flow Charts Pseudo code -Application Software Packages- Introduction to Office Packages (not detailed commands
More informationSpring 2013 CSE Qualifying Exam Core Subjects. March 23, 2013
Spring 2013 CSE Qualifying Exam Core Subjects March 23, 2013 1 Architecture 1. ROB trace - single issue (a) Non-pipelined functional units Assume the following: Nine ROB slots. 1 integer Execution unit,
More informationControl Flow and Loops. Steven R. Bagley
Control Flow and Loops Steven R. Bagley Introduction Started to look at writing ARM Assembly Language Saw the structure of various commands Load (LDR), Store (STR) for accessing memory SWIs for OS access
More informationModule 4: Decision-making and forming loops
1 Module 4: Decision-making and forming loops 1. Introduction 2. Decision making 2.1. Simple if statement 2.2. The if else Statement 2.3. Nested if Statement 3. The switch case 4. Forming loops 4.1. The
More informationHigher Computing Science Software Design and Development - Programming Summary Notes
Higher Computing Science Software Design and Development - Programming Summary Notes Design notations A design notation is the method we use to write down our program design. Pseudocode is written using
More informationCSc 10200! Introduction to Computing. Lecture 1 Edgardo Molina Fall 2013 City College of New York
CSc 10200! Introduction to Computing Lecture 1 Edgardo Molina Fall 2013 City College of New York 1 Introduction to Computing Lectures: Tuesday and Thursday s (2-2:50 pm) Location: NAC 1/202 Recitation:
More informationChapter 2. Designing a Program. Input, Processing, and Output Fall 2016, CSUS. Chapter 2.1
Chapter 2 Input, Processing, and Output Fall 2016, CSUS Designing a Program Chapter 2.1 1 Algorithms They are the logic on how to do something how to compute the value of Pi how to delete a file how to
More informationChapter 2: Algorithm Discovery and Design. Invitation to Computer Science, C++ Version, Fourth Edition
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science, C++ Version, Fourth Edition Objectives In this chapter, you will learn about Representing algorithms Examples of algorithmic problem
More informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More informationSteps to program development
Automate processes - Programming Concepts and Design Steps to program development A computer program is a set of formal instructions, which the computer executes in order to carry out some designated task.
More informationLECTURE NOTES ON PROGRAMMING FUNDAMENTAL USING C++ LANGUAGE
Department of Software The University of Babylon LECTURE NOTES ON PROGRAMMING FUNDAMENTAL USING C++ LANGUAGE By Dr. Samaher Hussein Ali Collage of Information Technology, University of Babylon, Iraq Samaher_hussein@yahoo.com
More informationControl Structures in Java if-else and switch
Control Structures in Java if-else and switch Lecture 4 CGS 3416 Spring 2016 February 2, 2016 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions
More informationProgramming for Problem Solving 105A L T P Credit Major Minor Total Time
ES- Programming for Problem Solving 105A L T P Credit Major Minor Total Time Test Test 3 - - 3 75 25 100 3h Purpose To familiarize the students with the basics of Computer System and C Programming Course
More informationCPSC 213. Introduction to Computer Systems. Readings for Next 2 Lectures. Loops (S5-loop) Control Flow. Static Control Flow. Unit 1d.
Readings for Next 2 Lectures Textbook CPSC 213 Condition Codes - Loops 3.6.1-3.6.5 Introduction to Computer Systems Unit 1d Static Control Flow Control Flow 1 Loops (S5-loop) 2 The flow of control is the
More informationTABLE OF CONTENTS 2 CHAPTER 1 3 CHAPTER 2 4 CHAPTER 3. Algorithm Design & Problem Solving. Programming. Databases
2 CHAPTER 1 Algorithm Design & Problem Solving 3 CHAPTER 2 Programming 4 CHAPTER 3 Databases TABLE OF CONTENTS 1. ALGORITHM DESIGN & PROBLEM-SOLVING 1.1 Problem-solving & Design Every computer system is
More informationProgramming Languages Third Edition
Programming Languages Third Edition Chapter 12 Formal Semantics Objectives Become familiar with a sample small language for the purpose of semantic specification Understand operational semantics Understand
More informationFoundation Exam - Sample Problems for New Topics
Foundation Exam - Sample Problems for New Topics Fall 2016 Dynamic Memory Allocation Sample Question #1 Consider the following struct to store a single Uno playing card: typedef struct char color[20];
More informationCS-171, Intro to A.I. Mid-term Exam Fall Quarter, 2013
CS-171, Intro to A.I. Mid-term Exam Fall Quarter, 2013 YOUR NAME AND ID NUMBER: YOUR ID: ID TO RIGHT: ROW: NO. FROM RIGHT: The exam will begin on the next page. Please, do not turn the page until told.
More informationFlow Chart. The diagrammatic representation shows a solution to a given problem.
low Charts low Chart A flowchart is a type of diagram that represents an algorithm or process, showing the steps as various symbols, and their order by connecting them with arrows. he diagrammatic representation
More informationFlow Control. CSC215 Lecture
Flow Control CSC215 Lecture Outline Blocks and compound statements Conditional statements if - statement if-else - statement switch - statement? : opertator Nested conditional statements Repetitive statements
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development
More informationComputer System and programming in C
Approaches to Problem Solving Concept of algorithm and flow charts ALGORITHMS AND FLOWCHARTS A typical programming task can be divided into two phases: Problem solving phase produce an ordered sequence
More informationSt. Benedict s High School. Computing Science. Software Design & Development. (Part 1 Computer Programming) National 5
Computing Science Software Design & Development (Part 1 Computer Programming) National 5 VARIABLES & DATA TYPES Variables provide temporary storage for information that will be needed while a program is
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 08: Control Statements Readings: Chapter 6 Control Statements and Their Types A control
More informationCHRIST THE KING BOYS MATRIC HR. SEC. SCHOOL, KUMBAKONAM CHAPTER 9 C++
CHAPTER 9 C++ 1. WRITE ABOUT THE BINARY OPERATORS USED IN C++? ARITHMETIC OPERATORS: Arithmetic operators perform simple arithmetic operations like addition, subtraction, multiplication, division etc.,
More informationAlgorithms, Part 2 of 3. Problem Solving. Problem Solving (con t) Topics Problem Solving Examples Pseudocode Control Structures
Algorithms, Part 2 of 3 Topics Problem Solving Examples Pseudocode Control Structures Reading Section 3.3-3.10 (don t worry about understanding the C code, just the pseudocode) Problem Solving Decode this
More informationProblem Solving Footer Text 10/30/2015 1
Problem Solving Footer Text 10/30/2015 1 Learning Outcome List five (5) steps in problem solving Identify input, process and output from a given problem. 8.2.2 Define algorithm. Solve a given problem using
More informationG Programming Languages - Fall 2012
G22.2110-003 Programming Languages - Fall 2012 Lecture 3 Thomas Wies New York University Review Last week Names and Bindings Lifetimes and Allocation Garbage Collection Scope Outline Control Flow Sequencing
More informationStructure Array 1 / 50
Structure Array A structure array is a data type that groups related data using data containers called fields. Each field can contain any type of data. Access data in a structure using dot notation of
More informationREPETITION CONTROL STRUCTURE LOGO
CSC 128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING REPETITION CONTROL STRUCTURE 1 Contents 1 Introduction 2 for loop 3 while loop 4 do while loop 2 Introduction It is used when a statement or a block of
More informationAlgorithms, Part 2 of 3. Topics Problem Solving Examples Pseudocode Control Structures
Algorithms, Part 2 of 3 Topics Problem Solving Examples Pseudocode Control Structures 1 Problem Solving Decode this sentence: Pdeo eo pda yknnayp wjosan. We have just come up with a specific solution to
More informationTABLE OF CONTENTS 2 CHAPTER 1 3 CHAPTER 2 4 CHAPTER 3 5 CHAPTER 4. Algorithm Design & Problem Solving. Data Representation.
2 CHAPTER 1 Algorithm Design & Problem Solving 3 CHAPTER 2 Data Representation 4 CHAPTER 3 Programming 5 CHAPTER 4 Software Development TABLE OF CONTENTS 1. ALGORITHM DESIGN & PROBLEM-SOLVING Algorithm:
More informationDEPARTMENT OF COMPUTER AND MATHEMATICAL SCIENCES UNIVERSITI TEKNOLOGI MARA CAWANGAN PULAU PINANG
DEPARTMENT OF COMPUTER AND MATHEMATICAL SCIENCES UNIVERSITI TEKNOLOGI MARA CAWANGAN PULAU PINANG PROGRAMME Diploma in Civil Engineering Diploma in Mechanical Engineering COURSE/CODE Fundamentals of Computer
More informationTHINK LIKE CREATIVE PROBLEM SOLVING V. ANTON SPRAUL
THINK LIKE A PROGRAMMERA A N I N T R O D U C T I O N T O CREATIVE PROBLEM SOLVING V. ANTON SPRAUL CODE EAT SLEEP CONTENTS IN DETAIL ACKNOWLEDGMENTS xi INTRODUCTION xiii About This Book... xv Prerequisites...
More informationAlgorithms (continued)
Algorithms (continued) QUIZ What are the 3 (or 4) fundamental control structures that we use as building blocks for algorithms? Building blocks for algorithms Sequential Actions (input, output, computations)
More informationCP FAQS Q-1) Define flowchart and explain Various symbols of flowchart Q-2) Explain basic structure of c language Documentation section :
CP FAQS Q-1) Define flowchart and explain Various symbols of flowchart ANS. Flowchart:- A diagrametic reperesentation of program is known as flowchart Symbols Q-2) Explain basic structure of c language
More informationProgramming Logic and Design Ninth Edition
Programming Logic and Design Ninth Edition Chapter 3 Understanding Structure The Disadvantages of Unstructured Spaghetti Code Spaghetti code Logically snarled program statements Often a complicated mess
More informationWilliam Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline
William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline I. Course Title: CS 280 Computer and Assembler Language 3 credits II. III. IV. Course
More informationInstruction Set II. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 7. Instruction Set. Quiz. What is an Instruction Set?
COMP 212 Computer Organization & Architecture Quiz COMP 212 Fall 2008 Lecture 7 Fill in your student number only, do NOT write down your name Open book, but NO calculator, NO discussions, Relax and have
More informationLoops and Conditionals. HORT Lecture 11 Instructor: Kranthi Varala
Loops and Conditionals HORT 59000 Lecture 11 Instructor: Kranthi Varala Relational Operators These operators compare the value of two expressions and returns a Boolean value. Beware of comparing across
More informationPython review. 1 Python basics. References. CS 234 Naomi Nishimura
Python review CS 234 Naomi Nishimura The sections below indicate Python material, the degree to which it will be used in the course, and various resources you can use to review the material. You are not
More informationEngineering program development. Edited by Péter Vass
Engineering program development Edited by Péter Vass Introduction Question: Why engineering program development may be useful for a PhD student in Earth Sciences? Counter-argument: In these days a wide
More informationCPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART
General Introduction CPU: SOFTWARE ARCHITECTURE INSTRUCTION SET (PART 1) General Introduction (1/5): On Instructions Instruction operate with data or with the flow of the program The following information
More informationTheory of control structures
Theory of control structures Paper written by Bohm and Jacopini in 1966 proposed that all programs can be written using 3 types of control structures. Theory of control structures sequential structures
More informationCS32 - Week 2. Umut Oztok. July 1, Umut Oztok CS32 - Week 2
CS32 - Week 2 Umut Oztok July 1, 2016 Arrays A basic data structure (commonly used). Organize data in a sequential way. Arrays A basic data structure (commonly used). Organize data in a sequential way.
More informationEE 3170 Microcontroller Applications
Lecture Overview EE 3170 Microcontroller Applications Lecture 7 : Instruction Subset & Machine Language: Conditions & Branches in Motorola 68HC11 - Miller 2.2 & 2.3 & 2.4 Based on slides for ECE3170 by
More informationFLOWCHARTS A flowchart is a graphical representation of the steps to be followed for solving problem. It consists of a set of symbols.
FLOWCHARTS A flowchart is a graphical representation of the steps to be followed for solving problem. It consists of a set of symbols. Each symbol represents a specific activity. A typical problem involves
More informationAlgorithms. Abdelghani Bellaachia, CSCI 1121 Page: 1
Algorithms 1. Objectives... 2 2. Design You Solution... 2 3. Structure of an algorithm:... 3 4. Pseudocode:... 4 5. Example... 5 6. Selection or Conditional Execution... 8 7. Looping or Iteration... 9
More informationC++ Programming Language Lecture 2 Problem Analysis and Solution Representation
C++ Programming Language Lecture 2 Problem Analysis and Solution Representation By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department Program Development Cycle Program development
More informationCENTRAL TEXAS COLLEGE COSC 1315 INTRODUCTION TO COMPUTER PROGRAMMING. Semester Hours Credit: 3 INSTRUCTOR: OFFICE HOURS:
CENTRAL TEXAS COLLEGE COSC 1315 INTRODUCTION TO COMPUTER PROGRAMMING Semester Hours Credit: 3 INSTRUCTOR: OFFICE HOURS: I. INTRODUCTION A. This course presents an introduction to computer programming for
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 02: Algorithms Readings: Not Covered in Textbook Problem Solving Process System Design:
More informationJoint Entity Resolution
Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute
More informationMIPS Programming. A basic rule is: try to be mechanical (that is, don't be "tricky") when you translate high-level code into assembler code.
MIPS Programming This is your crash course in assembler programming; you will teach yourself how to program in assembler for the MIPS processor. You will learn how to use the instruction set summary to
More informationFlow Control: Branches and loops
Flow Control: Branches and loops In this context flow control refers to controlling the flow of the execution of your program that is, which instructions will get carried out and in what order. In the
More informationLab 3. The Art of Assembly Language (II)
Lab. The Art of Assembly Language (II) Dan Bruce, David Clark and Héctor D. Menéndez Department of Computer Science University College London October 2, 2017 License Creative Commons Share Alike Modified
More informationConstructing Algorithms and Pseudocoding This document was originally developed by Professor John P. Russo
Constructing Algorithms and Pseudocoding This document was originally developed by Professor John P. Russo Purpose: # Describe the method for constructing algorithms. # Describe an informal language for
More informationVirtual Machine. Part II: Program Control. Building a Modern Computer From First Principles.
Virtual Machine Part II: Program Control Building a Modern Computer From First Principles www.nand2tetris.org Elements of Computing Systems, Nisan & Schocken, MIT Press, www.nand2tetris.org, Chapter 8:
More informationCHAPTER 2 PROBLEM SOLVING TECHNIQUES. Mr Mohd Hatta Bin Hj Mohamed Ali Computer Programming BFC2042
CHAPTER 2 PROBLEM SOLVING TECHNIQUES Mr Mohd Hatta Bin Hj Mohamed Ali Computer Programming BFC2042 Software Engineering vs Problem Solving Software Engineering - A branch of Computer Science & provides
More information