SlideShare una empresa de Scribd logo
1 de 64
PseudoCode
Damian Gordon
Pseudocode
• The first thing we do when designing a
program is to decide on a name for the
program.
Pseudocode
• The first thing we do when designing a
program is to decide on a name for the
program.
• Let’s say we want to write a program to
calculate interest, a good name for the
program would be CalculateInterest.
Pseudocode
• The first thing we do when designing a
program is to decide on a name for the
program.
• Let’s say we want to write a program to
calculate interest, a good name for the
program would be CalculateInterest.
• Note the use of CamelCase.
Pseudocode
• The first thing we do when designing a
program is to decide on a name for the
program.
• Let’s say we want to write a program to
calculate interest, a good name for the
program would be CalculateInterest.
• Note the use of CamelCase.
Pseudocode
• So we start the program as:
PROGRAM CalculateInterest:
Pseudocode
• So we start the program as:
PROGRAM CalculateInterest:
• And in general it’s:

PROGRAM <ProgramName>:
Pseudocode
• Our program will finish with the following:
END.
Pseudocode
• Our program will finish with the following:
END.
• And in general it’s the same:

END.
Pseudocode
• So the general structure of all programs is:
PROGRAM <ProgramName>:
<Do stuff>
END.
SEQUENCE
Pseudocode
• When we write programs, we assume that the
computer executes the program starting at
the beginning and working its way to the end.
• This is a basic assumption of all algorithm
design.
Pseudocode
• When we write programs, we assume that the
computer executes the program starting at
the beginning and working its way to the end.
• This is a basic assumption of all algorithm
design.
• We call this SEQUENCE.
Pseudocode
• In Pseudo code it looks like this:
Statement1;
Statement2;
Statement3;
Statement4;
Statement5;
Statement6;
Statement7;
Statement8;
Pseudocode
• For example, for making a cup of tea:

Organise everything together;
Plug in kettle;
Put teabag in cup;
Put water into kettle;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk and/or sugar;
Serve;
Pseudocode
• Or as a program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
Put water into kettle;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk and/or sugar;
Serve;
END.
Pseudocode
• Or as a program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
Put water into kettle;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk and/or sugar;
Serve;
END.
SELECTION
Pseudocode
• What if we want to make a choice, for
example, do we want to add sugar or not to
the tea?
Pseudocode
• What if we want to make a choice, for
example, do we want to add sugar or not to
the tea?
• We call this SELECTION.
Pseudocode
• So, we could state this as:
IF (sugar is required)
THEN add sugar;
ELSE don’t add sugar;
ENDIF;
Pseudocode
• Or, in general:
IF (<CONDITION>)
THEN <Statements>;
ELSE <Statements>;
ENDIF;
Pseudocode
• Or to check which number is biggest:
IF (A > B)
THEN Print A + “is bigger”;
ELSE Print B + “is bigger”;
ENDIF;
Pseudocode
•

Adding a selection statement in the program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
Put water into kettle;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk;
IF (sugar is required)
THEN add sugar;
ELSE do nothing;
ENDIF;
Serve;
END.
Pseudocode
•

