C# Jump Statements



Recently, I was going through  C# forum and I stumbled on a question.

The question goes thus: "Generate numbers from 1 to 100 without using loop statement and functions. The program can only have one entry method"?

Of course, what first came to my mind was that I will need to create a console application since I can only have one method which is the entry point.

What bothered me was that how can I generate numbers from 1..100 without using a loop?
Then jump statement came to my mind, of course, a jump statement helps to transfer control from a certain part of the program. Example of Jump statement in C# is:
  • Break
  • Continue
  • Throw
  • Return
  • Goto 
Let us take a quick look at these statements.

Break Statement

The Break Statement is used in loop or switch statement to terminate and pass program control to any statement that follows.
c#
for(int i=1; i<=20;i++) { if(i==8) { break; } Console.WriteLine(i); } int a=0; switch(a) { case 1: Console.WriteLine("I am One"); break; default: Console.WriteLine("I am Default"); break; }

Continue Statement

The Continue statement will pass the program control to the next iteration of a loop. 

c#
for(int i=1; i<=20;i++) { if(i==8) continue; Console.WriteLine(i); }

Return Statement

The return statement terminates execution of the method and returns program control to where the method is been called.
c#
static double TestMethod(int a) { double test=10*a; return test; } static void Main() { int a=4; double result=Testmethod(a); Console.WriteLine(result); }

Throw Statement

The Throw statement indicates the occurrence of exception during program execution. The program control will be transfer back to the calling method in which try-catch can be used to manage the exception.  

Goto Statement

The Goto statement transfer program controls directly to a label. Can be used to escape the deeply nested loop. This control is considered to be harmful and of course, too much jumping around in a program can be messy.

c#
static int Test() { int t= 0; for (int i = 0; i < 11; i++) { for (int j = 0; j < 11; j++) // Run until condition. { for (int x = 0; x < 12; x++) // Run until condition. { if (x == 5 && j == 5) { goto Outer } } t++; } Outer: continue; } return t; }

Having gone through all these jump statements, let us now generate numbers between 1...100 without using loop nor functions.
The following code generates a number between 1 to 100 using if statement and goto statement.




c#
static void Main(string[] args) { int i = 1; repeat: if (i <= 100) { Console.WriteLine(i); i++; goto repeat; } Console.Read(); }

I hope the write up has helped to re-freshened your knowledge of jump statements in C#.
Thanks for your time.

C# Jump Statements C# Jump Statements Reviewed by Akintunde Toba on June 05, 2019 Rating: 5

No comments:

Home Ads

Powered by Blogger.