<< Chapter < Page Chapter >> Page >

General background information

In an earlier module (see Resources ) , I told you that any programming logic problem could be solved using anappropriate combination of only three programming structures, none of which are complicated. The three structures are known generally as:

  • The sequence structure.
  • The selection or decision structure.
  • The loop, repetition, or iteration structure.

I explained the sequence and selection structures in earlier modules. I will concentrate on the loop structure in this and the next module.

Definite versus indefinite loops

Loop structures in programming fall into two broad categories:

  • Definite loops
  • Indefinite loops

There are numerous sub-categories within these broad categories. I will illustrate the difference between a definite loop and an indefinite loop with two real-world examples.

A definite loop example

Assume that you are confronted with a full box of cookies. Assume also that you have more self-control than most of us, and that you decide you can eatthree cookies, but no more than three, in order to keep your waistline under control. You might eat the three cookies using an algorithm something like thatshown in Image A .

Image a. a definite loop for eating cookies.

for count = 1 to 3 Take cookie from boxEat cookie Increase count by oneGo back to the test at the top of the loop Stop eating cookies
Image A. A definite loop for eating cookies.

Explanation of the definite loop

Being the self-controlled individual that you are, you would set your cookie limit to 3 and you would set count to 1. You would then test count to see if it is within the range from 1 to 3 inclusive. If so, you would take acookie from the box and eat it. Then you would increase the value of count by 1 and go back to the top of the loop.

Back at the top of the loop, you would once again test the value of count to determine if it is still within the range from 1 to 3 inclusive. If so, youwould repeat the process, getting and eating another cookie, increasing the value of count by 1, and going back to the top of the loop.

When you find that the value of count has advanced to 4, you would recognize that this is outside the range of 1 to 3 inclusive. As a result, youwould terminate the loop and stop eating cookies. Well done!

An indefinite loop example

Assume once again that you are confronted with the same full box of cookies. However, like many of us, you aren't blessed with a lot of self-control. In thatcase, you might eat cookies using the algorithm shown in Image B .

Image b. an indefinite loop for eating cookies.

Set the value of stillHungry to true while ((stillHungry is true) and (box is not empty))Take cookie from box Eat cookieIf I am no longer hungry Set stillHungry to falseGo back to the test at the top of the loop Stop eating cookies
Image B. An indefinite loop for eating cookies.

Explanation of the indefinite loop

Unfortunately, for many of us, as soon as we see the full box of cookies, our stillHungry variable gets set to true.

We begin the process by performing a test to determine if stillHungry is true and the box of cookies is not empty. If that test returns true, we take a cookie from the box and eat it. Then we perform another test. If weare no longer hungry at that point, we set our stillHungry variable to false and go back to test at the top of the loop. Otherwise, we allow our stillHungry variable to remain true.

Back at the top of the loop, we test again to determine if stillHungry is true, and the box of cookies is not empty. If the test returns true, we gothrough the process again, eating another cookie, etc.

Questions & Answers

I'm interested in biological psychology and cognitive psychology
Tanya Reply
what does preconceived mean
sammie Reply
physiological Psychology
Nwosu Reply
How can I develope my cognitive domain
Amanyire Reply
why is communication effective
Dakolo Reply
Communication is effective because it allows individuals to share ideas, thoughts, and information with others.
effective communication can lead to improved outcomes in various settings, including personal relationships, business environments, and educational settings. By communicating effectively, individuals can negotiate effectively, solve problems collaboratively, and work towards common goals.
it starts up serve and return practice/assessments.it helps find voice talking therapy also assessments through relaxed conversation.
miss
Every time someone flushes a toilet in the apartment building, the person begins to jumb back automatically after hearing the flush, before the water temperature changes. Identify the types of learning, if it is classical conditioning identify the NS, UCS, CS and CR. If it is operant conditioning, identify the type of consequence positive reinforcement, negative reinforcement or punishment
Wekolamo Reply
please i need answer
Wekolamo
because it helps many people around the world to understand how to interact with other people and understand them well, for example at work (job).
Manix Reply
Agreed 👍 There are many parts of our brains and behaviors, we really need to get to know. Blessings for everyone and happy Sunday!
ARC
A child is a member of community not society elucidate ?
JESSY Reply
Isn't practices worldwide, be it psychology, be it science. isn't much just a false belief of control over something the mind cannot truly comprehend?
Simon Reply
compare and contrast skinner's perspective on personality development on freud
namakula Reply
Skinner skipped the whole unconscious phenomenon and rather emphasized on classical conditioning
war
explain how nature and nurture affect the development and later the productivity of an individual.
Amesalu Reply
nature is an hereditary factor while nurture is an environmental factor which constitute an individual personality. so if an individual's parent has a deviant behavior and was also brought up in an deviant environment, observation of the behavior and the inborn trait we make the individual deviant.
Samuel
I am taking this course because I am hoping that I could somehow learn more about my chosen field of interest and due to the fact that being a PsyD really ignites my passion as an individual the more I hope to learn about developing and literally explore the complexity of my critical thinking skills
Zyryn Reply
good👍
Jonathan
and having a good philosophy of the world is like a sandwich and a peanut butter 👍
Jonathan
generally amnesi how long yrs memory loss
Kelu Reply
interpersonal relationships
Abdulfatai Reply
What would be the best educational aid(s) for gifted kids/savants?
Heidi Reply
treat them normal, if they want help then give them. that will make everyone happy
Saurabh
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Teaching beginners to code. OpenStax CNX. May 27, 2013 Download for free at http://cnx.org/content/col11498/1.20
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Teaching beginners to code' conversation and receive update notifications?

Ask