Adding a selection statement in the program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
Put water into kettle;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk;
IF (sugar is required)
THEN add sugar;
ELSE do nothing;
ENDIF;
Serve;
END.
ITERATION
Pseudocode
• What if we need to tell the computer to keep
doing something until some condition occurs?
Pseudocode
• What if we need to tell the computer to keep
doing something until some condition occurs?
• Let’s say we wish to indicate that the you need
to keep filling the kettle with water until it is
full.
Pseudocode
• What if we need to tell the computer to keep
doing something until some condition occurs?
• Let’s say we wish to indicate that the you need
to keep filling the kettle with water until it is
full.
• We need a loop, or ITERATION.
Pseudocode
• So, we could state this as:
WHILE (Kettle is not full)
DO keep filling kettle;
ENDWHILE;
Pseudocode
• Or, in general:
WHILE (<CONDITION>)
DO <Statements>;
ENDWHILE;
Pseudocode
• Or to print out the numbers 1 to 5:
A = 1;
WHILE(A < 5)
DO Print A;
A = A + 1;
ENDWHILE;
Pseudocode
• What is the benefit of using a loop?
Pseudocode
• Consider the problem of searching for an
entry in a phone book with only condition:
Pseudocode
• Consider the problem of searching for an
entry in a phone book with only condition:
Get first entry
If this is the required entry
Then write down phone number
Else get next entry
If this is the correct entry
then write done entry
else get next entry
if this is the correct entry
…………….
Pseudocode
• This could take forever to specify.
Pseudocode
• This could take forever to specify.
• There must be a better way to do it.
Pseudocode
• We may rewrite this as follows:
Get first entry;
Call this entry N;
WHILE N is NOT the required entry
DO Get next entry;
Call this entry N;
ENDWHILE;
Pseudocode
• We may rewrite this as follows:
Get first entry;
Call this entry N;
WHILE N is NOT the required entry
DO Get next entry;
Call this entry N;
ENDWHILE;

• This is why we love loops!
Pseudocode
•

Or as a program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
WHILE (Kettle is not full)
DO keep filling kettle;
ENDWHILE;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk;
IF (sugar is required)
THEN add sugar;
ELSE do nothing;
ENDIF;
Serve;
END.
Pseudocode
•

Or as a program:

PROGRAM MakeACupOfTea:
Organise everything together;
Plug in kettle;
Put teabag in cup;
WHILE (Kettle is not full)
DO keep filling kettle;
ENDWHILE;
Wait for kettle to boil;
Add water to cup;
Remove teabag with spoon/fork;
Add milk;
IF (sugar is required)
THEN add sugar;
ELSE do nothing;
ENDIF;
Serve;
END.
EXAMPLES
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and print it out.
Pseudocode
PROGRAM PrintNumber:
Read A;
Print A;
END.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and print it out double the number.
Pseudocode
PROGRAM PrintDoubleNumber:
Read A;
B = A*2;
Print B;
END.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number, check if it is odd or even.
Pseudocode
PROGRAM IsOddOrEven:
Read A;
IF (A/2 gives a remainder)
THEN Print “It’s Odd”;
ELSE Print “It’s Even”;
ENDIF;
END.
Pseudocode
• So let’s say we want to express the
following algorithm to print out the bigger
of two numbers:
– Read in two numbers, call them A and B. Is A is bigger
than B, print out A, otherwise print out B.
Pseudocode
PROGRAM PrintBiggerOfTwo:
Read A;
Read B;
IF (A>B)
THEN Print A;
ELSE Print B;
ENDIF;
END.
Pseudocode
• So let’s say we want to express the
following algorithm to print out the bigger
of three numbers:
– Read in three numbers, call them A, B and C.
• If A is bigger than B, then if A is bigger than C, print out
A, otherwise print out C.
• If B is bigger than A, then if B is bigger than C, print out
B, otherwise print out C.
Pseudocode
PROGRAM BiggerOfThree:
Read A;
Read B;
Read C;
IF (A>B)
THEN IF (A>C)
THEN Print A;
ELSE Print C;
END IF;
ELSE IF (B>C)
THEN Print B;
ELSE Print C;
END IF;

