ІІ етап ІОІТ-2017.
Завдання 9 класу

Прочитати більше

Інформація, інструкції та рекомендації щодо виконання

ІІ етап Інтернет-олімпіади з інформаційних технологій у номінації "Інформаційні системи та бази даних" проводиться з 13 по 19 листопада 2017 року в заочній формі з використанням Інтернет-ресурсу itolymp.

Для успішного проходження ІІ етапу Вам потрібно до 19 листопада виконати запропоновані нижче завдання та надіслати їх на ресурс itolymp за допомогою Вашого облікового запису. В цілому вам потрібно: увійти, натиснути на змагання "ІІ етап ІОІТ-2017 у номінації "Інформаційні системи та бази даних" (9 клас)" - після цього ви побачите перелік завдань із посиланням для надсилання розв'язку для кожного з них.

В межах цього етапу до уваги учнів 9 класу пропонується три задачі, по одній на кожен з традиційних додатків Microsoft Office (окрім СУБД) - Word, PowerPoint та Excel, поєднані однією темою - Математичні головоломки. Задачі розміщені в довільному порядку.

Надіслані вами за допомогою ресурсу роботи перевірятимуть члени журі номінації, проте організаційний комітет просить учасників все одно чітко виконувати усі вказівки, що надаються до завдань туру. У разі невиконання технічних вимог зняті за критеріями бали не відшкодовуються.

Впродовж виконання завдань забороняється використовувати зразки з умови завдання, додатки, не зазначені в умові завдання, а також програмувати окремі частини розв’язання мовою Visual Basic for Applications. Також строго забороняється використання під час розв’язання файлів розв’язань інших учасників. Будь-які дії, що порушують Правила проведення Інтернет-олімпіади з інформаційних технологій «ІОІТ-2017», а також вказівки журі та організаційного комітету можуть призвести до позбавлення учасника права на подальшу участь у змаганні.

Не залишайте в файлах розв’язань позначки, що ідентифікують Вашу особу. Вони призводять до анулювання роботи.

Уважно читайте умови завдань. Пам’ятайте: правильне розуміння поставленої перед вами задачі – половина шляху до її розв’язання. Автори завдань та члени журі очікують на ваші запитання, які ви можете поставити за допомогою системи itolymp.

З побажаннями успіхів, організаційний комітет Інтернет-олімпіади

Математичні головоломки

Попри достаток чисел та математики, ці ігри здобули популярність та привернули до себе увагу мільйонів людей, ба навіть тих, хто не вважає математику своїм покликанням. Цей тиждень наша увага прикута до головоломок, кожна з яких Вам добре знайома: судоку, сапер та п'ятнашки. Вашим завданням на ІІ етапі Інтернет-олімпіади з інформаційних технологій буде розробка цих ігор в різних додатках офісного пакету.

Судоку (Excel) П'ятнашки (Word) Сапер (PowerPoint)

Судоку (Excel)

Гогерчак Григорій Іванович, заступник голови журі

Завантажити заготовку excel.xlsx (формат 2016) Завантажити заготовку excel.xls (формат 2003) Завантажити набір судоку та їх рішень (формат 2003)

Судоку — заснована на логіці японська головоломка з числами. В перекладі з японської мови «су» позначає слово «число», «доку» має безліч різних перекладів, але в цілому означає щось одне, одиничне, цілісне.

Прообраз сучасного судоку, так звані магічні квадрати знали ще в стародавньому Китаї. В Європі згадується щось подібне в XVIII столітті, коли сліпий швейцарський математик Леонард Ейлер (Leonhard Euler) з'ясував, що в матриці розміром 9×9 кожен ряд і кожну колонку можна заповнити цифрами від 1 до 9 в певному порядку і без повторення.

Вперше судоку в сучасному вигляді з'явилася в одному з американських журналів пазлів в 1979 році. Автором головоломки був громадянин США, 74 річний архітектор на пенсії Howard Garns. Видавець — журнал «Math Puzzles and Logic Problems» дав пазлу ім'я «Number Place», яке досі використовується у Сполучених Штатах. Справжню популярність головоломка завоювала в 2005, коли японський журнал Nikoli став регулярно друкувати її на своїх сторінках. 2004 року судоку почали друкувати англійські газети, звідки судоку-манія перекинулася на Європу і до Австралії.

