```FLORIDA HIGH SCHOOLS COMPUTING COMPETITION '83

1.1  Write a program which, when given any positive decimal
number, will round off the number to the nearest whole number and
print the results on the screen.

1.2  Write a program which will ask for any five numbers and print
out the numbers in descending order.

1.3  Write a program which will print out the factors of any given
number which is entered.

1.4  Write a program which, when a name is inputted, will produce
a "Happy Birthday Card" (a bordered message with the words Happy
and Birthday, and the persons' name centered within the "card").
************
*   HAPPY  *
* BIRTHDAY *
*  "Name"  *
************

1.5  Write a program which will print a question mark on the
screen at different random locations approximately every five
seconds.

1.6  Write a program so that when "A" is entered "B" appears on
the screen; when "B" is entered "C" appears on the screen.  Do
this for each letter of the alphabet.  A "Z" produces an "A".

1.7  Write a program which will print four distinct rectangles,
one in each corner of the screen.  Use graphics or a selected
character.

1.8  Write a program which will count the number of "e"'s in an
inputted sentence.

1.9  Write a program with the following DATA statement:
DATA   JOHN,20,70,32
DATA   BILL,71,40,30
DATA   MARY,80,42,73
The user will input one of the names and the average of the three
test scores will be printed.

1.10  Write a program which will ask for a four digit number and
will reverse the digits of the number and print out the results.

2.1  Write a program to calculate the area of a regular hexagon,
given the perimeter.

2.2  Write a program to convert a base 8 numeral (at most 4
digits) to a base 2 numeral.

2.3  Write a program to ask the operator for the price of several
items.  A -999 will terminate the input process.  The computer
will print the subtotal, tax (5%), and total.

2.4  Write a program to divide the screen into 4 approximately
congruent rectangles and allow the operator to pick the character
that forms the lines (i.e.; lines made of * or ?, etc.).

2.5  Write a program that will accept a list of numbers.  A -999
will terminate the input process.  The computer will print the
greatest and least in the set.

2.6  Write a program that will accept a list of ten numbers.  The
computer will print the sum, mean, and median.

2.7  Write a program that will allow an operator to enter a
sentence (No period).  The computer will reverse the order of the
words.  Example:
THIS IS BACKWARDS
BACKWARDS IS THIS

2.8  Write a program that will convert cubic feet to cubic
meters.  (1 inch = 2.54 cm)

2.9  Write a program that, when given the equation Y = 2(X+5),
will find the sum of the Y's when X has consecutive values from a
to b.  a and b will be single digit numbers entered by the
operator.

2.10  Write a program that will print any keyboard character on
the screen for 10 seconds, clear the screen, then print the same
character twice (two side by side) for 10 seconds, clear the
screen and repeat the process 10 times, each time adding one more
character.

3.1  Write a program to convert a given number in a given base to
any other given base.  The bases may vary from 2 - 10.

Sample run:  NUMBER?  112
BASE?  3
CONVERT TO BASE? 4

3.2  Write a program to accept the coordinates of the vertices of
a triangle as input.  (Collinear points should not be accepted.)
The computer will determine if the triangle is equilateral,
isosceles, or scalene.

3.3  Write a game program in which the computer secretly and
randomly selects one coordinate pair on a 10 X 10 grid.  The
player inputs a guess.  If the guess is right, the game is over.
Otherwise the computer gives hints to the player by displaying one
of the following messages:  UP, DOWN, RIGHT, LEFT, UP AND RIGHT,
UP AND LEFT, DOWN AND RIGHT, DOWN AND LEFT.

3.4  Write a program to input two numbers, divide the first number
by the second number, and carry the division to a given number of
decimal places.

Sample run:    FIRST NUMBER?  2
SECOND NUMBER?  7
NUMBER OF DECIMAL PLACES?   20
QUOTIENT IS .28571428571428571428

3.5  The numbers 1 through 8 and a blank are randomly placed in a
3 X 3 array on the screen.  For example:

5  8  3
4  1
6  2  7

Write a program so that when a key from 1 - 8 is pressed, the
corresponding number on the screen slides horizontally or
vertically to the adjacent blank location, the computer does
nothing.  (For example: in the above diagram, only the 3, 1, and 7
can be moved.)  The user can repeat this process of sliding
numbers.

3.6  Write a program that will store a list of spelling words. The
program displays a menu with these options:

1. Add a word to the list
2. Delete a word from the list
3. Display the entire list

The program performs the above options.

3.7  Write a program to solve cryptorithms.  The user inputs two
2-letter addends and a 3-letter sum.  The program will generate a
numeric solution if a solution is possible.  Only the letters A,
B, C, D, and E may be used in the input.

SUM?  DDB

One solution is: A = 5
B = 6
C = 0
D = 1

3.8  There are nine lily pads in a row.  A frog is sitting on the
middle pad.  The frog jumps one pad to the right or left with
equal probability.  Write a program that will collect data on the
number of hops a frog takes to land on either one of the two lily

A simple display should show sequence of jumps that the frog
takes.
F
-- -- -- -- -- -- -- -- --
The frog should repeat the task ten times and the number of hops
each time should be displayed on the screen.

10  15  8  4  10  11  17  18  32  6

3.9  Write a program in which a user types in a one-line
sentence.  On the line below the sentence, the cursor can be moved
right and left using the R and L keys.  If the user presses the
space bar, the letter above the cursor is deleted and the rest of
the sentence is shifted left.

For example:       THIS IS AN EXAMPLE
-
becomes:           THS IS AN EXAMPLE
-

3.10  Write a program that will simulate the movement of a pool
ball on a rectangular pool table.  The width and length of the
table can be any number from 1 to 20.  The ball starts at the left
hand bottom corner of the table and moves at a 45 degree angle.
The ball continues to move until it drops into one of the corner
pockets.

The program should display the movement of the ball and indicate
which of the three pockets the ball enters. (top-left, top-right,
bottom-right).

-----------------            Horizontal = 4
|  /|\  |  /|\  |            Vertical   = 3
| / | \ | / | \ |
|/  |  \|/  |  \|
--------/--------
|\  |  /|\  |  /|
| \ | / | \ | / |
|  \|/  |  \|/  |
----/-------/----
|  /|\  |  /|\  |
| / | \ | / | \ |
|/  |  \|/  |  \|
Starts o---------------o Ends

Right-bottom

```