NEW SERVER - 11.9.2020 ... Retiring, March 2020 - sorry, you have missed our final public course. The Coronavirus situation has lead us to suspend public training - which was on the cards anyway, with no plans to resume
Please ask about private 'maintenance' training for Python, Tcl, Perl, PHP, Lua, etc
Happily continuing private consultancy / programming work |
Selling curry to the chinese takeaway
Have you ever walked into a Chinese Takeaway and sold them three chicken curries with rice? Or gone to your local station and bought three tickets for yesterday? I'll be you haven't - there are certain things that don't work quite the same way when you go negative. I can't carry on once my car has run out of petrol, secure in the knowledge that I can then put 11 gallons into my 10 gallon tank when I reach the next filling station.
But with some things, negative values ARE acceptable. What is the temperature today? 6? 4? -4? The only difference is that you'll want gloves and need to scrape ice in the latter case.
When writing code to establish the maximum of a series of numbers, it's very tempting to assume that the largest_so_far is zero, then compare each of your series with largest_so_far and note the new value if it's higher. Which works very well if you've got positive numbers. But what were the temperatures in Sptitzbergen last week? -15, -20, -15, a hot -8, and -14. So my tempting algorithm wouldn't work - it would give me a scorching zero degrees.
Solution? Don't start at zero ... start at the first value in the series. Here's an example of a part of that code in Tcl:
if {$count} {
if {$biggest < $input} {set biggest $input}
if {$smallest > $input} {set smallest $input}
} else {
set biggest $input
set smallest $input
} (written 2008-03-31, updated 2008-04-01)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles G906 - Well House Consultants - Programming Standards [3685] Programming Standards in Lua - (2012-04-06) [2364] Getting it right from the start - new programmers - (2009-08-17) [2363] Alpaca Case or Camel Case - (2009-08-16) [2322] Looking for a practical standards course - (2009-08-05) [1852] Perl and Blackberries - (2008-10-23) [1679] PHP - Sanitised application principles for security and useability - (2008-06-16) [945] Code quality counts - (2006-11-26) [356] Sudoku helper or sudoku cheat - (2005-06-23) [343] Should I use structured or object oriented? - (2005-06-10) [272] More to programming than just programming - (2005-04-08) [148] Programming in isolation - (2004-12-11)
Some other Articles
Cambidge - Tcl, Expect and Perl coursesFresher tutor, better courseEvery link has two ends - fixing 404s at the recipientComparing hotels - as a guest and from the proprietors viewSelling curry to the chinese takeawayFirst Great Western WeekendPlease support improvements in our train serviceKeep the client experience easy - single server contact pointSetting up a new user - Linux or UnixEaster Sunday at 404, The Spa
|
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).
|
|