Ігрове поле судоку складається з квадрата, розміром 9 × 9, розділеного на менші квадрати (їх ще називають «регіони») із стороною 3×3 клітинки. Таким чином, все поле налічує 81 клітинку. У деяких з них вже на початку гри розташовані числа (від 1 до 9). Залежно від того, скільки клітинок вже заповнено, конкретну судоку можна віднести до легких або складних.

Мета головоломки - необхідно заповнити вільні клітинки цифрами від 1 до 9 так, щоб в кожному рядку, в кожному стовпці і в кожному малому квадраті 3×3, кожна цифра зустрічалася лише один раз. Правильна головоломка має лише одне рішення.

Ваше завдання - створити інтерфейс гри судоку відповідно до інструкцій, поданих нижче.

Увага! Використання VBA та засобу запису макросів заборонено!

На єдиному аркуші Судоку заготовки у діапазоні C5:K13 необхідно створити поле 9×9 для гри в судоку.

Система повинна передбачати два режими, що можна змінити за допомогою перемикача вище від поля гри: режим заповнення умови, який дозволяє користувачу заповнити в полі гри початкові номери (умову головоломки), та режим гри, в якому користувач власне розв'язує головоломку.

Під час введення чисел в режимі заповнення умови комірки з цими числами повинні підфарбовуватися сірим кольором відповідно до наступного зразка:

При переході в режим гри сіре забарвлення комірок з умовою повинне зберігатися, а номери, внесені вже після переходу до цього режиму, не повинні виділятися:

Завдання гравця судоку полягає в тому, щоб в одному стовпці, рядку та «регіоні» із стороною 3×3 клітинки не було однакових чисел. Задля зручності користувача система повинна передбачати виділення червоним забарвленням тих комірок, значення в яких заважає виконанню правил гри (тобто клітинок, значення яких наявне принаймні двічі в тому ж стовпці, рядку чи «регіоні»). При цьому, звісна річ, комірки умови не можуть заважати виконанню правил судоку, а тому їх підфарбовувати не потрібно.

Якщо значення комірок, введені користувачем, конфліктують між собою, усі ці значення виділяються системою:

Якщо користувач намагається в режимі гри змінити значення комірок умови, система повинна відображати повідомлення про помилку відповідно до наступного зразка та не зберігати введене користувачем значення:

Якщо користувач правильно склав судоку (тобто усі комірки поля судоку заповнені та правила гри додержано), введені користувачем значення виділяються відповідно до наступного зразка:

Користувач системи повинен здійснювати маніпуляції виключно з діапазоном C5:K13 та перемикачами режимів. Усі інші частини системи повинні бути від нього приховані.

Відеозразок роботи системи:

Відеозразок роботи системи під час виграшу користувача:

Звук відтворювати не потрібно. Тіні згори та знизу вікна є частиною інтерфейсу YouTube.

Правильний розв'язок повинен точно відповідати поданим вище зразкам.

Розв'язок, що враховуватиме лише частину з вище вказаних умов буде оцінено в неповну кількість балів.

П'ятнашки (Word)

Гогерчак Григорій Іванович, заступник голови журі

До цього завдання файлів не передбачено

П'ятна́шки (гра в п'ятнадцять, такен) — популярна головоломка, придумана у 1878 році Ноєм Чепменом. Складається з 15 однакових квадратних пластинок з нанесеними числами від 1 до 15. Пластинки поміщаються в квадратну коробку, довжина сторони якої в чотири рази більша довжини сторони пластинок, відповідно в коробці залишається незаповненим одне квадратне поле. Мета гри — переміщаючи пластинки по коробці добитися впорядковування їх по номерах (як зображено на рисунку), бажано зробивши якомога менше переміщень.

Ваше завдання - створити інтерфейс гри п'ятнашки відповідно до інструкцій, поданих нижче.

Увага! Використання VBA заборонено!

