Computer Science, asked by ateet25, 1 year ago

explain the two looping statement used in Q Basic​

Answers

Answered by anirudhabist
2

The first (which you should have learned) is a control statement. Control statements include things such as: IF/THEN SELECT/CASE and GOTO. All of these are loops stripped down to bare-bones. Also a subroutine can be continuously called, creating a loop. Consider the following:

CLS

start:

PRINT “Hello”

GOTO start  

Obviously, this program will never end. It will just keep printing the string, “Hello”. But what if you only wanted the program to print “Hello” ten times? What probably comes to mind is something similar to the code below:

x = 0

CLS

start:

IF x < 10 THEN

PRINT "hello"

x = x + 1

GOTO start

END IF

END  

This may seem like a viable solution to the problem, but it is not the best, nor the quickest. When it comes to a program like the one above, performance may not be on your mind. But when developing large scale applications, speed and stability are essential to the success of the software. Below, I will write the same program, but using a FOR loop:

CLS

FOR x = 1 TO 10

PRINT "hello"

NEXT x  

As you can see, this program is much smaller. By viewing this, I’m sure you have already figured out the FOR loop, but I will discuss it anyways. You will notice that aside from the declaration of the loop itself, there are a few other main components. One is what is called “the counter.” The counter is a numeric variable, x, in this case. The other two work together (start and end) to create a value range for the counter. x = 1 TO 10 means that x will start at 1 and increase everytime NEXT x is encountered. You may also use x = 0 TO 9 to get the same effect.  

Traditionally the variable increases by one for every instance of the loop, then returns to the first statement in the loop…but this can be modified. The following program will also display “hello” ten times, but will use the increment operator STEP:

CLS

FOR x = 1 TO 20 STEP 2

PRINT "hello"

NEXT x  

The STEP statement means that x will increase by 2 every time NEXT x is encountered. The STEP statement can also be used to decrease a variable:

CLS

FOR x = 10 TO 1 STEP -1

PRINT "hello"

NEXT x  

But what if you had a loop that you wanted to exit if a certain condition held true? This is where EXIT FOR comes into play:

CLS

FOR x = 1 TO 10

PRINT "hello"

IF x = 8 THEN EXIT FOR

NEXT x  

Notice that the program will only print “hello” eight times due to the conditions set by the IF/THEN statement.

Section 2 – The WHILE loop

Another loop that is commonly used is large scale applications, especially with other programming languages, is the WHILE loop. A WHILE loop will loop forever, as long as an initially set condition proves true. First, I will show you a simple use of the WHILE loop:

CLS

WHILE x < 10

PRINT “hello”

x = x + 1

WEND  

The WHILE loop is an easier way to do constant testing of a value. Nested IF/THEN statements would make the code’s logic very difficult to follow, and make it messy as well. Below is a program that gives you ten “lives”, or chances, to complete a task, much like a game would. The program generates a random number 1-100 and asks you to guess it. Every guess, it reprints your health status and evaluates if you are alive or dead.

CLS

RANDOMIZE TIMER

num = INT(RND * 100)

health$ = "alive"

health = 10

PRINT "(Enter 0 to quit)"

WHILE health$ <> "dead"

PRINT "You are "; health$; " with"; health; "lives left."

PRINT ""

INPUT "Guess a number 1 - 100"; guess

IF guess = num THEN

PRINT "One Up!"

health = health + 1

IF health > 5 THEN health$ = "alive"

num = INT(RND * 100)

ELSEIF guess = 0 THEN

END

ELSE

health = health – 1

IF health = 0 THEN health$ = "dead"

IF health < 6 THEN health$ = "dying"

END IF

WEND

PRINT "You are "; health$

END  

Aside from the RND and RANDOMIZE TIMER statements, this program should be easy to follow for you. The WHILE loop’s logic is as follows; as long as you are not dead, continue with the game as stated below, but if you are dead, end the guessing by ending the WHILE loop.

Section 3 – Using DO…LOOP

Though native to the BASIC language, DO...LOOP is one of the most versatile loops available. The DO has the ability to do a task while a condition is true, or until a condition is true, and it can test for this condition at the beginning or the end of the loop. The following programs accomplish the same task:

CLS

DO WHILE x < 10

PRINT "hello"

x = x + 1

LOOP

CLS

DO UNTIL x = 10

PRINT "hello"

x = x + 1

LOOP

CLS

DO

PRINT "hello"

x = x + 1

LOOP UNTIL x = 10

CLS

DO

PRINT "hello"

x = x + 1

LOOP WHILE x < 10


anirudhabist: can you pls mark this as the brainliest
Similar questions