Home  |  Introduction  |  Newsletters  |  Programs  |  Feedback






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 CD.zip 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

Search DelphiForFun.org


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


October 4, 2014

Delphi For Fun Newsletter #74

Fall is in the air here on the mountain.   Crops are in (sounds better than "the weeds have taken over the garden" J), firewood is stacked,  frost is predicted here this weekend, and deer season opens in a month.    Sounds like fall to me! 

We have just returned from a two week visit to Croatia and a few neighboring countries.  This was our first, and likely our last, bus tour.  We saw a lot and learned a lot but when one takes the full course of optional excursions as we did, the pace is exhausting for these old bones.   We'll need all of October to recover!

On the programming front, I've decided to cut back on programming time to spend more time on "bucket list" items while we can.    Here are links to 3rd quarter projects. 


July 13, 2014:

Well begun is half done!,

StarsOnAGrid implements solving and allowing users to create, modify and  solve puzzles of the  type defined as follows::

Given a square N x N grid divided into N sections, place a star in each section with no two stars in the same column or row, and no two  stars diagonally adjacent to each other.

The program allows grid sizes from 2x2 through 10x10, although no solutions exist for sizes less than 5x5. 

July 23, 2014: Feedback from the May posting of our Logic Solver program and an unsolved Geocaching problem led to Logic Version 5.4 posted today.  Bug fixes include:

  1. The "Edit" feature to change variable value names lost rules and facts from the save cases file if they had not been viewed before the changes were made.
  2. Rules generated by "Order" rules were not displayed in the  Generated Rules display form.
  3. Some text of the Reasons for assigned values to truth truth table entries had column and row references reversed.
  4. The big one that took a week to find:  The program implements a syllogism called "Disjunction Elimination" which says that if A implies B,  and B implies C,  and we know that A and C cannot both be true then we can conclude that A is not True.   When applied to "If" statements generated by "Order" and "If"  rules generated a bad fact if the "If" was assign a False value (i.e. "If A then Not B" instead of  "If A then B").  

July 29, 2014: 

Expressions From Integers Version 2  adds an extended version of the original puzzle.  This one has multiple completed input figures and a single target figure with one value missing.   The strategy for this one is to find  an single expression template which will evaluate to the number position containing the  "?".  The same value positions and operations applied in the same order for each figure must equal the value in the "?" position for that figure.  The successful template when applied to the incomplete figure will provide the required value. 

Another puzzle programming exercise from my favorite source: the   Mensa Puzzle-A-Day Calendar.

August 15, 2014:  Sometimes the "never give up" attitude is more curse than blessing.  The current puzzle is an example.  This recent Mensa calendar puzzle is the 2nd example of this puzzle type and prompted me to create Square Word Grids, Version 2.0.   allowing puzzles to be manually entered.  (The original puzzle was hard coded to produce the default puzzle.)  Version 2 of the program also adds the ability to save and restore puzzles.

However integrating creation of puzzles with the original solving functions turned out be much harder than I anticipated.  I fought with it all week and I'm still not happy with the result.  The puzzles are not likely to be very popular and I'm ready to move on to other projects.  

The "PuzzleFile.ini" file included with the downloads contains this puzzle for loading and solving yourself or letting program  find the solution.  To add to the disappointment, it turns out that there are no solutions using words in the included medium size dictionary but two solutions using the large dictionary!  "C'est la vie", I guess.       
August 30, 2014:  I just renewed the DelphiForFun domain names for another year, but this may be the last.  The clock keeps ticking and, as I get older (and slower), it seems as if  it is ticking faster.  At 75 years of age, my "Bucket List" has more items on it than I can realistically expect to satisfy.   Next week is the 14th anniversary of the website started in September, 2000, so fifteen is a good target.  I'm lowering my program posting objective  from one a week to two a month to ease the transition. 

Here's a simple Beginner's level program I wrote this week in response to a user's email asking how to remove lines shorter than 199 characters and truncate lines longer than 199 in a text file. The barebones program CopyTruncateStrings uses about 15 lines of code to accomplish this and a few more lines to display the counts.  Lots of room for adding features, but hopefully it does the job for him.  The link above is to our "Beginner's" webpage; scroll to the bottom to find and download the program if you are interested. 

September 6, 2014:  

A "Cut List" shows woodworkers how to cut a set of parts from a set of available stock.  This program creates a diagram showing the stock pieces and how the required parts may be cut from them.  The original program was posted in 2003 and has been the most downloaded program on DFF for many years. It is a bit complex so I have avoided making changes, but recently added support for Unicode characters in project files names at a user's request.  He says it is working for him, so here is CutList Version 4.0 with the Unicode feature and a new feature which will display multiple solutions, not just the one that the program thinks is the "best".     Program changes required the use of a much newer version of Delphi than my old favorite, which may have introduced undetected errors.  As always, please use the feedback link to report problems. 


September 28, 2014:  We're back from a two week visit to four of the six countries which make up the former country of Yugoslavia: Croatia, Slovenia, Montenegro and Bosnia-Herzegovina.  Beautiful country with reasonable prices, an interesting but complicated history, and more tourist crowds (and rain) than one would expect in September. We're glad we went, but also glad to be home.  

I created Brute Force Version 3.2 today to let it successfully solve this Sept. 26 puzzle from our Mensa Day-by-day calendar.  The original version of the divide operation ignored remainders and produced two solutions.  This version allows the user to specify that quotients divide dividends exactly and find only the correct one. 
September 30, 2014:  Here's a puzzle from Marilyn Vos Savant in this week's edition of Parade magazine,
We have three pancake types

  •  Burned on both sides

  •  Burned on one side and OK on the other side, and

  •  OK on both sides.

Assume you pick a pancake at random, and it is OK on the side you can see.  What are the odds that it
is also OK on the other side?  Marilyn says that the other side is also good 2/3 of the time, but I wrote this simple Beginner's level program  to simulate a million trials to prove it to myself.

You can find the downloads of source and executable at the bottom of our Beginner's Page.



If you're going through hell, keep going. ~Winston Churchill


A bend in the road is not the end of the road... unless you fail to make the turn. ~Author Unknown


The only thing that overcomes hard luck is hard work. ~Harry Golden


It is a common experience that a problem difficult at night is resolved in the morning after the sleep committee has worked on it. ~John Steinbeck


A problem is a chance for you to do your best. ~Duke Ellington


Everybody ought to do at least two things each day that he hates to do, just for practice. ~William James


Your most unhappy customers are your greatest source of learning. ~Bill Gates, Business @ the Speed of Thought

Click to subscribe or unsubscribe or to provide Feedback.

306,000 site visits and 290,180 program downloads in the past 12 months!