Update 1990 winning entries' README.md files

Format and typo fixes.
This commit is contained in:
Cody Boone Ferguson committed 2023-04-14 06:22:23 -07:00
1 parent f458d5aefe
commit 3d4d6669cc
6 files changed
+42 -33

No files matched your search

+4 -3
View File
@@ -12,7 +12,7 @@ USA
make all make all
``` ```
## To run ## To run:
```sh ```sh
./cmills [starting_cash] ./cmills [starting_cash]
@@ -23,8 +23,9 @@ work in modern systems (it resulted in a bus error otherwise). Thank you Yusuke
for your assistance! for your assistance!
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) made this safer by [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) made this safer by
using `fgets()` instead of `gets()`. This avoids a potentially alarming warning using `fgets()` instead of `gets()`. This avoids an annoying and potentially
at compiling and/or linking and/or runtime. Thank you Cody for your assistance! alarming warning at compiling and/or linking and/or runtime that in some cases
is interspersed with the program's output. Thank you Cody for your assistance!
For the original code see the [1992 archive](/archive/archive-1990.tar.bz2). For the original code see the [1992 archive](/archive/archive-1990.tar.bz2).
+7 -5
View File
@@ -5,11 +5,13 @@ Imperial College, University of London
Myrsinis 1 Myrsinis 1
GR-145 62 Kifissia GR-145 62 Kifissia
Greece Greece
<https://www.spinellis.gr/> <https://www.spinellis.gr/>
## To build: ## To build:
make all ```sh
make all
```
[Yusuke Endoh](/winners.html#Yusuke_Endoh) fixed this for modern systems. Thank [Yusuke Endoh](/winners.html#Yusuke_Endoh) fixed this for modern systems. Thank
@@ -17,10 +19,10 @@ you Yusuke!
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) removed the erroneous [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) removed the erroneous
prototype to `fopen()` and made this use `fgets()` instead of `gets()` to make prototype to `fopen()` and made this use `fgets()` instead of `gets()` to make
it safer and to prevent a potentially alarming warning at compiling and/or it safer and to prevent an annoying and potentially alarming warning at
linking and/or runtime. Thank you Cody for your assistance! compiling and/or linking and/or runtime. Thank you Cody for your assistance!
## To run ## To run:
```sh ```sh
./dds ./dds
+3 -3
View File
@@ -27,7 +27,7 @@ make all
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed the script to [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed the script to
work properly in modern environments (to do with PATH not having '.' in it). He work properly in modern environments (to do with PATH not having '.' in it). He
notes that with an invocation in the try section below you will with macOS get notes that with an invocation in the try section below will with macOS show
what appears to be an error message but is actually okay. He gives more what appears to be an error message but is actually okay. He gives more
information in the [bugs.md](/bugs.md) file. Thank you Cody for the help and information in the [bugs.md](/bugs.md) file. Thank you Cody for the help and
notes! notes!
@@ -136,7 +136,7 @@ environment.
---------------------------------------------- ----------------------------------------------
### Portability: ### Portability
We have ported this program to a wide variety of systems. Among We have ported this program to a wide variety of systems. Among
these are: these are:
@@ -152,7 +152,7 @@ these are:
- Dynix / Sequent Balance ('cc' for Natl. Semi. base + 'gcc 1.36') - Dynix / Sequent Balance ('cc' for Natl. Semi. base + 'gcc 1.36')
- Unicos / Cray 2 - Unicos / Cray 2
### Obfuscation: ### Obfuscation
We (the authors) feel this program is obfuscated for the We (the authors) feel this program is obfuscated for the
following reasons: following reasons:
+2
View File
@@ -51,6 +51,8 @@ to functions!
## Author's remarks: ## Author's remarks:
Rot13:
Vg vf fvzcyr gb znxr gur cebtenz cevag bgure fgevatf. Rnpu Vg vf fvzcyr gb znxr gur cebtenz cevag bgure fgevatf. Rnpu
nycunorgvpny punenpgre sebz n gb m vf cevagrq bhg nf vgf nycunorgvpny punenpgre sebz n gb m vf cevagrq bhg nf vgf
bccbfvgr: bccbfvgr:
+18 -15
View File
@@ -21,9 +21,9 @@ that dump core when NULL is dereferenced but this problem showed itself in
modern systems even with the 4 '0 0 0 0'. He also fixed a segfault if not enough modern systems even with the 4 '0 0 0 0'. He also fixed a segfault if not enough
args are specified and fixed the code so that the generated `fibonacci.c` args are specified and fixed the code so that the generated `fibonacci.c`
actually works; before it just printed `0` over and over again (since it did not actually works; before it just printed `0` over and over again (since it did not
work anyway a segfault prevention was added here). He also some array addressing work anyway a segfault prevention was added here). He also fixed some array
(some of which might not be strictly necessary but as he was testing the addressing (some of which might not be strictly necessary but as he was testing
`fibonacci.c` bug he ended up changing it anyway). Finally he changed this the `fibonacci.c` bug he ended up changing it anyway). Finally he changed this
program to use `fgets()` not `gets()` to make it safer and to prevent a warning program to use `fgets()` not `gets()` to make it safer and to prevent a warning
about `gets()` at linking or runtime. Thank you Cody for your assistance! about `gets()` at linking or runtime. Thank you Cody for your assistance!
@@ -40,12 +40,13 @@ initially. Thank you Yusuke!
where: where:
expression - function f(x,y) (see below) ```
x1 - start of interval expression - function f(x,y) (see below)
x2 - end of interval x1 - start of interval
h - step size x2 - end of interval
y1 - initial value (y(x1) == y1) h - step size
y1 - initial value (y(x1) == y1)
```
## Try: ## Try:
@@ -65,15 +66,17 @@ The program's source implements four functions, all from the
same source file! same source file!
When you compile theorem.c as is and run with 5 args, it numerically When you compile theorem.c as is and run with 5 args, it numerically
solves the equation y'=f(x,y), with a step size of h, over the interval solves the equation `y'=f(x,y)`, with a step size of `h`, over the interval
x=[x1,x2], with the initial condition of y(x1)=y1. `x=[x1,x2]`, with the initial condition of `y(x1)=y1`.
The 'expression' f(x,y), is any function of 'x' and 'y' with the The 'expression' `f(x,y)` is any function of `x` and `y` with the
operators: operators:
+ - * / ^ ```
+ - * / ^
```
The symbol '^' is the power operator. Note that it only supports The symbol `^` is the power operator. Note that it only supports
integer powers. Also note that all expressions are evaluated strictly integer powers. Also note that all expressions are evaluated strictly
left to right. (i.e., parenthesis aren't supported). left to right. (i.e., parenthesis aren't supported).
@@ -128,7 +131,7 @@ received a standing ovation; a first for a contest entry.
## Author's remarks: ## Author's remarks:
Differential equations are solved via the Runge-Kutta method, which guarantees Differential equations are solved via the Runge-Kutta method, which guarantees
local error proportional to h^5, and total error across a finite interval is at local error proportional to `h^5`, and total error across a finite interval is at
most a constant times `h^4`. most a constant times `h^4`.
Sorting is accomplished with a standard shell sort. Sorting is accomplished with a standard shell sort.
+8 -7
View File
@@ -55,18 +55,19 @@ Use `westley.alt` as you would `westley`.
## Judges' remarks: ## Judges' remarks:
If you would rather "Daisy" someone other than Westley, rename If you would rather "Daisy" someone other than Westley, rename
the program as needed. :-) the program as needed. :-)
Read each block of code as if it were a piece of correspondence. Read each block of code as if it were a piece of correspondence.
For example, the first block of code would read: For example, the first block of code would read:
charlie, ```
doubletime me, OXFACE! charlie,
not interested, get out doubletime me, OXFACE!
mainly die, charly, *die* not interested, get out
signed charlotte mainly die, charly, *die*
signed charlotte
```
The original source had control-L's after each code block. To The original source had control-L's after each code block. To
make it easier on news readers, we converted each control-L to make it easier on news readers, we converted each control-L to
@@ -86,7 +87,7 @@ Lint complains about everything - null effect, xxx may be used before
set, statement not reached, return(e) and return. Lint dumps core set, statement not reached, return(e) and return. Lint dumps core
on some systems. My personal favorite lint complaint is on some systems. My personal favorite lint complaint is
"warning: eroticism unused in function main". **_"warning: eroticism unused in function main"._**
Also obviously, `(char)lotte` and `(char*)lie` are incompatible types... Also obviously, `(char)lotte` and `(char*)lie` are incompatible types...