Date post: | 06-Apr-2018 |
Category: |
Documents |
Upload: | utkarsh-jain |
View: | 221 times |
Download: | 0 times |
of 25
8/3/2019 M02_ParticipantGuide
1/25
Programming Techniques Module 2: Participant Guide
MODULE 2: FUNDAMENTALOF PROGRAMMING
CONCEPTS - PARTICIPANT GUIDE
Course Code # IDCGRF001-A Page 1 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
2/25
Programming Techniques Module 2: Participant Guide
TABLEOF CONTENTS
Module Introduction...........................................................................................................4
Module Objectives.............................................................................................................5Source Material .................................................................................................................6
Presentation: 2.1 Fundamental Programming concepts...................................................7Algorithm ....................................................................................................................7
Overview .................................................................................................................7Benefits of Algorithm ...............................................................................................8Analyzing an Algorithm ........................................................................................... 8Algorithm Complexities ........................................................................................... 9Structure of an Algorithm ...................................................................................... 11Basic three algorithm concepts ............................................................................. 11Sequential Algorithm ............................................................................................. 12Selection .............................................................................................................. 12Iteration ................................................................................................................ 13
Flowcharts ............................................................................................................... 14Overview ............................................................................................................... 14Symbols used in Flow chart.................................................................................. 14Flowcharts: Advantages and Disadvantages ....................................................... 15Flowcharts: Limitations ......................................................................................... 16
Testing ...................................................................................................................... 16Overview ............................................................................................................... 16Need of testing ...................................................................................................... 16Unit testing ........................................................................................................... 16Test Cases ............................................................................................................ 17
Key points ................................................................................................................. 18
Activity 1 ..........................................................................................................................18Activity Overview ...................................................................................................... 18Activity Instructions ................................................................................................... 19
Activity 1.0 ............................................................................................................. 19Activity 1.1 ............................................................................................................. 19Activity 1.2 ............................................................................................................. 19Activity 1.3 ............................................................................................................. 19Activity 1.4 ............................................................................................................. 19
Presentation: 2.2 Programming Life Cycle......................................................................20Top-down Design ......................................................................................................21Bottom-up Design ..................................................................................................... 22Structured programming ........................................................................................... 22Program Life Cycle ................................................................................................... 23Key points ................................................................................................................. 24
Activity 2...........................................................................................................................24
Course Code # IDCGRF001-A Page 2 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
3/25
Programming Techniques Module 2: Participant Guide
Activity overview ....................................................................................................... 24Activity 2.0 ............................................................................................................. 24
Activity Hints and Tips ............................................................................................. 24Hints/Tips .................................................................................................................. 25
Course Code # IDCGRF001-A Page 3 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
4/25
Programming Techniques Module 2: Participant Guide
Module Introduction
The purpose of this module is to provide the fundamentals ofProgramming Techniques. This module will span a day of the
Programming Techniques. There are 4 presentations and 2 hands-onactivities, which will allow you to apply what you have learned. There willalso be a Knowledge Check at the end of this module to assess yourunderstanding of the content presented.
The presentations and activities include:
Presentation: 2.1 Fundamental Programming concepts
Activity 1
Presentation: 2.2 Programming Life Cycle
Activity 2
Course Code # IDCGRF001-A Page 4 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
5/25
Programming Techniques Module 2: Participant Guide
Module Objectives
After completing this module, you should be able to:
Discuss about Algorithm Define Algorithm
Need of Algorithm
Structure and concept of Algorithm
Define Flowchart
Need of Flowchart
Structure and concept of Flowchart
Testing
Need of Testing
Unit Testing
Activity 1
Programming Life Cycle
Types of Programming Design
o Top-Down Approach
o Bottom-Up Approach
o Linear Programming
o Structured Programming
Program Life Cycle
Activity 2
Course Code # IDCGRF001-A Page 5 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
6/25
Programming Techniques Module 2: Participant Guide
Source Material
The source material used to facilitate the delivery of this module is locatedwithin the Module 2
Course Code # IDCGRF001-A Page 6 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
7/25
Programming Techniques Module 2: Participant Guide
Presentation: 2.1 Fundamental Programmingconcepts
Time: 1:30 Hour
Algorithm
Overview
Algorithm is used to simplify a given task. It is a solution to a problem thatis independent of any programming language. It is an explicit step-by-stepprocedure for producing a solution to a given problem.
This presentation covers the basic features and concepts of Algorithm. Inaddition it covers the need of algorithm, structure of algorithm and
concepts of algorithm
An algorithm is:
A finite sequence of steps
Each step shall be explicit and unambiguous
For each input, it shall terminate in finite time with output
A program is an algorithm expressed in a programming language
Different definition of algorithm is:
An explicit step-by-step procedure for producing a solution to agiven problem
In mathematics and computer science an algorithm (the word isderived from the name of the Persian mathematician Al-Khwarizmi) isa finite set of well-defined instructions for accomplishing some taskwhich, given an initial state, will terminate in a correspondingrecognizable end-state (contrast with heuristic). Algorithms can beimplemented by computer programs, although often in restricted forms;
mistakes in implementation and limitations of the computer can preventa computer program from correctly executing its intended algorithm.
To know more about algorithm: http://en.wikipedia.org/wiki/Algorithm
Course Code # IDCGRF001-A Page 7 of 25 Accenture 2007 All Rights Reserved
http://en.wikipedia.org/wiki/Algorithmhttp://en.wikipedia.org/wiki/Algorithm8/3/2019 M02_ParticipantGuide
8/25
Programming Techniques Module 2: Participant Guide
Benefits of Algorithm
An algorithm is a definite procedure for performing certain task
It is written using simple English sentences
Facilitates easy development of programs
o Iterative refinemento Easy to convert it to a program
It helps resolving complex problems
Review is easier
Analyzing an Algorithm
There are different approaches of algorithm in analyzing a problem
Empirical (a posteriori) approach
o It is a method consisting of programming the competing
techniques and trying them on different instances
o The empirical approach to choosing an algorithm consists of
programming the competing techniques and trying them ondifferent instances with the help of a computer
Theoretical (a priori) approach
o It determines mathematically the quantity of resources
needed by each algorithm as a function of the size of theinstances
The theoretical approach consists of determining mathematically the
quantity of resources needed by each algorithm as a function of the size ofthe instances. The resources of most interest are computing time andstorage space, with the former usually being the more critical.
We compare the algorithms on the basis of their execution times, analgorithms storage requirements.
The size of an instance corresponds formally to the number of bits neededto represent the instance on a computer, using some precisely definedand reasonably compact coding scheme. (The word size to mean anyinteger that in some way measures the number of components in aninstance.) E.g. when we talk about sorting, we usually measure the size of
an instance by the number of items to be sorted, ignoring the fact thateach of these items may take more than once bit to represent on acomputer. Similarly, when we talk about graphs, we usually measure thesize of an instance by the number of nodes or edges (or both) involved.
o The advantage of the theoretical approach is that it depends
on neither the computer being used, nor the programminglanguage, nor even the skill of the programmer. It saves both
Course Code # IDCGRF001-A Page 8 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
9/25
Programming Techniques Module 2: Participant Guide
the time that would have been spent needlesslyprogramming an inefficient algorithm and the machine thatwould have been wasted testing it. More significantly itallows us to study the efficiency of an algorithm when usedon instances of any size. This is often not the case with the
empirical approach, where practical consideration my forceus to test our algorithms only on a small number of arbitrarilychosen instances of moderate size. Since it is often the casethat newly discovered algorithm begins to perform betterthan its predecessor only when they are both used on largeinstances, this last point is particularly important.
Hybrid approach
o Combination of Empirical and theoretical approach
o One can also think of a hybrid approach while analyzing the
algorithms, where the form of the function describing the
algorithms efficiency is determined theoretically, and thenany required numerical parameters are determinedempirically for a particular program and machine, usually bysome kind of regression. Using this approach we can predictthe time an actual implementation will take to solve aninstance much larger than those used in the tests. Bewarehowever of making such extrapolations solely on the basis ofa small number of empirical test, ignoring all theoreticalconsiderations. Predictions made without theoretical supportare likely to be very imprecise, if not plain wrong.
To know more about efficiency of algorithm:
http://en.wikipedia.org/wiki/Algorithm
http://homepages.ius.edu/gmanwani/C202/algorithm%20efficiency.pdf
http://www.cprogramming.com/tutorial/computersciencetheory/algorithmicefficiency1.html
http://people.cs.uct.ac.za/~bmerry/manual/algorithms/efficiency.html
Algorithm Complexities
Complexities are the parameters to capture the challenges orcomplications
Few of the algorithm complexities are captured based on :
o Time Complexities
Is the amount of computer time it needs to run tocompletion
Course Code # IDCGRF001-A Page 9 of 25 Accenture 2007 All Rights Reserved
http://en.wikipedia.org/wiki/Algorithmhttp://homepages.ius.edu/gmanwani/C202/algorithm%20efficiency.pdfhttp://www.cprogramming.com/tutorial/computersciencetheory/algorithmicefficiency1.htmlhttp://www.cprogramming.com/tutorial/computersciencetheory/algorithmicefficiency1.htmlhttp://people.cs.uct.ac.za/~bmerry/manual/algorithms/efficiency.htmlhttp://en.wikipedia.org/wiki/Algorithmhttp://homepages.ius.edu/gmanwani/C202/algorithm%20efficiency.pdfhttp://www.cprogramming.com/tutorial/computersciencetheory/algorithmicefficiency1.htmlhttp://www.cprogramming.com/tutorial/computersciencetheory/algorithmicefficiency1.htmlhttp://people.cs.uct.ac.za/~bmerry/manual/algorithms/efficiency.html8/3/2019 M02_ParticipantGuide
10/25
Programming Techniques Module 2: Participant Guide
o Space Complexities
Is the amount of memory it needs to run to completion
Course Code # IDCGRF001-A Page 10 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
11/25
Programming Techniques Module 2: Participant Guide
Structure of an Algorithm
Step, Control and Exito Step represents the first step in the algorithm i.e. BEGIN
o Control represents the flow of control within the algorithm
o Exit represents the point of exit from the algorithm Comments
o Proper comments must be inserted wherever necessary to
give descriptions of the steps
Variableso Properly named variables should be used in the algorithm
Input / Outputo Inputs can be read using the Input
o Output can be written using Output
Syntax for writing Algorithm
1. Begin //is the starting point of analgorithm2. Statement13. Statement2.....
.N. End
Basic three algorithm concepts
1. Sequential2. Select ional (Single & Multiple)3. Iterational
Course Code # IDCGRF001-A Page 11 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
12/25
Programming Techniques Module 2: Participant Guide
Sequential Algorithm
Modules are executed in some sequence/ in a linear fashion
Algorithm 1: Find the average of a student given the marks
he obtained in three subjects.
1. Begin2. Input Marks1, Marks2, Marks33. AVG = (Marks1+Marks2+Marks3) / 34. Output Average Marks =, AVG5. END
Selection
To perform an operation based on the choice or selection of the individual
is achieved using selection algorithm.There are two main types of selection algorithm1. Single Alternative2. Multiple Alternative
Single Alternative Multiple Alternative
Having a single conditioncriteria to qualify any test
Having a multiple conditions toqualify any test
Mainly used with simple andsingle condition checks
Used when more than one conditionneed to be checked and different
statements need to be printedTable 1: Example of selection
Algorithm to find the average of the marks a student has obtained in threesubjects, test whether he passed or failed; for passing, average should notbe less than 50:
Algorithm 2: Single Alternative
1. Begin2. Input Marks1, Marks2, Marks3
3. Avg = (Marks1+Marks2+Marks3)/34. If (Avg >= 50) Then Output Passed5. End
Course Code # IDCGRF001-A Page 12 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
13/25
Programming Techniques Module 2: Participant Guide
Algorithm 3: Multiple Alternative
1. Begin
2. Input Marks1, Marks2, Marks33. Avg = (Marks1+Marks2+Marks3)/34. If (Avg >= 50) Then5. Output Passed6. Else7. Output Failed8. End
Iteration
Algorithm 4: to read marks of three subjects. Find theaverage scored by the student, and print Pass if the scoreis more than 50 otherwise print Fail for N number ofStudents
1. Begin2. Print Enter number of students3. Input N
4. Repeat step 5 thru step 8, N TIMES5. Print Enter Marks of 3 subjects6. Input marks1, marks2, marks3
7. Avg = (marks1+marks2+marks3)/38. If (Avg >= 50) Then
Print PassedElse
Print FailedEnd-if
9. End
Course Code # IDCGRF001-A Page 13 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
14/25
Programming Techniques Module 2: Participant Guide
Flowcharts
Overview
This presentation covers the fundamentals Flow chart. It the need of
flowchart, different symbol used in the flowcharts etc.
The flowchart can be defined as a diagram of the problem solving stepsthat is written by the programmer. It can also be defined as the geometricrepresentation of an algorithmIt is a diagram consisting of a set of symbols (such as rectangles ordiamonds) and connecting lines that shows step-by-step progressionthrough a procedure, process or system
A flowchart (also spelled flow-chart and flow chart) is a schematicrepresentation of a process. They are commonly used in
business/economic presentations to help the audience visualize thecontent better, or to find flaws in the process.
To know more about flowchart: http://en.wikipedia.org/wiki/Flowchart
Symbols used in Flow chart
Flow charts are drawn using few standard symbols. Figure 1 shows somestandard symbols that are required to represent flowcharting.
AFigure 1: Symbols used in flowchart
Course Code # IDCGRF001-A Page 14 of 25 Accenture 2007 All Rights Reserved
http://en.wikipedia.org/wiki/flowcharthttp://en.wikipedia.org/wiki/flowchart8/3/2019 M02_ParticipantGuide
15/25
Programming Techniques Module 2: Participant Guide
In Figure 1: Symbols used in flowchart
A represents the start and End points
B Computation step or logical step
C Input /output Operation
D Connector
EDecisionFLoop
G Connector
Flowchart 1: To read marks of three subjects. Find theaverage scored by the student, and print Pass if the score ismore than 50 otherwise print Fail for N number of Students
Flowcharts: Advantages and Disadvantages
Advantage Disadvantage
Communication Complex logic
Effective analysis Alterations and Modifications will be difficult
Proper documentation The essentials of what is done can easily belost in the technical details of how it is done
Efficient Coding
Proper Debugging
Course Code # IDCGRF001-A Page 15 of 25 Accenture 2007 All Rights Reserved
Start
Enter m1,m2,m3
Avg=m1+m2+m3/3
pass
end
Avg>50
Fail
8/3/2019 M02_ParticipantGuide
16/25
Programming Techniques Module 2: Participant Guide
Flowcharts: Limitations
Complex logic
Alterations and Modifications
Testing
Overview
Testing is the process of running a system with the intention of findingerrors. Enhances the integrity of a system by detecting deviations indesign and errors in the system. Aims at detecting error-prone areas,which helps in the prevention of errors in a system. Testing also addsvalue to the product by confirming to the user requirements.Testing is Oriented to 'detection'
Testing is a process used to help identify the correctness,completeness and quality of developed computer software.
Testing is the process of running a system with the intention offinding errors
It enhances the integrity of a system by detecting deviations indesign and errors in the system.
It aims at detecting error-prone areas, which helps in the preventionof errors in a system.
Testing also adds value to the product by conforming to the userrequirements.
It is Oriented to 'detection'
Need of testing
Because software is likely to have faults
To learn about the reliability of the software
To fill the time between delivery of the software and the release date
To prove that the software has no faults
Because testing is included in the project plan
Because failures can be very expensive
To avoid being sued by customers
Unit testing
A unit test is a method of testing the correctness of a particularmodule of source code
Unit testing is also known as Component/ Module/ Program Testing
It is the most 'micro' scale of testing
Course Code # IDCGRF001-A Page 16 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
17/25
Programming Techniques Module 2: Participant Guide
The goal of unit testing is to isolate each part of the program andshow that the individual parts are correct
Most thorough look at detail
o Entry criteria: -
After completion of each screens/modules, unit testing is done
o Exit criteria: -
Code is peer reviewed.
Basic functionality is achieved.
All requirements been tested or verified.
No errors in calculations, formulas or rounding.
If any bugs remain should not harm the basic functionality.
No data corruption errors
No Incorrect data, or data recorded in the wrong field, account or
database
Test Cases
Test case is a set of test inputs, execution conditions, and expectedresults developed for a particular objective, such as to exercise aparticular program path or to verify compliance with a specificrequirement
Test cases are written for each unit in the main program
A program will execute all the test cases and record the results .itcan be called as a test file.
Test cases will have Description, inputs, expected outcomes
Testing Example 1: To read marks of three subjects. Find theaverage scored by the student, and print Pass if the score ismore than 50 otherwise print Fail for N number of Students
Course Code # IDCGRF001-A Page 17 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
18/25
Programming Techniques Module 2: Participant Guide
1. Begin2. Output Enter number of students3. Input N
4. Repeat step 5 thru step 8, N TIMES
5. Output Enter Marks of 3 subjects6. Input marks1, marks2, marks37. Avg = (marks1+marks2+marks3)/38. If (Avg >= 50) Then
Output PassedElse
Output FailedEnd-if9. End
Test case for this can be written like this for Testing Example 1:Stepnumber
Action/Description Input Data Expectedoutcome
1.001 Enter a
character
Character: Invalid
input
1.002 Enter negative
number
Number:-x Negative
input
1.003 Enter a special
character
Special
character: x
Invalid
input
Key points
Algorithm is detailed sequence of actions to perform to accomplishsome task
Algorithms facilitates easy development of programs
Flowchart is a graphic representation of the logic or steps in aprogram or system
Testing is the process of running a system with the intention offinding errors.
Unit testing is used to isolate each part of the program and showthat the individual parts are correct.
Activity 1
Time: 30 minutes
Activity Overview
During Activity 1 you will practice simple logic formulation. The activity
Course Code # IDCGRF001-A Page 18 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
19/25
Programming Techniques Module 2: Participant Guide
helps in understanding the working of algorithm, flowchart and testing.
Activity Instructions
Activity 1.0Write an algorithm, flow chart & test cases to find the sum of first 50integers (It uses Iterational algorithm technique.)
Activity 1.1
Write an algorithm, flow chart & test cases to search an element in a tableof N values (Uses iterative and selection algorithm technique)
Activity 1.2Write an algorithm, flowchart & test cases to find the sum of N evennumbers (Uses iterative algorithm technique)
Activity 1.3
Write an algorithm, flowchart & test cases to find a Fibonacci series
(Fibonacci series is of the form 0,1,1,2,3,5Generate
the series up to N terms)
Activity 1.4
Write an algorithm and flowchart & test cases to find the maximum &
minimum among three numbers entered from the keyboard. (Use
selection technique.)
Course Code # IDCGRF001-A Page 19 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
20/25
Programming Techniques Module 2: Participant Guide
Presentation: 2.2 Programming Life Cycle
Time: 30 minutes
OverviewThis presentation explains about different stages in the life cycle of aprogram
A program is an algorithm expressed in a programming language
The act of creating software or some other set of instructions for acomputer
Computer programming is the craft of implementing one or moreinterrelated algorithms using a particular programming language toproduce a concrete computer program
Programming Development Life cycle
RequirementsGatherin
WHATFigure 2 : Programming Life Cycle
The presentation introduces different program design approachesAnd explains the problem situations where a particular approach can beused
Different program design approaches include:
Different Types of Programming Design Approach are
Top- down programming
Bottom-up programming
Linear programming
Structured programming
Course Code # IDCGRF001-A Page 20 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
21/25
Programming Techniques Module 2: Participant Guide
Top-down Design
Based on the fact that large problem become more manageable ifthey are divided into a number of smaller and simpler tasks whichcan be tackled separately.
Top down design approach is performed in a special way. Themain program is written first. It is tested before sub-programs arewritten. To do this, actual sub programs are replaced with stubs.The stubs simply test to see if the data is passed correctly. After themain program is written and checked, each module is written andtested in turn. If the modules run properly, then it is tested with themain program. If the module and the main run properly then thenext module is written and checked and so on
A technique for decomposing a problem into subtasks
Top Down design is iterative
many levels of decomposition
o Strengths of top-down design easy to design
can defer implementation details
suitable for natural hierarchical problems
Example 1 : For Top- Down Design - Algorithm to find thenumber of days between two given dates, using functions
date1 = ( d1, m1, y1),date2 = (d2, m2, y2)Assume date1 is earlier or same as date2.
Case 1:
y1 < y2
total_days = s_y_days + e_y_days + m_y_days
where:s_y_days = no of remaining days in m1 +
the total of days in the months from(m1+1) to 12e_y_days = (no of days covered in m2)-1 +
the total of days in the months from 1 to(m2-1)m_y_days = total no of days in the years from y1+1to (y2-1)
Case 2:
y1 == y2
Course Code # IDCGRF001-A Page 21 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
22/25
Programming Techniques Module 2: Participant Guide
total_days = s_m_days + e_m_days + m_m_dayswhere:s_m_days = no of remaining days in m1e_m_days = (no of days covered in m2) - 1
m_m_days = total no of days in the monthsfrom (m1+1) to (m2-1)
Bottom-up Design
Write the most basic subroutines in the hierarchy first and then usethem to make more sophisticated subroutines, The pure bottom-upapproach is generally not recommended because it is difficult toanticipate which low subroutines will be needed for any particularprogram,
In this approach it is usually assumed that the basic routines
created will be general enough to be used more than once. This approach is designed to generate reusable code
This is more like a basic instruction in the programming languagethan a large scale program component
For more information refer:- http://dept-info.labri.u-
bordeaux.fr/~strandh/Teaching/MTP/Common/Strandh-Tutorial/bottom-up-programming.html
- http://en.wikipedia.org/wiki/Top-down
Linear programmingStraightforward programming in sequential manner. This does not involveany decision making. General model of the linear program is:
Read a data value.
Compute an intermediate result.
Use the intermediate result to compute the desired answer.
Print the answer.
Stop
Structured programming
The technique for writing a program using decisions, branching points,
loops, etc. is called structured programming. Which in turn result in morecomplex programs. There are procedures that can be used for writingthose complex programs that makes them much less error prone andmuch easier in debug.
Course Code # IDCGRF001-A Page 22 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
23/25
Programming Techniques Module 2: Participant Guide
Program Life Cycle
Figure 3 : Program Life Cycle
Requirement Gathering - Gathering all the required information tounderstand the problem in hand
Algorithm - An simple English, language independent pseudo code isgenerated.
Test Plan - Gives a plan to test the solution. It involves test cases, testscripts and test data
Coding - Enter the source code using some standard editor, care must be
taken for proper formatting, indenting and using comment entries.
Compilation -The compiler program scans the source code for SYNTAXerrors, and if it does not find any errors, it converts the source code toOBJECT code.
Link - The object files are combined with other library files to create theEXECUTABLE file.
Library - It is a catalogue of previously developed objects. They containprocedures for input, output, math, etc. A user can create their ownlibraries
Testing - Synthesize test data such that it will evaluate the differentcriteria. The testing should be NEGATIVE testing.
Debugger- It is a very useful tool to test the program as the intermediateresults, new values of the variables, etc are visible
Course Code # IDCGRF001-A Page 23 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
24/25
Programming Techniques Module 2: Participant Guide
Key points
A program is an algorithm expressed in aprogramming language
Programming is the craft of implementing one
or more interrelated algorithms using a particular programminglanguage
Large problem become more manageable ifthey are divided into a number of smaller and simpler tasks whichcan be tackled separately.
Straightforward programming in sequentialmanner is Linear Programming
Activity 2
Time: 30 minutes
Activity overview
Activity 2 gives you an idea about application of top-down approach
Activity 2.0
Design the Payroll System using Top-down approach.
Activity Hints and Tips
Focus your efforts! Do not be overwhelmed by the lines of code that yousee for these initial activities. One of traits of a good developer is theability to isolate code that is relevant to the situation.
Course Code # IDCGRF001-A Page 24 of 25 Accenture 2007 All Rights Reserved
8/3/2019 M02_ParticipantGuide
25/25
Programming Techniques Module 2: Participant Guide
Hints/Tips
1. Remember motivation comes from within. Take responsibility for
your own learning.2. Take notes from each presentation and activity.
3. If you dont understand something, ask questions.
4. Participate in course discussions.
5. Practice what youve learned to keep your skills sharp.