END IF;
END.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Print out the numbers from 1 to 5
Pseudocode
PROGRAM Print1to5:
A = 1;
WHILE (A != 6)
DO Print A;
A = A + 1;
ENDWHILE;
END.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Add up the numbers 1 to 5 and print out the result
Pseudocode
PROGRAM PrintSum1to5:
Total = 0;
A = 1;
WHILE (A != 6)
DO Total = Total + A;
A = A + 1;
ENDWHILE;
Print Total;
END.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and check if it’s a prime number.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and check if it’s a prime number.
– What’s a prime number?
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and check if it’s a prime number.
– What’s a prime number?
– A number that’s only divisible by itself and 1, e.g. 7.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and check if it’s a prime number.
– What’s a prime number?
– A number that’s only divisible by itself and 1, e.g. 7.
– Or to put it another way, every number other than itself and 1
gives a remainder, e.g. For 7, if 6, 5, 4, 3, and 2 give a remainder
then 7 is prime.
Pseudocode
• So let’s say we want to express the
following algorithm:
– Read in a number and check if it’s a prime number.
– What’s a prime number?
– A number that’s only divisible by itself and 1, e.g. 7.
– Or to put it another way, every number other than itself and 1
gives a remainder, e.g. For 7, if 6, 5, 4, 3, and 2 give a remainder
then 7 is prime.
– So all we need to do is divide 7 by all numbers less than it but
greater than one, and if any of them have no remainder, we
know it’s not prime.
Pseudocode
• So,
• If the number is 7, as long as 6, 5, 4, 3, and
2 give a remainder, 7 is prime.
• If the number is 9, we know that
8, 7, 6, 5, and 4, all give remainders, but 3
does not give a remainder, it goes evenly
into 9 so we can say 9 is not prime
Pseudocode
• So remember,
– if the number is 7, as long as 6, 5, 4, 3, and 2
give a remainder, 7 is prime.

• So, in general,
– if the number is A, as long as A-1, A-2, A-3, A4, ... 2 give a remainder, A is prime.
Pseudocode
PROGRAM Prime:
Read A;
B = A - 1;
IsPrime=True;
WHILE (B != 1)
DO IF (A/B gives no remainder)
THEN IsPrime= False;
ENDIF;
B = B – 1;
ENDWHILE;
IF (IsPrime == true)
THEN Print “Prime”;
ELSE Print “Not Prime”;
ENDIF;
END.

Más contenido relacionado

La actualidad más candente

Our presentation on algorithm design
Our presentation on algorithm designOur presentation on algorithm design
Our presentation on algorithm design
Nahid Hasan
 
DESIGN AND ANALYSIS OF ALGORITHMS
DESIGN AND ANALYSIS OF ALGORITHMSDESIGN AND ANALYSIS OF ALGORITHMS
DESIGN AND ANALYSIS OF ALGORITHMS
Gayathri Gaayu
 
Nested loop in C language
Nested loop in C languageNested loop in C language
Nested loop in C language
ErumShammim
 

La actualidad más candente (20)

Algorithm and flowchart
Algorithm and flowchartAlgorithm and flowchart
Algorithm and flowchart
 
Unit 1-problem solving with algorithm
Unit 1-problem solving with algorithmUnit 1-problem solving with algorithm
Unit 1-problem solving with algorithm
 
Algorithm and flowchart
Algorithm and flowchart Algorithm and flowchart
Algorithm and flowchart
 
Programming paradigm
Programming paradigmProgramming paradigm
Programming paradigm
 
Algorithms and flowcharts
Algorithms and flowchartsAlgorithms and flowcharts
Algorithms and flowcharts
 
Programming Fundamentals
Programming FundamentalsProgramming Fundamentals
Programming Fundamentals
 
Object Oriented Programming
Object Oriented ProgrammingObject Oriented Programming
Object Oriented Programming
 
Loops c++
Loops c++Loops c++
Loops c++
 
Conditional Statement in C#
Conditional Statement in C#Conditional Statement in C#
Conditional Statement in C#
 
Writing algorithms
Writing algorithmsWriting algorithms
Writing algorithms
 
Our presentation on algorithm design
Our presentation on algorithm designOur presentation on algorithm design
Our presentation on algorithm design
 
Pseudocode & flowchart examples
Pseudocode & flowchart examplesPseudocode & flowchart examples
Pseudocode & flowchart examples
 
Nested loops
Nested loopsNested loops
Nested loops
 
Algorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsAlgorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to Algorithms
 
