DelphiForFun Home

Home  |  Introduction  |  Newsletters  |  Programs  |  Feedback


Search WWW



Support DFF

 If you benefit from the website,  in terms of knowledge, entertainment value, or something otherwise useful, consider making a donation via PayPal  to help defray the costs.  (No PayPal account necessary to donate via credit card.)  Transaction is secure.

If you shop at Amazon anyway,  consider using this link. 


We receive a few cents from each purchase.  Thanks



The index page for all Programs on the site?

The DFF Play CD?

Zipped file DFF Play contains  executable version of about  75 of the 200+ programs from the site, mostly those I particularly liked or thought would be of widest interest for non-programmers.  The file is rather large, about 20mb..

Anything else?




Search WWW



Not a programmer (yet)?

 That's OK -  the executable version for any puzzle or  game you find here is available for download.  Just scroll down to the bottom of most any description page and you'll find a "Download executable" link. Downloaded programs are in "zipped" format to reduce size and may require an "unzipper" program unless you are running Win XP or later.  Here's a link to a free one. 

Check  out  the Most Popular  Downloads from DFF   (updated weekly)

First time visitor?

Take a look at the Introduction page to see what this site is about

Notes for Teachers


What's New

August 30, 2015:

Complete this grid with 10 different words using the given letters

 I have been working without success on an upgrade to our Square Word Grids program to improve the search algorithm for 5x5 double word squares.  "Word Squares" are N x N square word grids consisting of the same N words each containing N letters running horizontally and vertically.  "Double Word Squares" are similar except that the words in each direction need not be the same. The program search for the solution to the puzzle  illustrated here  ran for 10 hours without success.  My September project will be to crack this nut.  

 In the interim, I updated the "Crossword Helper" (aka "Word Completion")  to version 2.21 to allow completing partial words using only letters provided. This allowed me to complete this puzzle with a little extra effort.  The Wordstuff wrapper download includes the revised Crossword Helper program.       

August 23, 2015: Most of this month has been spent on outdoor activities.  Due to generous rainfall and moderate temperatures this summer, trees and shrubs have tried to take over driveways, trails and yards.  With my trusty chainsaw and a new wood chipper, I have almost broken even in reclaiming the space that nature is trying to confiscate.   Of course, she will always win in the long run. 

Which reminds me, my book-of the-month is  The Canon by Natalie Angier.   It really is "A Whirligig Tour of the Beautiful Basics of Science".. She is something of a wordsmith, but the knowledge conveyed here reminds us of what an infinitesimal part of the universe we represent.  For example, our rather small sun is one of billions but still converts 700 million tons of hydrogen to helium every second, has done so for 5 billion years, and will do so for 5 billion more before it runs short of fuel and  starts its expansion to a giant red star!    Highly recommended.

Of course, I have also kept up this month with the daily Mensa Calendar puzzles.  Here's an interesting one from August 18, which can be solved with the aid of our Brute Force algebraic equation solver.

Nine Knights numbered 1 through 9 are seated at the Round Table in such a way that every knight's number is at least 3 higher or lower than its adjacent neighbor. Also, the two knights at the end of the horizontal line sum to an even number. With knights 2, 6, and 8 seated as shown, seat the rest of the knights,

The unique solution can be found by assigning variables to the missing positions and defining equations using Absolute Value (abs) and Modulo (mod) functions.  The puzzle file is now included in the Brute Force downloads as Mensa-08-18-15.prb


July 28, 2015: A fellow Delphian recently asked if it was possible to highlight a particular word wherever it occurred  in a DBGrid. I gave him some suggestions but didn't hear, back so I decided to try it for myself.  I used a StringGrid to create a demo in our Delphi Techniques section which should transfer to DBGrids.  As usual (and thankfully), there were a few unexpected complications  to sharpen problem solving skills and keep programming fun.  Check out the GridWordHighlight page for more information and downloading the code. 

July 17, 2015: A couple of years ago I posted a bulk Find and Replace program which would scan text files in a given folder which match  given file name mask and change all occurrences of a given string to a new replacement string.    I recently needed to process a set of files of email addresses and replace all "@" characters with commas (",") so that Excel could automatically break out the website address parts into a separate column.  The files happened to be in Unicode character format (2 bytes per character) which my program didn't handle correctly.  Find and Replace Version 2  posted today corrects that.  Both ANSI and Unicode character files can now be processed correctly.      

July 8, 2015:

Chess PGN (Portable Game Notation) is a widely used format for recording chess games for historical or study purposes.  There are many playback programs available and the world didn't need another.  However a DFF viewer requested it about 10 years ago and I couldn't locate an existing one in Delphi, and it sounded like  (and was) an interesting project.  Chess PGN Version 5,2 posted today has a small change which doesn't change the executable results but prevents aborted execution after recompiling with data range checking.


June 29, 2015:  Acrostic Variation, posted today, implements a solver for this Mensa calendar puzzle from March 16, 2015.  It uses a search technique probably used by most human solvers; concentrating on the word intersections to find candidates; the program just does it a lot fasterJ.  

June 17, 2015:  A License Key Generator program was posted several months ago to explore how unique  keys might be generated to allow a program to verify owner or expiration date information.   To my surprise, the program was recently flagged as a "Keygen Trojan" by a well respected security scanner.  I revisited the source code and made a few formatting and spelling enhancements and the warning disappeared.  So, just in case, I reposted the License Key Generator V1.1 program today.    


Black clouds - not so good

Better now

June 10, 2015:  A program illustrating many graphic manipulation effects in Delphi was posted 12 years ago.  It was largely written by a young Czech programmer, Ivan Sivak, who I'm sure has moved on to bigger and better things by now.  I made only minor changes to his code before posting it.  A fix was posted today in the Contrast/Brightness section of Graphic Effects correcting a problem of white or light gray pixels displaying as black..

The What's New Archives

(Click to expand)

  [Feedback]   [Newsletters (subscribe/view)] [About me]
Copyright 2000-2015 , Gary Darby    All rights reserved.