Files
ioccc/2004/hoyle
Landon Curt Noll c5848302e8 add new topbar, improve the look & feel of web pages
Thank you, @chris-sab, for your excellent work and for helping us
commit this alpha version of the topbar.

As part of this work, the following HTML sections were removed:

* begin-row
* begin-leftcolumn
* sidenav
* end-leftcolumn
* begin-rightcolumn
* before-content
* end-rightcolumn
* end-row.default

Also added a new HTML section, just above the "header" section:

* topbar

The web site now as a more modern looking topbar, thanks to the
work of the contractor (GitHub user @chris-sab) who is working on
issue #2273.

Performed `make www` to implement the above and test under macOS.

TODO: Fix the Responsive Web Design to deal with
      the new topbar system.

TODO: Improve the topbar.  What is there now is
      just an alpha version.

TODO: Decide what to do with `png/ioccc.png`.
      Remove it make selective use of the image on certain top level
      pages lower down?

TODO: The changes to `ioccc.css` causes some
      formatting problems with pages such as `location.html` (missing
      blank lines).  Fix formatting problems as needed.

TODO: Fix the "Nu HTML check this web page"
      links on things like the year level _YYYY/index.html_ pages.

TODO: Correct all HTML errors, warnings and perhaps
      informative messages from the Nu HTML check.

TODO: Consider adding color (colour) to the
      web pages in such a way that people with color perception
      challenges can still use the web site.

TODO: For those web browsers that have and allow
      JavaScript, make use of technology such as [Code
      Mirror](https://codemirror.net/) to directly render source
      code (C, shell, Makefile, etc.) with syntax coloring (colouring)
      directly in the browser.  For non-JavaScript browsers, fallback
      to the current use of GitHub source code viewing.
2024-04-16 17:28:39 -07:00
..
2022-09-18 23:37:49 -07:00
2023-07-06 21:49:38 -07:00

To build:

    make

To use:

    ./hoyle point ...

Try:

    ./try.sh

Judges' remarks:

The obfuscation functions at several levels. Note the clever use of use of #defines. The #define do(if,else), for example, is delightful. The code itself contains a bunch of curves designed to throw you off axis. :-)

Author's remarks:

This application graphs polynomials on a standard Cartesian coordinate system. Polynomials of the form ax^0 + bx^1 + cx^2 + ... are graphed by passing the coefficients a, b, c, etc. as double precision arguments. It allows up to 8 parameters (thus up to x^7).

Points of interest:

  • the x axis goes from -32 to +31.
  • the y axis auto scales!
  • up to 8 coefficients may be passed in.
  • the graph will determine direction and use slashes and dashes rather than a simple block of Xs.

For example, to graph y = x^2:

    ./hoyle 0 0 1

Note that:

    ./hoyle 0 0 2

will produce the same graph, since the y-axis is auto scaling.