Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!

# Ways to evaluate loops

James Chegwidden
Author
Ranch Hand
Posts: 201
The following code will output Hi six times

What is the quick formula(s) way for evaluating no. of times a loop will be processed without actually evaluating the loop? Example for above

is it 10-5 + 1= 6

If you actually trace through the code you will see Hi is printed six times.

I thought there was a quick way to do this?
Just like to show my classes different ways to evaluate loops

Kalai Selvan
Ranch Hand
Posts: 79
Hi James,
The formula will look some thing like this

(Final - Initial) / Step

Where Final is the final value.
Initial is the initial value and
Step is the increment value.

for <= condition we have to increment Final by one.

In idle condition (i.e. without any conditional break or jump etc.)the loop will execute these many times.

Regards,
Kalai Selvan T.

James Chegwidden
Author
Ranch Hand
Posts: 201
Formula not quite right:

prints 25 and 1

Formula given above (25- 1)/1 =24 times which is not correct.

So formula does not work for all cases.

Francis Siu
Ranch Hand
Posts: 867
What is the quick formula(s) way for evaluating no. of times a loop will be processed without actually evaluating the loop?
I suggest you to read some books which contain the algorithm analysis.
From your example, I know that it is required 0(n) which n representing the times of the for loop.
Hope this help

Hosh Nasi
Ranch Hand
Posts: 44
I may be way off here but wouldn't (x+1)-y = z work? This of course would only work if the ending value is greater then the starting value, and it is a >= statement. Is this just an general thought? Or are you looking for code for this too?