introduction to programming
DESCRIPTION
Chapter 1. INTRODUCTION TO PROGRAMMING. ALGORITHM. An algorithm is defined as the finite set of steps to be followed in order to solve the given problem. Basically, it gives the set of instructions which must be followed while solving the problem. Example 1: - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/1.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:1
INTRODUCTIONINTRODUCTION
TO TO
PROGRAMMINGPROGRAMMING
Chapter 1
![Page 2: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/2.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:2
ALGORITHM
An An algorithmalgorithm is defined as the is defined as the finite setfinite set of steps to be followed in of steps to be followed in order to solve the given problem.order to solve the given problem.
Basically, it gives the set of Basically, it gives the set of instructionsinstructions which must be which must be followed while solving the problem.followed while solving the problem.
![Page 3: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/3.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:3
Example 1:Example 1:
To find the To find the largestlargest of three numbers. of three numbers.
Algorithm:Algorithm:Step 1: Step 1: Read the three numbers, say A, B Read the three numbers, say A, B and C.and C.Step 2:Step 2: If (A>B) and (B<C) then If (A>B) and (B<C) then AA is the is the largest number, go to step 4.largest number, go to step 4.Step 3:Step 3: If (B>A) and (A>C) then If (B>A) and (A>C) then BB is the is the largest else largest else CC is the largest is the largest number.number.Step 4:Step 4: Stop. Stop.
![Page 4: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/4.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:4
Example 2:Example 2:
To find the average score of a student, for To find the average score of a student, for the three test marks (i.e. three subject the three test marks (i.e. three subject scores).scores).
Algorithm:Algorithm:Step 1:Step 1: Read the three test scores, say T1, Read the three test scores, say T1, T2 and T3.T2 and T3.Step 2:Step 2: SUMSUM = T1+ T2+ T3. = T1+ T2+ T3.Step 3:Step 3: AVERAGEAVERAGE= SUM/3.= SUM/3.Step 4:Step 4: Display Display AverageAverageStep 5:Step 5: Stop. Stop.
![Page 5: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/5.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:5
Example 3:Example 3:
To find the area of a circle.To find the area of a circle.
Algorithm:Algorithm:
Step 1:Step 1: Read the radius of the circle say r. Read the radius of the circle say r.Step 2:Step 2: AREAAREA = 3.14 * r * r. = 3.14 * r * r.Step 3:Step 3: Display Display AreaArea..Step 5:Step 5: Stop. Stop.
![Page 6: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/6.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:6
Characteristics of an Algorithm
Input:Input: An algorithm must be provided with any number An algorithm must be provided with any number of input/data values.of input/data values.
Output:Output: As we go through the algorithm, step by step, As we go through the algorithm, step by step, processing statements will yield some result. This processing statements will yield some result. This enables us to verify the algorithm. Hence at least enables us to verify the algorithm. Hence at least one output must be produced.one output must be produced.
![Page 7: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/7.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:7
Definiteness:Definiteness:
Each statement must be very much clear, Each statement must be very much clear, and distinct. This ensures that the and distinct. This ensures that the statements must be unambigious.statements must be unambigious.
Finiteness:Finiteness:
The algorithm must terminate after a finite The algorithm must terminate after a finite number of steps.number of steps.
![Page 8: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/8.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:8
Let us illustrate this point with the help of an Let us illustrate this point with the help of an example.example.
Algorithm:Algorithm:
Step 1:Step 1: Let a = 10. Let a = 10.Step 2:Step 2: If (a>10) then go to step 5. If (a>10) then go to step 5.Step 3:Step 3: X = Y * Z. X = Y * Z.Step 4:Step 4: Print X and go to step 2. Print X and go to step 2.Step 5:Step 5: Stop. Stop.
![Page 9: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/9.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:9
Let us not bother the purpose of above Let us not bother the purpose of above algorithm, but simply try to trace it. Here we algorithm, but simply try to trace it. Here we notice that in the algorithm, nowhere the notice that in the algorithm, nowhere the value of value of ‘a’‘a’ is is changedchanged, which happens to , which happens to be controlling the flow and hence never be controlling the flow and hence never terminates. Such statements must be terminates. Such statements must be avoided.avoided.
Effectiveness:Effectiveness: It must be possible in practice, to carry out It must be possible in practice, to carry out each step manually (using paper and each step manually (using paper and pencil).pencil).
![Page 10: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/10.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:10
Example 4Example 4
Algorithm for dividing two numbers.Algorithm for dividing two numbers.
Algorithm:Algorithm:
Step 1:Step 1: Read the two numbers say a, b. Read the two numbers say a, b.
Step 2:Step 2: c = a/b. c = a/b.
Step 3:Step 3: Print c. Print c.
Step 4:Step 4: Stop. Stop.
![Page 11: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/11.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:11
Now what happens to this algorithm, if Now what happens to this algorithm, if value of value of bb is is 00? ?
Yes, definitely your answer will be Yes, definitely your answer will be “infinite”,“infinite”, right? right?
Since the system doesn’t give you such Since the system doesn’t give you such answer, hence a care must be taken answer, hence a care must be taken while you write the algorithm. One way while you write the algorithm. One way is to provide an appropriate error is to provide an appropriate error message, like:message, like:
![Page 12: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/12.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:12
Modified AlgorithmModified Algorithm
Step 1:Step 1: Read the two numbers say a, b. Read the two numbers say a, b.
Step 2:Step 2: If (b = 0) then If (b = 0) then
print “denominator value is 0”print “denominator value is 0”
and go to step 5.and go to step 5.
Step 3:Step 3: c = a/ b c = a/ b
Step 4:Step 4: Print c Print c
Step 5:Step 5: Stop Stop
![Page 13: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/13.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:13
An algorithm can be expressed in many ways.An algorithm can be expressed in many ways.
One way is to express it in natural language One way is to express it in natural language (viz, English).(viz, English).
This way of representation helps to write a This way of representation helps to write a program in any language, as it needs only the program in any language, as it needs only the conversion to respective languages.conversion to respective languages.
Thus it appears more general. However, care Thus it appears more general. However, care must be taken in such case to avoid ambiguity. must be taken in such case to avoid ambiguity. Another way, is to represent algorithm Another way, is to represent algorithm graphically – graphically – a flowchart.a flowchart.
![Page 14: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/14.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:14
1.1. First write the algorithm for a given First write the algorithm for a given problem as if we are solving problem on a problem as if we are solving problem on a paper.paper.
2.Convert each statement of the algorithm 2.Convert each statement of the algorithm into its equivalent program statements into its equivalent program statements and then think of putting the control and then think of putting the control statement.statement.
We can make use of We can make use of flowchartsflowcharts for the for the algorithm designalgorithm design..
Algorithm Design Tools
![Page 15: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/15.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:15
Given a list of five numbers Given a list of five numbers find the largest number in the find the largest number in the list.list.
Assignment
![Page 16: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/16.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:16
It is a It is a diagrammatic diagrammatic way of representing way of representing the steps to be followed for solving the given the steps to be followed for solving the given problem.problem.
The main advantage of flowchart is that The main advantage of flowchart is that since it is in the form of diagram one can since it is in the form of diagram one can understand the flow of code very easily. understand the flow of code very easily. While drawing the flowcharts we make use While drawing the flowcharts we make use of certain symbols. These are shown below:of certain symbols. These are shown below:
Flowchart
![Page 17: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/17.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:17
SymbolSymbol PurposePurpose
START/STOPSTART/STOP
AssignmentAssignment
Statements,Statements,
Expressions etc.Expressions etc.
READ/PRINTREAD/PRINT
Flowchart Notation used
![Page 18: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/18.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:18
SymbolSymbol PurposePurpose
Decision makingDecision making
ConnectorConnector
Flow indicationFlow indication
Flowchart Notation used
![Page 19: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/19.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:19
Example 1Example 1
Draw a flowchart to add two Draw a flowchart to add two numbers say ‘a’ and ‘b’. Store the numbers say ‘a’ and ‘b’. Store the result in sum. Display the Print result in sum. Display the Print “sum”.“sum”.
Examples on Flowcharts
![Page 20: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/20.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:20
Start
Read numbers ‘a’ and ‘b’
sum = a + b
Print the resultsum
Stop
![Page 21: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/21.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:21
Draw a flowchart to find the Draw a flowchart to find the factorial of a given number.factorial of a given number.
Example 2
![Page 22: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/22.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:22
Start
Read the number = number
Initialize, Fact = 1i = 1
Print “factorial of number is “fact”Stop
If number == 0
Yes
Print “ factorial for 0 is 1”
Stop
No
Fact = fact * i
i = i +1
If i<=number
Yes
![Page 23: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/23.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:23
Assignment
Draw a flow chart to search a Draw a flow chart to search a number from a given list of number from a given list of nn numbers.numbers.
![Page 24: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/24.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:24
Pseudocode
PseudocodePseudocode generally does not generally does not actually obey the syntax rules of any actually obey the syntax rules of any particular languageparticular language
There is no systematic standard form, There is no systematic standard form, although any particular writer will although any particular writer will generally borrow style and syntax for generally borrow style and syntax for example control structures from some example control structures from some conventional programming language. conventional programming language.
![Page 25: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/25.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:25
KEYWORDS
Several keywords are used to indicate Several keywords are used to indicate common input, output and processing common input, output and processing operations:operations:
InputInput: Read, Obtain, Get: Read, Obtain, Get
OutputOutput: Print, Display, Show: Print, Display, Show
ComputeCompute: Compute, Calculate, Determine: Compute, Calculate, Determine
InitializeInitialize: Set, Init: Set, Init
Add OneAdd One: Increment, Bump: Increment, Bump
![Page 26: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/26.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:26
Example 1
Draw the flowchart and also give the Draw the flowchart and also give the pseudocode to calculate the paypseudocode to calculate the pay
Start
Read hours
Read rate
Pay = hours * rate
End
![Page 27: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/27.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:27
Pseudocode
BeginBegin
input hoursinput hours
input rateinput rate
pay = hours * ratepay = hours * rate
print payprint pay
EndEnd
![Page 28: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/28.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:28
Assignments
Draw the flowchart and the Draw the flowchart and the pseudocode for the following pseudocode for the following problems:problems:
1.1.To find the sum of two numbers.To find the sum of two numbers.
2.To find the average of three numbers.2.To find the average of three numbers.
![Page 29: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/29.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:29
IF-THEN-ELSE
Binary choiceBinary choice on a given Boolean condition is on a given Boolean condition is indicated by the use of four keywords: IF, THEN, indicated by the use of four keywords: IF, THEN, ELSE, and ENDIF. The general form is: ELSE, and ENDIF. The general form is:
IFIF condition condition THENTHEN
sequence 1sequence 1
ELSEELSE
sequence 2sequence 2
ENDIFENDIF
If the condition is If the condition is truetrue, , sequence 1sequence 1 is performed, is performed, otherwise otherwise sequence 2sequence 2 is performed. is performed.
![Page 30: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/30.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:30
Example
Draw the flowchart and also give the Draw the flowchart and also give the pseudocode to calculate the pay with pseudocode to calculate the pay with overtimeovertime
Start
Read hours, rate
Pay = hours * rate
End
Is hours <= 40Yes
No
Pay = 40 * rate +(hours – 40) *1.5 * rate
![Page 31: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/31.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:31
BeginBegin input hours, rateinput hours, rate if hours <=40 thenif hours <=40 then pay = hours * ratepay = hours * rate else else pay = 40 * rate + (hours – pay = 40 * rate + (hours – rate) * 1.5 * raterate) * 1.5 * rate endifendif print payprint payEndEnd
Pseudocode
![Page 32: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/32.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:32
WHILE
The The WHILEWHILE is used to specify a is used to specify a looploop with a with a test at the top. The beginning and ending of test at the top. The beginning and ending of the loop are indicated by two keywords the loop are indicated by two keywords WHILEWHILE and and ENDWHILEENDWHILE. The general form . The general form isis
WHILEWHILE condition condition
sequencesequence
ENDWHILEENDWHILE
![Page 33: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/33.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:33
Draw the flowchart and also give the pseudocode Draw the flowchart and also give the pseudocode to find the average of 10 numbers.to find the average of 10 numbers.
Example
Start
sum = x + sumIncrement i
While i<=10
Yes
No
Avg = sum / 10
i=1, sum=0
Input x
Print avg
Stop
![Page 34: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/34.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:34
BeginBegin i=1i=1 sum=0sum=0 While i <=10While i <=10 input xinput x sum = sum + xsum = sum + x i = i + 1i = i + 1 end whileend while avg = sum/10avg = sum/10 print avgprint avgEndEnd
Pseudocode
![Page 35: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/35.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:35
A CASE construct indicates a A CASE construct indicates a multiwaymultiway branch branch based on conditions that are mutually exclusive. based on conditions that are mutually exclusive. Four keywords, CASE, OF, OTHERS, and ENDCASE, Four keywords, CASE, OF, OTHERS, and ENDCASE, and conditions are used to indicate the various and conditions are used to indicate the various alternatives. The general form is:alternatives. The general form is:
CASECASE expression expression OFOF condition 1 : sequence 1 condition 1 : sequence 1 condition 2 : sequence 2 condition 2 : sequence 2 ... ... condition n : sequence n condition n : sequence n OTHERS: OTHERS: default sequence default sequenceENDCASEENDCASE
CASE
![Page 36: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/36.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:36
Example
CASE Title OFCASE Title OF Mr : Print "Mister" Mr : Print "Mister" Mrs : Print "Missus" Mrs : Print "Missus" Miss : Print "Miss" Miss : Print "Miss" Ms : Print "Mizz" Ms : Print "Mizz" Dr : Print "Doctor" Dr : Print "Doctor"ENDCASEENDCASE
CASE grade OFCASE grade OF A : points = 4 A : points = 4 B : points = 3 B : points = 3 C : points = 2 C : points = 2 D : points = 1 D : points = 1 F : points = 0 F : points = 0ENDCASEENDCASE
![Page 37: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/37.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:37
REPEAT-UNTIL
This loop is similar to the WHILE loop except This loop is similar to the WHILE loop except that the test is performed at the that the test is performed at the bottombottom of of the loop instead of at the top. Two the loop instead of at the top. Two keywords, keywords, REPEATREPEAT and and UNTILUNTIL are used. are used. The general form is: The general form is:
REPEATREPEAT
sequencesequence
UNTILUNTIL condition condition
![Page 38: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/38.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:38
FOR
This loop is a specialized construct for This loop is a specialized construct for iterating a specific number of times, often iterating a specific number of times, often called a “counting” loop. Two keywords, called a “counting” loop. Two keywords, FOR and ENDFOR are used. The general FOR and ENDFOR are used. The general form is:form is:
FORFOR iteration bounds iteration bounds
sequencesequence
ENDFORENDFOR
![Page 39: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/39.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:39
Example
Write a Pseudode to find the average of 10 Write a Pseudode to find the average of 10 numbers using FOR loop.numbers using FOR loop.
BeginBegin sum = 0sum = 0 for i = 1 to 10for i = 1 to 10 input xinput x sum = sum + xsum = sum + x end forend for avg = sum / 10avg = sum / 10 print avgprint avgEndEnd
![Page 40: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/40.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:40
Computers being Computers being electronic brainselectronic brains or having or having artificial intelligenceartificial intelligence, it is still necessary for , it is still necessary for humans to convey this sequence of instructions humans to convey this sequence of instructions to the computer before the computer can to the computer before the computer can perform the task.perform the task.
ProgrammingProgramming means designing or creating a means designing or creating a set of instructions to ask the computer to carry set of instructions to ask the computer to carry out certain jobs which normally are very much out certain jobs which normally are very much fasterfaster than than human beingshuman beings can do. can do.
In order to do programming, we need to use In order to do programming, we need to use certain certain computer languagecomputer language to communicate to communicate with the computer. with the computer.
Programming Languages
![Page 41: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/41.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:41
There are many computer languages out There are many computer languages out there, some of the examples are C, Visual there, some of the examples are C, Visual Basic, Fortran, Cobol, Java, C++, Turbo Basic, Fortran, Cobol, Java, C++, Turbo Pascal, Assembly language and etc.Pascal, Assembly language and etc.
The set of instructions and the order in The set of instructions and the order in which they have to be performed is which they have to be performed is known as an known as an algorithmalgorithm..
![Page 42: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/42.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:42
The result of expressing the The result of expressing the algorithm in a programming language algorithm in a programming language is called a is called a programprogram. .
The process of writing the algorithm The process of writing the algorithm using a programming language is using a programming language is called called programmingprogramming, and the , and the person doing this is the person doing this is the programmerprogrammer. .
![Page 43: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/43.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:43
Storage
Holds the data that the computer Holds the data that the computer will process and the will process and the instructionsinstructions that indicate what processing is to that indicate what processing is to be done.be done.
In a In a digital computerdigital computer, these are , these are stored in a form known as stored in a form known as binarybinary, , which means that each instruction which means that each instruction is represented by a series of is represented by a series of bitsbits. .
![Page 44: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/44.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:44
Bits are conceptually combined Bits are conceptually combined into larger units called into larger units called bytesbytes (usually 8 bits each) and (usually 8 bits each) and wordswords (usually 8 to 64 bits each). (usually 8 to 64 bits each).
Types of Storage deviceTypes of Storage device1.1. RegistersRegisters2.2. Main memoryMain memory3.3. Secondary storage.Secondary storage.
![Page 45: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/45.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:45
RegistersRegisters Registers are the fastest and most Registers are the fastest and most
costly storage units in a computer.costly storage units in a computer.
Normally contained within the Normally contained within the processing unitprocessing unit
Registers hold Registers hold datadata that are involved that are involved with the computation currently being with the computation currently being performed.performed.
![Page 46: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/46.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:46
Main MemoryMain Memory Computer Memory is the internal storage Computer Memory is the internal storage
areas in the computer.areas in the computer. It comes in the form of chips capable of It comes in the form of chips capable of
holding data.holding data.
Two Types of MemoryTwo Types of Memory1.1. ROM (Read Only Memory)ROM (Read Only Memory)2.2. RAM (Random Access Memory)RAM (Random Access Memory)
![Page 47: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/47.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:47
Date is prerecorded for read only, Date is prerecorded for read only, which cannot be removed.which cannot be removed.
ROM is non-volatile.ROM is non-volatile.
Store critical programs such as the Store critical programs such as the program that boots the computer.program that boots the computer.
ROM (READ ONLY MEMORY)
![Page 48: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/48.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:48
RAM (RANDOM ACCESS MEMORY)
Date can be read, write and remove Date can be read, write and remove in any order.in any order.
RAM is volatile.RAM is volatile.
CachingA small, fast memory system contains the most frequently used words from a slower, larger main memory.
![Page 49: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/49.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:49
Secondary storage is the slowest, Secondary storage is the slowest, lowest-cost, and highest-capacity lowest-cost, and highest-capacity computer storage area. computer storage area.
Programs and data are kept in Programs and data are kept in secondary memory when not in secondary memory when not in immediate use, so that secondary immediate use, so that secondary memory is essentially a long-term memory is essentially a long-term storage medium. storage medium.
Secondary Storage
![Page 50: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/50.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:50
For the first machines in the 1940s, For the first machines in the 1940s, programmers had no choice but to write programmers had no choice but to write in the sequences of digits that the in the sequences of digits that the computer executed.computer executed.
Machine language is a collection of Machine language is a collection of binarybinary digits or bits that the computer digits or bits that the computer reads and interprets. Machine language reads and interprets. Machine language is the only language a computer is is the only language a computer is capable of understanding. capable of understanding.
Machine Language
![Page 51: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/51.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:51
Assembly Language
Since each component of a program stands for Since each component of a program stands for an object that the programmer understands, an object that the programmer understands, using its using its namename rather than rather than numbersnumbers should should make it easier to program.make it easier to program.
By naming all locations with easy-to-remember By naming all locations with easy-to-remember names, and by using symbolic names for names, and by using symbolic names for machine instructions, some of the difficulties of machine instructions, some of the difficulties of machine programming can be eliminated.machine programming can be eliminated.
A relatively simple program called an A relatively simple program called an assemblerassembler converts this symbolic notation into converts this symbolic notation into an equivalent machine language program.an equivalent machine language program.
![Page 52: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/52.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:52
High Level Language
High Level Languages (HLL)High Level Languages (HLL) use words similar to use words similar to English and are easier to write. English and are easier to write.
The first programming languages were developed in the The first programming languages were developed in the late 1950s. late 1950s.
If we want to compute |If we want to compute |AA + + BB − − CC|, and store the result |, and store the result in a memory location called in a memory location called DD, all we had to do was , all we had to do was write write DD = | = |AA + + BB − − CC| and let a computer program, the | and let a computer program, the compilercompiler, convert that into the sequences of numbers , convert that into the sequences of numbers that the computer could execute. that the computer could execute. FORTRANFORTRAN (an (an acronym for Formula Translation) was the first major acronym for Formula Translation) was the first major language in this period.language in this period.
![Page 53: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/53.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:53
Edit-Compile-Link-Execute Process
Developing a program in a compiled Developing a program in a compiled language such as C requires at least four language such as C requires at least four steps:steps:
editingediting (or writing) the program (or writing) the program compilingcompiling it it linkinglinking it it executingexecuting it it
![Page 54: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/54.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:54
Editing
Write a computer program with words and Write a computer program with words and symbols that are understandable to human symbols that are understandable to human beings.beings.
This is the This is the editing partediting part of the development of the development cycle.cycle.
Type the program directly into a window on Type the program directly into a window on the screen and save the resulting text as a the screen and save the resulting text as a separate file often called as separate file often called as source filesource file..
Example:Example: The text of a The text of a C programC program is stored is stored with the extension with the extension .C.C..
![Page 55: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/55.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:55
Compiling
Cannot execute the source code directly.Cannot execute the source code directly.
Source file must be translated into binary Source file must be translated into binary numbers understandable to the numbers understandable to the computer.computer.
Compiler converts the source file (Compiler converts the source file (.c.c for for C) into an object file with the C) into an object file with the extension extension .obj.obj..
![Page 56: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/56.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:56
Linking
Many languages come with library routines Many languages come with library routines which can be added to your program.which can be added to your program.
These routines are written by the manufacturer These routines are written by the manufacturer of the compiler to perform a variety of tasks. So of the compiler to perform a variety of tasks. So these routines need to be added to your these routines need to be added to your program.program.
So the linker will convert the file with the So the linker will convert the file with the extension extension .obj.obj to a file with the extension to a file with the extension .exe.exe (executable file).(executable file).
![Page 57: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/57.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:57
Executable File
Editor produces Editor produces .c.c sources files. sources files.
The C source file are taken by the complier, The C source file are taken by the complier, which will convert to a file with the which will convert to a file with the extension extension .obj.obj..
The object file will be taken by the linker, which The object file will be taken by the linker, which will convert a file with extension will convert a file with extension .obj.obj to a file to a file with extension with extension .exe.exe..
Now you can run Now you can run .exe.exe files simply by typing files simply by typing their names.their names.
![Page 58: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/58.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:58
LoaderLoaderCopying a program image from Copying a program image from hard diskhard disk to the to the main memorymain memory in order to put the in order to put the program in a ready-to-run state.program in a ready-to-run state.
TestingTestingTesting means finding all possible Testing means finding all possible bugsbugs. . The program should be tested against all The program should be tested against all possible possible inputsinputs..
![Page 59: INTRODUCTION TO PROGRAMMING](https://reader031.vdocuments.us/reader031/viewer/2022012916/5681420e550346895dae0dc5/html5/thumbnails/59.jpg)
Copyrights© 2008 BVU Amplify DITM
Programming and Problem solving through C LanguageProgramming and Problem solving through C Language
Page:59
DebuggingDebugging Debugging is the process of Debugging is the process of analyzinganalyzing
and and locatinglocating the bugs when software the bugs when software does not behave as expected.does not behave as expected.
DocumentationDocumentation Write a brief and accurate Write a brief and accurate commentscomments at at
the beginning of each function.the beginning of each function. It becomes easy for other people It becomes easy for other people
unfamiliarunfamiliar with the working of the with the working of the program.program.