diff --git a/1987/wall/README.md b/1987/wall/README.md index 6861fef25..c2af47573 100644 --- a/1987/wall/README.md +++ b/1987/wall/README.md @@ -19,22 +19,11 @@ make all ### Try: ```sh -./wall | bc | ./wall +./try.sh ``` -and input the following: - -``` -x*x -c^2 -m*m - -# can you figure out what this does? -500 - -``` - -You may also wish to try: +You may of course run the commands manually and enter text as you wish. For +instance you might try one or both of: ```sh ./wall | bc @@ -50,6 +39,9 @@ x*x quit # for the cat version ``` +which the script does through a pipeline except that here you can enter more +text if you wish, line by line. + ## Judges' remarks: diff --git a/1987/wall/try.sh b/1987/wall/try.sh new file mode 100755 index 000000000..b4356d589 --- /dev/null +++ b/1987/wall/try.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash +# +# try.sh - demonstrate IOCCC winner 1987/wall +# + +# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it +# this way allows us to have the user specify a different compiler in an easy +# way. +if [[ -z "$CC" ]]; then + CC="cc" +fi + +make CC="$CC" all >/dev/null || exit 1 + +# clear screen after compilation so that only the entry is shown +clear + +read -r -n 1 -p "Press any key to run: echo 'x*x' | ./wall | bc: " +echo 1>&2 +echo 'x*x' | ./wall | bc +echo 1>&2 + +read -r -n 1 -p "Press any key to run: printf \"x*x\\nc^2\\nm*m\\n\\n500\\n\" | ./wall | bc | ./wall: " +echo 1>&2 +printf "x*x\nc^2\nm*m\n500\n" | ./wall | bc | ./wall +echo 1>&2 + +read -r -n 1 -p "Press any key to run: printf \"x*x\\n2^x\\nquit\\n\" | ./wall | cat: " +printf "x*x\n2^x\nquit\n" | ./wall | cat +echo 1>&2 + +read -r -n 1 -p "Press any key to run: printf \"x*x\\n2^x\\n\" | ./wall | bc: " +echo 1>&2 +printf "x*x\n2^x\n" | ./wall | bc +echo 1>&2 + +read -r -n 1 -p "Press any key to run: printf \"500\\n\" | ./wall | bc: " +echo 1>&2 +printf "500\n" | ./wall | bc +echo 1>&2 + +read -r -n 1 -p "Press any key to run: echo 500 | ./wall: " +echo 1>&2 +echo 500 | ./wall +echo 1>&2 diff --git a/thanks-for-help.md b/thanks-for-help.md index 1215f90a1..145ded0c4 100644 --- a/thanks-for-help.md +++ b/thanks-for-help.md @@ -576,6 +576,8 @@ size constraints of the contest). [Cody](#cody) made this use `fgets(3)`. +Cody also added the [try.sh](1987/wall/try.sh) script. + ## [1987/westley](/1987/westley/westley.c) ([README.md](/1987/westley/README.md]))