Задача. Морський бій в 1D

in Ukraine on Steem2 days ago

Це ще одна задача на масиви.

image.png

Звісно всі ми грали колись в морський бій, комп'ютерів телефонів не було - а паперових ігр була сила-силена.

До двовимірних масивів в вивченні програмування ще далеко)) бо тут гарно хоча б вивчити одновимірні масиви - то ж я і вигадав це завдання - морський бій не в квадратику а в одній лінії.

Поле морського бою будемо зберігати в одній лінії, таблиці, простий одновимірний масив.

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

add_ship1(pole);
add_ship2(pole);
add_ship3(pole);
add_ship4(pole);

І ось минулого разу коли ми з учнем "розставляли" ці кораблі він і запитав а для чого чотири функції, може одну зробити - універсальну. Бо я часто їм кажу що програму не пишуть під якісь конкретні дані, програма розв'язує задачу одного типу для різних даних.

add_ship(pole, shipsize);
image.png

Це зображення суто ілюстративне, фантазія ШІ мене розсмішила на ніч)) - та нічого хай розхважається))

Звісно можна, і треба. Але новачку це написати одразу буває важко. Спочатку Хай поставить хоч один корабель в одну клітинку.. Далі дві, три - а вже далі думає як то все об'єднати в одну універсальну функцію.

Тим більше що ця задача спрощена від звичайного поля в 2D
А там ще важче це зробити.

Posted using SteemX

Sort:  

🎉 Congratulations!

Your post has been upvoted by the SteemX Team! 🚀

SteemX is a modern, user-friendly and powerful platform built for the Steem community.

🔗 Visit us: www.steemx.org

✅ Support our work — Vote for our witness: bountyking5

banner.jpg

High-Yield Curation by @steem-seven

Your content has been supported!


Maximize your passive income!
Delegate your SP to us and earn high rewards

Click here to see our Tiered Reward System

Vote Proposal 100Vote Witness @seven.witMeet Speak on Steem

We are the hope!

S7VEN Banner



Curated by: @ahsansharif
Posted using SteemX