A complete course in Program Design using Pseudocode
A complete course in Program Design using Pseudocode A complete course in Program Design using Pseudocode
A complete course in Program Design using Pseudocode
 
Types of algorithms
Types of algorithmsTypes of algorithms
Types of algorithms
 
DESIGN AND ANALYSIS OF ALGORITHMS
DESIGN AND ANALYSIS OF ALGORITHMSDESIGN AND ANALYSIS OF ALGORITHMS
DESIGN AND ANALYSIS OF ALGORITHMS
 
The pseudocode
The pseudocodeThe pseudocode
The pseudocode
 
Nested loop in C language
Nested loop in C languageNested loop in C language
Nested loop in C language
 
Conditional statement c++
Conditional statement c++Conditional statement c++
Conditional statement c++
 

Destacado (6)

Algorithms
AlgorithmsAlgorithms
Algorithms
 
Algorithm and flowchart
Algorithm and flowchartAlgorithm and flowchart
Algorithm and flowchart
 
pseudo code basics
pseudo code basicspseudo code basics
pseudo code basics
 
Algorithm and flowchart2010
Algorithm and flowchart2010Algorithm and flowchart2010
Algorithm and flowchart2010
 
Algorithmsandflowcharts1
Algorithmsandflowcharts1Algorithmsandflowcharts1
Algorithmsandflowcharts1
 
Flowchart and algorithm
Flowchart and algorithmFlowchart and algorithm
Flowchart and algorithm
 

Similar a Introduction to Pseudocode

User Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative EstimationUser Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative Estimation
Alex Kanaan, SPC5, CSP, ACC, ATF
 
Introduction to Flowol for Key Stage 3
Introduction to Flowol for Key Stage 3Introduction to Flowol for Key Stage 3
Introduction to Flowol for Key Stage 3
mrpeddle
 
Writing process workshop
Writing process workshopWriting process workshop
Writing process workshop
weigansm
 

Similar a Introduction to Pseudocode (11)

Algorithm and psuedocode
Algorithm and psuedocodeAlgorithm and psuedocode
Algorithm and psuedocode
 
Simple programming
Simple programmingSimple programming
Simple programming
 
Sales and Operations Planning Worst Practices
Sales and Operations Planning Worst PracticesSales and Operations Planning Worst Practices
Sales and Operations Planning Worst Practices
 
User Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative EstimationUser Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative Estimation
 
Introduction to Flowol for Key Stage 3
Introduction to Flowol for Key Stage 3Introduction to Flowol for Key Stage 3
Introduction to Flowol for Key Stage 3
 
Week 1
Week 1Week 1
Week 1
 
How ESUP-Portail contributes to open source software for higher ed
How ESUP-Portail contributes to open source software for higher edHow ESUP-Portail contributes to open source software for higher ed
How ESUP-Portail contributes to open source software for higher ed
 
AS computing
AS computingAS computing
AS computing
 
Scientific Thinking for Agile teams - TOYOTA KATA
Scientific Thinking for Agile teams - TOYOTA KATAScientific Thinking for Agile teams - TOYOTA KATA
Scientific Thinking for Agile teams - TOYOTA KATA
 
Writing process workshop
Writing process workshopWriting process workshop
Writing process workshop
 
Testing antipatterns
Testing antipatternsTesting antipatterns
Testing antipatterns
 

Más de Damian T. Gordon

Más de Damian T. Gordon (20)

Universal Design for Learning, Co-Designing with Students.
Universal Design for Learning, Co-Designing with Students.Universal Design for Learning, Co-Designing with Students.
Universal Design for Learning, Co-Designing with Students.
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
REST and RESTful Services
REST and RESTful ServicesREST and RESTful Services
REST and RESTful Services
 
Serverless Computing
Serverless ComputingServerless Computing
Serverless Computing
 
Cloud Identity Management
Cloud Identity ManagementCloud Identity Management
Cloud Identity Management
 
