Help me walk through a few loops to see how many executions. I need a lesson

Posted on 2004-09-25
Last Modified: 2010-03-31
I'm having difficulty finding out how many executions these loops operate sum++. i'm not only interested in the answer but how youy figured it out.

 A)   for(i=1 ; i<= 100 ; i++)
         for (j= 1 ; j <= i; j++) sum++;    

 A)   i'm thinking that the first for loop goes through 100 times and the second for loop is also 100 times so 100^2 is correct?? is this right?

B) for(i = 101; i <=200; i++)
       for(j= i - 1;  j <i+1;j++) sum++;

B) I tried walking through it and it seems the first loop starts out and goes through 99 times. hen thew second one is true for 99 times so 99^2
  my thinking was as follows
1st time through j =100 ; 100 < 101 +1; 100++

2nd time  j=101 ; 101 <102+1; 101++
199th time j= 199 ; 199 < 200 +1 ; 200++ so stops here 199-100 = 99 this the right logic??

Question by:tyweed420
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +1
LVL 92

Accepted Solution

objects earned 20 total points
ID: 12153143
A) No, the first loop will go 100 times, but the second loop will execute a variable number of time.
first time (i=1) it will execute once, second time (i=2) it will execute twice, etc
So total loops = 1 + 2 + 3 + ... + 100.

B) No, again right for the first loop, but not for the second.
The second loop will execute (i+1) - (i-1) times = 2 times
So total number of loops is 99 x 2 = 198 times.
LVL 24

Expert Comment

ID: 12153844
B) 200!

LVL 86

Expert Comment

ID: 12153986
Classwork done then?
Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

LVL 24

Expert Comment

ID: 12155171
No reason to give a wrong answer .....

Author Comment

ID: 12156456
Objects thanks for the help you get the huge 20 points! may i ask though when you figured out part B how did you know to take (i+1) - (i-1) is that some type of formula or common knowledge proccess you used to take those two arguments and derive 2?

Thanks in advance!
LVL 92

Expert Comment

ID: 12156544
> B) 200!

That is correct, I overlooked the <=.

> how did you know to take (i+1) - (i-1)

just the difference between the upper and lower ranges for the index.

Author Comment

ID: 12182959
Hey guys one last question for ya regarding counting loops. These two are very difficult for me

1)  for(int i = 100 ; i > 0  ;i--)  
         for(j=i;   j  <  2 * i + 2 ; j++)

         1. i'm thinking the first loop goes through 99 times but then when you get into the second loop it lookslike this

         i=100                 i=99           ....................      i=1
      =======        ========                          =========
       j=100                j=99                                         j=1
      i=202                 i=20                                         i=4                                   so its 3+4+5+6..........+102 = times sum++ is executred is this correct?
     102 times             101 times                                 3 times

2)           for(int i = 0 ; i <10000  ;i++)  
                  for(j=0 ;   j *j*j < i ; j++)

 this one i have no clue can someone walk me through it ?
LVL 24

Expert Comment

ID: 12187274
No, you won't get 2 answers for only 20 points.


Featured Post

[Live Webinar] The Cloud Skills Gap

As Cloud technologies come of age, business leaders grapple with the impact it has on their team's skills and the gap associated with the use of a cloud platform.

Join experts from 451 Research and Concerto Cloud Services on July 27th where we will examine fact and fiction.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
Viewers will learn about the different types of variables in Java and how to declare them. Decide the type of variable desired: Put the keyword corresponding to the type of variable in front of the variable name: Use the equal sign to assign a v…
Suggested Courses

632 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question