There is also a test data file (1kb) for input. Look at it with a text editor to see how to construct the real thing. If you plan to use the program, check it out first on some previous regatta whose results you've already worked out.
This is the text from the program header.
The program processes the results of a single event, comprising a simple set of races. The list of yachts in their finishing order are entered into a data file separately (using a text editor), and the program then works on that prepared file. If a yacht doesn't appear in a race, it scores DNS. There is no need in this version to specify DNC or DNS codes therefore; just omit the yacht concerned from the race results list. Redress (RDG) can be given. Penalties for ZPG, DSQ, DND, and OCS are applied. Non-finishing codes of OOT, DNF, and RET are applied. The low points scoring system is used. Simple ties are resolved automatically (RRS A2.3), more complex ties are resolved manually (that's you). The number of discards can be set, with a suggestion as per MYA HMS. The program outputs the results to screen as well as to an output data file.
RESTRICTIONS: No heats, no seeding races, no promotion or relegation. Penalty position assignments are fixed -- see below (but you can change the program). Only one penalty code allowed per yacht. If you want to give RDG to a RET or OOT yacht, for example, then you'll have to list the yacht as a finisher (last, probably) and give it the RDG required. Jib numbers must be purely numeric; "X21" or "21X" can't be used.
NOTE: The results are processed for a whole race, not as heats. It is possible to process heats (but not seeding races) if the results from a set of heats are presented as a single completed race. This means that individual heat RETs, DSQs, etc will not really be processed correctly, and this work-around is not recommended if it is, er, a "serious" event.
Results *.DAT file format: Line 1: Title (race name & date, probably). Line 2: Number of races. Lines 3+: The results of each race, one race on one line. Race result is a list of jib numbers starting at 1st place, no commas. A code can be placed after the jib number (no space) to indicate some penalty, such as disqualification (code=DSQ). The redress code (RDG) may be followed by a number, again no spaces, which is the number of redress points given. The Z flag penalty code (ZPG) may be followed by a number, again no spaces, which is the percentage penalty to add. If not on the list for a race, a yacht scores DNS.
Penalty codes (position given):
Some further notes: (a) The program ideally should be run or launched from the directory that holds the results data file. This is because of the clunky DOS interface. (b) The program can be used as a regatta progresses to give results after each race: just run it again on the latest data file that has the latest race results added to it. If you plan to do this, it would be a good idea to build up a set of *.DAT files, one for each completed race. (c) I use my palmtop PC at the pond, a Hewlett-Packard 200LX. Brilliant. (d) Test the program on a previously scored regatta before going live...!
Henry Farley has mentioned an interesting, um, feature of the scoring rules: If a skipper announces a permanent withdrawal from the event, he is immediately removed from those scheduled to race. With a reduced number now scheduled, the scores for DNF etc. in the lowest heat are reduced. So for that matter is the score for DNC. So if your withdrawal turns out, shall we say, to only be temporary after all, you get a better score in the mean time!
©2018 Lester Gilbert