Containers and Docker
Containers and DockerContainers and Docker
Containers and Docker
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Introduction to ChatGPT
Introduction to ChatGPTIntroduction to ChatGPT
Introduction to ChatGPT
 
How to Argue Logically
How to Argue LogicallyHow to Argue Logically
How to Argue Logically
 
Evaluating Teaching: SECTIONS
Evaluating Teaching: SECTIONSEvaluating Teaching: SECTIONS
Evaluating Teaching: SECTIONS
 
Evaluating Teaching: MERLOT
Evaluating Teaching: MERLOTEvaluating Teaching: MERLOT
Evaluating Teaching: MERLOT
 
Evaluating Teaching: Anstey and Watson Rubric
Evaluating Teaching: Anstey and Watson RubricEvaluating Teaching: Anstey and Watson Rubric
Evaluating Teaching: Anstey and Watson Rubric
 
Evaluating Teaching: LORI
Evaluating Teaching: LORIEvaluating Teaching: LORI
Evaluating Teaching: LORI
 
Designing Teaching: Pause Procedure
Designing Teaching: Pause ProcedureDesigning Teaching: Pause Procedure
Designing Teaching: Pause Procedure
 
Designing Teaching: ADDIE
Designing Teaching: ADDIEDesigning Teaching: ADDIE
Designing Teaching: ADDIE
 
Designing Teaching: ASSURE
Designing Teaching: ASSUREDesigning Teaching: ASSURE
Designing Teaching: ASSURE
 
Designing Teaching: Laurilliard's Learning Types
Designing Teaching: Laurilliard's Learning TypesDesigning Teaching: Laurilliard's Learning Types
Designing Teaching: Laurilliard's Learning Types
 
Designing Teaching: Gagne's Nine Events of Instruction
Designing Teaching: Gagne's Nine Events of InstructionDesigning Teaching: Gagne's Nine Events of Instruction
Designing Teaching: Gagne's Nine Events of Instruction
 
Designing Teaching: Elaboration Theory
Designing Teaching: Elaboration TheoryDesigning Teaching: Elaboration Theory
Designing Teaching: Elaboration Theory
 
Universally Designed Learning Spaces: Some Considerations
Universally Designed Learning Spaces: Some ConsiderationsUniversally Designed Learning Spaces: Some Considerations
Universally Designed Learning Spaces: Some Considerations
 

Último

1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 

Último (20)

SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 

