KöMaL Problems in Informatics, February 2007
Please read the rules of the competition.
Show/hide problems of signs:
Problems with sign 'I'
Deadline expired on March 19, 2007.
I. 151. Watson, the friend of the great detective overheard the following details of making a database of a robbery (a ``_'' character denotes information Watson did not hear):
Watson also knows that ringleaders can keep the percentage of the booty equal to their ranks, while the remaining money goes to the boss. The income of the boss is .
Write a query named ``remaining'' that finds out the remaining sum for the ringleaders. (A sum should appear together with the name of each leader.)
Write a query named ``bestday'' that determines the day with greatest income.
Write a form to register the income. The locations should be chosen from a drop-down menu. This form should contain two buttons to select the previous or the next record. The list of records should be cyclic.
Finally, make a report that details the income of the ringleaders and further contains a ``summary'' of the total income in January.
The file i151.mdb is to be submitted, containing the tables, queries, the form and the report.
I. 152. Write a program to recognize the following characters: see the Figure.
The file in.txt contains the characters to be recognized: white squares are encoded as 0's, while black squares as 1's. The input always contains letters of size 5×8, separated by two white columns. (There is no such white column before the first and after the last letter.) The input has more than one line, and every 8th line consists of entirely 0's as separators.
You should apply the following rules for recognition:
- If the input sign has a black dot at a certain position and some of the letters also have a black dot there, then the matching rate increases by 1.
- If the input sign has a black dot at a certain position and some of the letters do not have a black dot there, then the matching rate decreases by 1.
The input sign is identified as a certain letter, if the matching rate is at least 50% between the input and that letter. (Your output then is this letter.) If there are two candidates with equal matching rate, or the rate is less than 50%, your output should be a ``?''. The output file out.txt should contain the recognized letters or the question marks without spaces.
For example, if the input sign is the following:
so this character is recognized as letter ``B''.
The source code of the program (i152.pas, i152.cpp, ) should be submitted.
I. 153. Prepare a spreadsheet to simulate the motion of a ball shot upwards. One of your sheets ``Data'' should contain data of the motion, the other sheet ``Graphs'' should contain the position-time, velocity-time and acceleration-time graphs, finally, the last sheet should be named as ``Computation''.
The Data sheet should contain the data of the ball, the shot and the constants in range A1:B7, in a format similar to the example:
In every simulation step, the position, velocity and acceleration of the ball should be recomputed using the initial data and results of the previous steps. Your simulation should consist of 200 steps, with ``DeltaT'' time between consecutive steps. The Graph sheet should plot these results in the same system of coordinates.
The sheet containing your solution (i153.xls, i153.xsc, ) should be submitted.
Problems with sign 'S'
Deadline expired on March 19, 2007.
S. 24. In this exercise we consider knight's tours on the usual chessboard (that is, the knight visits every square exactly once). For each square as initial position, you should give the number of different tours. (Two tours are different, if the squares are visited in a different order.)
The output is written as an 8×8 table on the standard output. The source code of your solution (s24.cpp, s24.pas, ) and a short documentation (s24.txt, s24.pdf) should be submitted.
Upload your solutions above