Open In App

What is PseudoCode: A Complete Tutorial

Last Updated : 08 May, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

A Pseudocode is defined as a step-by-step description of an algorithm. Pseudocode does not use any programming language in its representation instead it uses the simple English language text as it is intended for human understanding rather than machine reading.
Pseudocode is the intermediate state between an idea and its implementation(code) in a high-level language.

What is PseudoCode: A Complete Tutorial

What is PseudoCode: A Complete Tutorial

What is the need for Pseudocode

Pseudocode is an important part of designing an algorithm, it helps the programmer in planning the solution to the problem as well as the reader in understanding the approach to the problem. Pseudocode is an intermediate state between algorithm and program that plays supports the transition of the algorithm into the program.

Pseudocode is an intermediate state between algorithm and program

Pseudocode is an intermediate state between algorithm and program

How to write Pseudocode?

Before writing the pseudocode of any algorithm the following points must be kept in mind. 

  • Organize the sequence of tasks and write the pseudocode accordingly.
  • At first, establishes the main goal or the aim. 

    Example:

    This program will print first N numbers of Fibonacci series.

  • Use standard programming structures such as if-else, for, while, and cases the way we use them in programming. Indent the statements if-else, for, while loops as they are indented in a program, it helps to comprehend the decision control and execution mechanism. It also improves readability to a great extent.

    Example:

    IF “1”
       print response
           “I AM CASE 1”

    IF “2”
       print response
           “I AM CASE 2”

  • Use appropriate naming conventions. The human tendency follows the approach of following what we see. If a programmer goes through a pseudo code, his approach will be the same as per that, so the naming must be simple and distinct.
  • Reserved commands or keywords must be represented in capital letters.

    Example: if you are writing IF…ELSE statements then make sure IF and ELSE be in capital letters.

  • Check whether all the sections of a pseudo code are complete, finite, and clear to understand and comprehend. Also, explain everything that is going to happen in the actual code.
  • Don’t write the pseudocode in a programming language. It is necessary that the pseudocode is simple and easy to understand even for a layman or client, minimizing the use of technical terms.

Good vs Bad ways of writing Pseudocode:

Good Vs Bad way of writing Pseudocode

Good Vs Bad way of writing Pseudocode

Pseudocode Examples:

1. Binary search Pseudocode:

Binary search is a searching algorithm that works only for sorted search space. It repeatedly divides the search space into half by using the fact that the search space is sorted and checking if the desired search result will be found in the left or right half.

Example: Given a sorted array Arr[] and a value X, The task is to find the index at which X is present in Arr[].

Below is the pseudocode for Binary search.

BinarySearch(ARR, X, LOW, HIGH)
       repeat till LOW = HIGH
              MID = (LOW + HIGH)/2
              if (X == ARR[mid])
                  return MID
        
              else if (x > ARR[MID]) 
                  LOW = MID + 1
        
              else                  
                  HIGH = MID – 1

2. Quick sort Pseudocode:

QuickSort is a Divide and Conquer algorithm. It picks an element as a pivot and partitions the given array around the picked pivot.

Say last element of array is picked as pivot then all elements smaller than pivot element are shifted on the left side of pivot and elements greater than pivot are shifted towards the right of pivot by swapping, the same algorithm is repeatedly followed for the left and right side of pivot until the whole array is sorted.

Below is the pseudocode for Quick sort

QUICKSORT(Arr[], LOW, HIGH) {
   if (LOW < HIGH) {
       PIVOT = PARTITION(Arr, LOW, HIGH);
       QUICKSORT(ARR, LOW, PIVOT – 1);  
       QUICKSORT(ARR, PIVOT + 1, HIGH); 
   }
}

Here, LOW is the starting index and HIGH is the ending index.

Difference between Algorithm and Pseudocode

Algorithm

Pseudocode

An Algorithm is used to provide a solution to a particular problem in form of a well-defined step-based form.

A Pseudocode is a step-by-step description of an algorithm in code-like structure using plain English text.

An algorithm only uses simple English words 

Pseudocode also uses reserved keywords like if-else, for, while, etc.

These are a sequence of steps of a solution to a problem

These are fake codes as the word pseudo means fake, using code like structure and plain English text

There are no rules to writing algorithms

There are certain rules for writing pseudocode

Algorithms can be considered pseudocode 

Pseudocode cannot be considered an algorithm

It is difficult to understand and interpret

It is easy to understand and interpret

Difference between Flowchart and Pseudocode

Flowchart

Pseudocode

A Flowchart is pictorial representation of flow of an algorithm.

A Pseudocode is a step-by-step description of an algorithm in code like structure using plain English text.

A Flowchart uses standard symbols for input, output decisions and start stop statements. Only uses different shapes like box, circle and arrow.

Pseudocode uses reserved keywords like if-else, for, while, etc.

This is a way of visually representing data, these are nothing but the graphical representation of the algorithm for a better understanding of the code 

These are fake codes as the word pseudo means fake, using code like structure but plain English text instead of programming language

Flowcharts are good for documentation

Pseudocode is better suited for the purpose of understanding

1. Infosys Pseudocode Questions:

What will be the output of the following pseudocode?

Question 1) for i=0 to 4 step 1 do
                           If  i==i++ + –i then do
                                  display i
                           end-if
                     end-for
Answer: 0

Question 2)  Set Character c = ‘7’
                                    switch(c)
                                    case ‘1’: display “One”
                                    case ‘7’: display “Seven”
                                    case ‘2’: display “Two”
                                    default: display “Hello”
                                    break
                           end-switch 
Answer: SevenTwoHello

Question 3) Integer a, p
                   Set a = 5
                   a = a + 1
                   a = a * 2
                   a = a / 2
                   p = a / 5 + 6
                   print p 