Introduction to Pseudocode

  • 2. Pseudocode • The first thing we do when designing a program is to decide on a name for the program.
  • 3. Pseudocode • The first thing we do when designing a program is to decide on a name for the program. • Let’s say we want to write a program to calculate interest, a good name for the program would be CalculateInterest.
  • 4. Pseudocode • The first thing we do when designing a program is to decide on a name for the program. • Let’s say we want to write a program to calculate interest, a good name for the program would be CalculateInterest. • Note the use of CamelCase.
  • 5. Pseudocode • The first thing we do when designing a program is to decide on a name for the program. • Let’s say we want to write a program to calculate interest, a good name for the program would be CalculateInterest. • Note the use of CamelCase.
  • 6. Pseudocode • So we start the program as: PROGRAM CalculateInterest:
  • 7. Pseudocode • So we start the program as: PROGRAM CalculateInterest: • And in general it’s: PROGRAM <ProgramName>:
  • 8. Pseudocode • Our program will finish with the following: END.
  • 9. Pseudocode • Our program will finish with the following: END. • And in general it’s the same: END.
  • 10. Pseudocode • So the general structure of all programs is: PROGRAM <ProgramName>: <Do stuff> END.
  • 12. Pseudocode • When we write programs, we assume that the computer executes the program starting at the beginning and working its way to the end. • This is a basic assumption of all algorithm design.
  • 13. Pseudocode • When we write programs, we assume that the computer executes the program starting at the beginning and working its way to the end. • This is a basic assumption of all algorithm design. • We call this SEQUENCE.
  • 14. Pseudocode • In Pseudo code it looks like this: Statement1; Statement2; Statement3; Statement4; Statement5; Statement6; Statement7; Statement8;
  • 15. Pseudocode • For example, for making a cup of tea: Organise everything together; Plug in kettle; Put teabag in cup; Put water into kettle; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk and/or sugar; Serve;
  • 16. Pseudocode • Or as a program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; Put water into kettle; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk and/or sugar; Serve; END.
  • 17. Pseudocode • Or as a program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; Put water into kettle; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk and/or sugar; Serve; END.
  • 19. Pseudocode • What if we want to make a choice, for example, do we want to add sugar or not to the tea?
  • 20. Pseudocode • What if we want to make a choice, for example, do we want to add sugar or not to the tea? • We call this SELECTION.
  • 21. Pseudocode • So, we could state this as: IF (sugar is required) THEN add sugar; ELSE don’t add sugar; ENDIF;
  • 22. Pseudocode • Or, in general: IF (<CONDITION>) THEN <Statements>; ELSE <Statements>; ENDIF;
  • 23. Pseudocode • Or to check which number is biggest: IF (A > B) THEN Print A + “is bigger”; ELSE Print B + “is bigger”; ENDIF;
  • 24. Pseudocode • Adding a selection statement in the program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; Put water into kettle; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk; IF (sugar is required) THEN add sugar; ELSE do nothing; ENDIF; Serve; END.
  • 25. Pseudocode • Adding a selection statement in the program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; Put water into kettle; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk; IF (sugar is required) THEN add sugar; ELSE do nothing; ENDIF; Serve; END.
  • 27. Pseudocode • What if we need to tell the computer to keep doing something until some condition occurs?
  • 28. Pseudocode • What if we need to tell the computer to keep doing something until some condition occurs? • Let’s say we wish to indicate that the you need to keep filling the kettle with water until it is full.
  • 29. Pseudocode • What if we need to tell the computer to keep doing something until some condition occurs? • Let’s say we wish to indicate that the you need to keep filling the kettle with water until it is full. • We need a loop, or ITERATION.
  • 30. Pseudocode • So, we could state this as: WHILE (Kettle is not full) DO keep filling kettle; ENDWHILE;
  • 31. Pseudocode • Or, in general: WHILE (<CONDITION>) DO <Statements>; ENDWHILE;
  • 32. Pseudocode • Or to print out the numbers 1 to 5: A = 1; WHILE(A < 5) DO Print A; A = A + 1; ENDWHILE;
  • 33. Pseudocode • What is the benefit of using a loop?
  • 34. Pseudocode • Consider the problem of searching for an entry in a phone book with only condition:
  • 35. Pseudocode • Consider the problem of searching for an entry in a phone book with only condition: Get first entry If this is the required entry Then write down phone number Else get next entry If this is the correct entry then write done entry else get next entry if this is the correct entry …………….
  • 36. Pseudocode • This could take forever to specify.
  • 37. Pseudocode • This could take forever to specify. • There must be a better way to do it.
  • 38. Pseudocode • We may rewrite this as follows: Get first entry; Call this entry N; WHILE N is NOT the required entry DO Get next entry; Call this entry N; ENDWHILE;
  • 39. Pseudocode • We may rewrite this as follows: Get first entry; Call this entry N; WHILE N is NOT the required entry DO Get next entry; Call this entry N; ENDWHILE; • This is why we love loops!
  • 40. Pseudocode • Or as a program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; WHILE (Kettle is not full) DO keep filling kettle; ENDWHILE; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk; IF (sugar is required) THEN add sugar; ELSE do nothing; ENDIF; Serve; END.
  • 41. Pseudocode • Or as a program: PROGRAM MakeACupOfTea: Organise everything together; Plug in kettle; Put teabag in cup; WHILE (Kettle is not full) DO keep filling kettle; ENDWHILE; Wait for kettle to boil; Add water to cup; Remove teabag with spoon/fork; Add milk; IF (sugar is required) THEN add sugar; ELSE do nothing; ENDIF; Serve; END.
  • 43. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and print it out.
  • 45. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and print it out double the number.
  • 47. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number, check if it is odd or even.
  • 48. Pseudocode PROGRAM IsOddOrEven: Read A; IF (A/2 gives a remainder) THEN Print “It’s Odd”; ELSE Print “It’s Even”; ENDIF; END.
  • 49. Pseudocode • So let’s say we want to express the following algorithm to print out the bigger of two numbers: – Read in two numbers, call them A and B. Is A is bigger than B, print out A, otherwise print out B.
  • 50. Pseudocode PROGRAM PrintBiggerOfTwo: Read A; Read B; IF (A>B) THEN Print A; ELSE Print B; ENDIF; END.
  • 51. Pseudocode • So let’s say we want to express the following algorithm to print out the bigger of three numbers: – Read in three numbers, call them A, B and C. • If A is bigger than B, then if A is bigger than C, print out A, otherwise print out C. • If B is bigger than A, then if B is bigger than C, print out B, otherwise print out C.
  • 52. Pseudocode PROGRAM BiggerOfThree: Read A; Read B; Read C; IF (A>B) THEN IF (A>C) THEN Print A; ELSE Print C; END IF; ELSE IF (B>C) THEN Print B; ELSE Print C; END IF; END IF; END.
  • 53. Pseudocode • So let’s say we want to express the following algorithm: – Print out the numbers from 1 to 5
  • 54. Pseudocode PROGRAM Print1to5: A = 1; WHILE (A != 6) DO Print A; A = A + 1; ENDWHILE; END.
  • 55. Pseudocode • So let’s say we want to express the following algorithm: – Add up the numbers 1 to 5 and print out the result
  • 56. Pseudocode PROGRAM PrintSum1to5: Total = 0; A = 1; WHILE (A != 6) DO Total = Total + A; A = A + 1; ENDWHILE; Print Total; END.
  • 57. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and check if it’s a prime number.
  • 58. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and check if it’s a prime number. – What’s a prime number?
  • 59. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and check if it’s a prime number. – What’s a prime number? – A number that’s only divisible by itself and 1, e.g. 7.
  • 60. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and check if it’s a prime number. – What’s a prime number? – A number that’s only divisible by itself and 1, e.g. 7. – Or to put it another way, every number other than itself and 1 gives a remainder, e.g. For 7, if 6, 5, 4, 3, and 2 give a remainder then 7 is prime.
  • 61. Pseudocode • So let’s say we want to express the following algorithm: – Read in a number and check if it’s a prime number. – What’s a prime number? – A number that’s only divisible by itself and 1, e.g. 7. – Or to put it another way, every number other than itself and 1 gives a remainder, e.g. For 7, if 6, 5, 4, 3, and 2 give a remainder then 7 is prime. – So all we need to do is divide 7 by all numbers less than it but greater than one, and if any of them have no remainder, we know it’s not prime.
  • 62. Pseudocode • So, • If the number is 7, as long as 6, 5, 4, 3, and 2 give a remainder, 7 is prime. • If the number is 9, we know that 8, 7, 6, 5, and 4, all give remainders, but 3 does not give a remainder, it goes evenly into 9 so we can say 9 is not prime
  • 63. Pseudocode • So remember, – if the number is 7, as long as 6, 5, 4, 3, and 2 give a remainder, 7 is prime. • So, in general, – if the number is A, as long as A-1, A-2, A-3, A4, ... 2 give a remainder, A is prime.
  • 64. Pseudocode PROGRAM Prime: Read A; B = A - 1; IsPrime=True; WHILE (B != 1) DO IF (A/B gives no remainder) THEN IsPrime= False; ENDIF; B = B – 1; ENDWHILE; IF (IsPrime == true) THEN Print “Prime”; ELSE Print “Not Prime”; ENDIF; END.