В наших п'ятнашках в полі 4×4 користувач певним чином розташовує числа від 1 до 15 в шістнадцятковій системі числення (тобто замість чисел 10, 11, 12, 13, 14 та 15 будуть розташовані літери A, B, C, D, E та F відповідно) і замість незаповненого поля вводить літеру X відповідно до наступного зразка (користувач може ввести значення в довільному порядку):

Після цього за допомогою кнопок в панелі швидкого доступу він може рухати незаповнене поле «X» вправо, вниз, вгору чи вліво відповідно:

Колір та форма стрілок можуть бути довільними. Обов'язковим є тільки оформлення відповідних елементів керування у вигляді стрілок.

Наприклад, після натискання другої з вищепоказаних кнопок («вниз») раніше продемонстроване поле повинно змінитися на наступне («X» та «9» обмінюються місцями):

Далі, після натискання останньої з вищепоказаних кнопок («вправо») поле повинно змінитися на наступне («X» та «F» обмінюються місцями):

Далі, після натискання третьої з вищепоказаних кнопок («вгору») поле повинно змінитися на наступне («X» та «6» обмінюються місцями):

Далі, після натискання першої з вищепоказаних кнопок («вліво») поле повинно змінитися на наступне («X» та «9» обмінюються місцями):

Система повинна дозволяти здійснювати вищевказані маніпуляції довільну кількість разів. Якщо рух у певний бік є неможливим, поле повинно залишитися після натиснення відповідної кнопки незмінним, а система не повинна відображати жодних додаткових повідомлень чи помилок.

Сапер (PowerPoint)

Гогерчак Григорій Іванович, заступник голови журі

Завантажити зображення міни (PNG)

Історія гри-головоломки «Сапер» веде в далекі 50-ті роки XX століття. В той час ігрове поле являло собою тришаровий паперовий панчборд. У верхньому його шарі були отвори, в які потрібно було вдаряти молоточком в другий шар, який в свою чергу був захисною плівкою і приховував під собою третій шар, на якому були зображені міни та цифри рівно під кожним отвором першого шару. Якщо гравець пробивав усі отвори, під якими не було мін, то він міг отримати від виробника приз - ще одну таку ж гру.

З ерою появи персональних комп'ютерів «Сапер» отримав ще більшу популярність. Зокрема з появою операційної системи Windows в цю гру почали грати в усіх куточках світу.

Принцип цієї гри наступний. Плоске ігрове поле розділене на квадрати, деякі з яких «заміновані»; кількість «замінованих» комірок заздалегідь відоме. Ціллю гри є відкриття всіх комірок, що не містять мін.

Гравець відкриває комірки, намагаючись не відкрити комірку з міною. Відкривши комірку з міною, він програє. Якщо під коміркою міни немає, то в ній з'являється число, яке показує, скільки з восьми суміжних комірок «заміновано». Використовуючи ці числа гравець намагається розрахувати положення мін, проте деколи навіть всередині чи наприкінці гри деякі комірки таки доводиться відкривати навмання. Якщо під сусідніми комірками теж немає мін, то відкривається вся «незамінована» область до комірок, в яких є цифри (включно з ними).

Ваше завдання - створити інтерфейс гри «Сапер» для вказаної нижче конфігурації поля відповідно до інструкцій, поданих нижче.

Увага! Використання VBA заборонено!

На початку роботи системи поле повністю закрите:

Користувач може натискати на закриті комірки поля, таким чином відкриваючи їх. Якщо в комірці міна, після натиснення на неї користувачеві відображаються усі міни на полі та повідомлення «Ви програли!». В протилежному випадку користувачеві відображається цифра - кількість мін в восьми суміжних з відкритою комірках. Якщо під сусідніми комірками теж немає мін, то відкривається вся «незамінована» область до комірок, в яких є цифри (включно з ними).

Відеозразок роботи системи:

Звук відтворювати не потрібно. Тіні згори та знизу вікна є частиною інтерфейсу YouTube.

Користувач може почати гру заново, натиснувши відповідну кнопку в будь-який момент гри. Почати заново користувач повинен мати змогу довільну кількість разів.

Клацання на відкриті комірки, а також на області поза полем гри та кнопкою «Заново» не повинні призводити до будь-яких змін.