Files
ioccc/1990/westley/README.md
T
Landon Curt Noll 6625034139 replace trailing whitespace with blackslash in README.md
As an alternative to the markdown trailing whitespace as a line
break, we use a trailing blackslash as a markdown line break.
2023-10-18 15:49:51 -07:00

2.0 KiB

Best Layout

Brian Westley (Merlyn LeRoy on usenet)
DigiBoard, Inc.
1026 Blair Ave.
St. Paul, MN 55104
US
http://www.westley.org

To build:

make all

To run:

./westley number

INABIAF - it's not a bug it's a feature :-)

This entry will very likely crash or do something else without an arg.

This program will enter an infinite loop if input is not a number > 0.

Try:

./westley 1
./westley 2
./westley 3
./westley 5

Alternate code:

If you have an old enough compiler try and to see how C has changed over the years:

make alt

Use westley.alt as you would westley.

Judges' remarks:

If you would rather "Daisy" someone other than Westley, rename
the program as needed. :-)

Read each block of code as if it were a piece of correspondence. For example, the first block of code would read:

charlie,
	doubletime me, OXFACE!
	not interested, get out
	mainly die, charly, *die*
		signed charlotte

The original source had control-L's after each code block. To
make it easier on news readers, we converted each control-L to
a blank line.

Author's remarks:

This is a "Picking the Daisy" simulation. Now, instead of mangling a
daisy, simply run this program with the number of petals desired as
the argument.

This is a good counter-example to peoples' complaints that C doesn't have an "English-like" syntax.

Lint complains about everything - null effect, xxx may be used before set, statement not reached, return(e) and return. Lint dumps core on some systems. My personal favorite lint complaint is

"warning: eroticism unused in function main".
Also obviously, (char)lotte and (char*)lie are incompatible types...

This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved. You are free to share and adapt this file under the terms of this license:

Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)

For more information, see: https://creativecommons.org/licenses/by-sa/4.0/