Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
 
For 2023 (and 2024 ...) - we are now fully retired from IT training.
We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.

Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!

I am also active in many other area and still look after a lot of web sites - you can find an index ((here))
For loops in Lua

As an old Fortran programmer, I remember that a for loop was given a start point, an end point and a step ... and they had to be whole numbers (integers). Lua's for loops can be used that way, but they can be used a lot more flexibly too.

From, to, step for loops

Th egood news is that Lua works in double precision floats throughout, so your from, to and step can be anything you like ... and the step can go forwards or backwards. There's an example here where I report Celsius to Fahrenheit conversions - any step you like. You'll also notice that I have specified whole numbers for the conversion factors and they work ... 9 / 5 gives a result of 1.8 in Lua, not an integer result of 1.

If you're a C, Perl, PHP or Java programmer, you'll be used to for loops where the condition (end point) is checked every time around ... so that if the end condition is chanced within the loop, it effects the number of times that the loop runs. That's not the case with Lua which, like Fortran, decides the number of times the loop will run even before the first iteration is started. See here for an example.

in for loops

If you use an in style for loop, you're looping through an iteration (a set) of values or value pairs. Commonly used functions to generate these iterations are pairs which goes thought EVERY pair of values in a table, ipairs which only goes through the INDEXED pairs (i.e. it starts at element one, then gives elements 2, 3, etc until it finds a missing index at which point in stops, ignoring names elements and elements which are numbered but not in sequence from the start) and string.gmatch which goes though all strings that match a pattern within an incoming longer string.

See here for examples of pairs and ipairs, and here for an example of string.gfind
(written 2009-10-14, updated 2009-10-17)

 
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
U103 - Lua - Conditionals and loops
  [1685] Short circuit evaluation (lazy operator) in Lua - (2008-06-22)
  [1696] Saying NOT in Perl, PHP, Python, Lua ... - (2008-07-04)
  [1738] Clean code, jump free (Example in Lua) - (2008-08-06)
  [2351] Ternary operators alternatives - Perl and Lua lazy operators - (2009-08-12)
  [2455] Lua examples - coroutines, error handling, objects, etc - (2009-10-15)
  [3397] Does a for loop evaluate its end condition once, or on every iteration? - (2011-08-18)
  [3558] Python or Lua - which should I use / learn? - (2011-12-21)
  [3686] The goto statement in Lua - (2012-04-06)
  [4272] Lazy operators in Lua - what they mean, and examples - (2014-05-05)
  [4322] Learning to Program - the conditional statement (if) - (2014-11-21)
  [4323] Learning to program - Loop statements such as while - (2014-11-22)
  [4574] repeat until in Lua - a one or more rather than a zero or more loop - (2015-11-05)


Back to
Dark to dark
Previous and next
or
Horse's mouth home
Forward to
Lua examples - coroutines, error handling, objects, etc
Some other Articles
Cant connect to local MySQL server through socket /tmp/mysql.sock
Railway Arithmetic
Bright Eyes
For loops in Lua
Dark to dark
Making executable binaries in Python (or Perl)
Gypsy says
Family Gathering at 404, The Spa
Four aspects - Chamber, Transport, Courses and Hotel
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2024: 48 Spa Road • Melksham, Wiltshire • United Kingdom • SN12 7NY
PH: 01144 1225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/2454_For ... n-Lua.html • PAGE BUILT: Sun Oct 11 16:07:41 2020 • BUILD SYSTEM: JelliaJamb