Для подготовки текста решений задач следует использовать произвольный текстовый редактор, желательно - с подсветкой синтаксиса (geany, редактор файлового менеджера mc и т.д.).
Для компиляции - компилятор gcc.
В помещении (см.рис.) расположено до 24 устройств (от 1 до 23 компьютеров, от 1 до 2 коммутаторов).
Зная расположения устройств и их характеристики, рассчитать минимальную длину кабеля,
который понадобится для эффективного объединения компьютеров в локальную сеть, с учетом следующих ограничений и условий:
Минимальный набор характеристик компьютера: тип устройства, тип сетевой карты (100 или 1000 МБит).
Минимальный набор характеристик коммутатора: тип устройства, количество портов 100МБит, количество портов 1000МБит.
Каждое устройство должно быть описано с использованием структуры и/или объединения, вне зависимости от типа устройства. Для хранения устройств рекомендуется использовать одномерный массив (индекс соответствует расположению элемента).
Количество, местоположение и характеристики коммутаторов и компьютеров задаются при вводе.
Длина кабеля (см.рис.) между рядом расположенными устройствами по вертикали - 1.5М. Длина кабеля между рядом расположенными устройствами по горизонтали - 1М. Длина кабеля между устройствами 23 и 24 - 3М.
Кабели могут быть протянуты только по вертикали и/или горизонтали в пределах синего поля (см.рис.). Диагональное расположение кабелей запрещено. Например, если коммутатор находится в позиции 9, а компьютер - в позиции 2, то минимальная длина кабеля между этими устройствами равна 4 метра (2 сегмента по вертикали, один - по горизонтали).
Коммутаторы должны объединяться друг с другом одним кабелем с использованием (если это возможно) гигабитных портов. Оставшиеся после объединения гигабитные порты коммутаторов должны подключаться к гигабитным сетевым картам компьютеров, даже если это увеличивает минимальную длину кабеля.