Answer: 7

Question 4) Integer a, b, c
                    Set b = 40, a = 20, c = 20
                    a = a + c
                    c = c + a
                    a = a + c
                    c = c + a
                    Print a + b + c 
Answer: 300

Question 5) Integer a, b, c
                    Set a = 4, b = 3, c = 1
                    if (a >> (c – 1) && b << (c + 1))
                           a = a + c
                    Else
                          b = a <<< C
                    End if
                    Print a – b + c           
Answer: 3                                                               

2. Accenture Pseudocode Questions:

What will be the output of the following pseudocode?

Questions 1) What will be the output of the following pseudocode for a = 5, b = 1?

                      Integer funn(Integer a, Integer b)
                      if(b + a || a – b) && (b > a) && 1)
                          a = a+b+b-2
                          return 3-a
                      Else
                          return a-b+1
                      End if
                      return a + b
                      End function fun()
Answer: 5

Questions 2) What will be the output of the following pseudocode for a = 5, b = 1?

                       Integer funn(Integer a, Integer b)
                       if((b mod a && a mod b) || (a ^ b > a))
                                a=a ^ b
                       Else
                                return a-b
                       End if
                       return a + b
                       End function funn()
Answer: 5

Questions 3) What will be the output of the following pseudocode?

                      Integer a, b, c
                      Set a = 4, b = 4, c = 4
                      if (a & (b ^ b) & c)
                               a = a >> 1
                      End if
                      Print a + b + c
Answer: 12

Questions 4) What will be the output of the following pseudocode for a = 10, b = 11?

                     Integer funn(Integer a, Integer b)
                     if(0)
                          return a – b – funn(-7, -1)
                     End if
                          a = a + a + a + a
                     return a
                     End function funn()
Answer: 40

Questions 5) What will be the output of the following pseudocode for a = 5, b = 1?

                      Integer funn(Integer a, Integer b)
                      if(b + a || a – b) && (b > a) && 1)
                           a = a + b + b – 2
                           return 3 – a
                      Else
                           return a – b + 1
                      End if
                      return a + b
                      End function fun()
Answer: 5

3. Capgemini Pseudocode Questions

What will be the output of the following pseudocode?

Question 1) What will be the output of the following pseudocode for a=8, b=1?

Integer funn(Integer a, Integer b)
If(a > b && a > 0)
     Return a + b + funn (b-1, a-1)
End if
Return a + b
Answer: 16

Question 2) What will be the output of the following pseudocode for p=7, q=2?

Integer funn(Integer p, Integer q)
           if(p + q < 10)
                 Return 1 + funn(p + 1, q + 1)
              Else
                 Return 2
           End if
Answer: 3

Question 3) What will be the output of the following pseudocode for a=2, b=7, c=7?

      Integer funn(Integer a, Integer b, Integer c)
      if ((b + a) < (a – b))
            a = a + c
            b = (10 + 10) + c
      End if
      Return a + b + c
Answer: 16

Question 4) What will be the output of the following pseudocode? 

String str1 = “err”, str2 = “krr”
Print (count consonant(upper(reverse(str2) + reverse(str1))))
Answer: 5

Question 5) What will be the output of the following pseudo code?

Integer a, b, c
Set a = 2, b = 11, c = 5
if ((4 + 5) < (6 + b))
      b = c & a
End if
Print a + b + c
Answer: 7

PseudoCode Frequently Asked Questions ( FAQ )

1) What are the 5 Rules of pseudocode?

Five important rules for writing pseudocode are:

  1. Write one statement per line.
  2. Initial keywords should be represented in capital case(READ, WRITE, IF, WHILE, UNTIL).
  3. Indentation of pseudocode should be similar to the actual program to show hierarchy.
  4. Ending the multiline structure is necessary.
  5. Keep statements in simple language(English).

2) How do I start pseudocode?

At first, the purpose of the process should be written to make the aim clear.

3) Is pseudocode easy to learn?

Pseudocode uses plain text mostly written in English language which makes it easy to understand and present.

4) Why do we use pseudocode?

Pseudocode provides easier understanding to people as compared to the conventional programming language code that it is an efficient and platform-independent description of the important principles of an algorithm.

5) Is pseudocode an algorithm?

Pseudocode is used to represent an algorithm but the structure of a pseudocode may not follow the same flow as an algorithm is a well-defined sequence of steps that provides a solution for a given problem.

6) What is the difference between pseudocode and flowchart?

A flowchart is a diagrammatic representation that illustrates a solution model and solution flow to a given problem whereas Pseudocode is an informal high-level description of the operating principle of an algorithm.

7) What is the difference between pseudocode and code?

Pseudocode is just a way to represent the algorithm of the program, it is how the code would look like when if it is actually programmed. Source code is the actual code that can be compiled by the compiler and then be executed by the machine.

8) Which is easier to use algorithm or pseudocode?

Pseudocode is written in English language thus it is easy to understand, construct and simpler to debug on the other hand algorithm is quite complex to construct as it sometimes involves code snippets in it and hence it is a bit difficult when it comes to debugging algorithm.

9) How do you declare a variable in pseudocode?

In pseudocode Assigning a value to a variable is indicated using an arrow symbol (←). The arrow points from the value being assigned towards the variable it is being assigned to. 
Example: String ← “GeeksforGeeks”, would be a valid assignment.

10) What is end if in pseudocode?

To terminate a multiple line if command the endif command is used. The command can either be specified as two separate words, ‘end if’ or as a single word, ‘endif’.

Conclusion:

In the above discussion, we understood the importance of pseudocode in understanding an algorithm. Pseudocode is a lot simpler to construct and debug as compared to an algorithm. 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads