Вопрос № 40160: Уважаемые эксперты. Имеется задача:
При проектировании рамы автомобиля конструктор представил ее в виде решетки, состоящей из n × n узлов (n – нечетное число), в которых расположены сосредоточенные массы. Задайте количество узлов рамы и...
Вопрос № 40.160
Уважаемые эксперты. Имеется задача:
При проектировании рамы автомобиля конструктор представил ее в виде решетки, состоящей из n × n узлов (n – нечетное число), в которых расположены сосредоточенные массы. Задайте количество узлов рамы и сосредоточенную массу каждого узла.
Расположите узлы на раме так, чтобы суммы масс узлов относительно поперечной оси рамы были равны или различались не более чем на 15%
Честно говоря, просто даже пока не понимаю ЧТО нужно сделать в ней. Вопрос к Вам - подскажите на конкретном примере - вот это дано, вот это надо получить. И если алгоритм заумный - хотя бы его идею. Мне не надо решение на Pas - попробую написать сама, не получится опять к вам хза советом приду, мне не понятно КАК понять эту задачу...
Отвечает: Kazakh
Здравствуйте, Ямкина Елена Владимировна!
Сомневаюсь, что это так, но всё же...
в ">>" мой перевод.
ДАНО:
При проектировании рамы автомобиля конструктор представил ее в виде решетки, состоящей из n × n узлов (n – нечетное число), в которых расположены сосредоточенные массы.
>>Нужна матрица размером nxn (n - нечетное).
Задайте количество узлов рамы и сосредоточенную массу каждого узла.
>>задайте n и значение каждого элемента матрицы
НАДО:
Расположите узлы на раме так, чтобы суммы масс узлов относительно поперечной оси рамы были равны или различались не более чем на 15%
>>выбираете поперечную ось в матрице = Round(n/2)
>>и теперь нужно так урорядочить значения матрицы, чтобы сумма левых и правых
>>относиттельно оси были равны или отличались на 15%.
>>P.S.: если ось взять вертикально, то будут левая и правая чать.
>>А если ось взять горизонтально, то соответственно верхняя и нижняя часть.
Кажется, что доступно объяснил :-)
Удачи. Пишите.
--------- Если собеседник затрудняется ответить, значит, вопрос поставлен правильно.
Ответ отправил: Kazakh (статус: 6-ой класс)
Ответ отправлен: 13.04.2006, 08:30
Отвечает: Полховский Александр Владимирович
Здравствуйте, Елена Владимировна.
Рама - плоская прямоугольная конструкция, следовательно, поперечная ось - та линия, которая делит раму пополам по длине (то есть по большему линейному размеру: 3х1,5 - 3 - это длина, 1,5 - ширина). Но раз размеры не заданы, то можно брать любую из предложенных линий.
Что же касается задачи в целом, то попробую донести до Вас её суть.
Во-первых, узел - пересечение двух и более элементов решётки (то есть, прямых, которые эту решётку и составляют). То есть, если мы возьмём квадрат, то это будет решётка, состоящая из 2х2 узлов. Нарисуйте решётку. По условию n - нечётное, значит 3х3, 5х5 и т. д. Замечу, что при этом ось пройдёт по одному из рядов узлов, что облегчит дальнейшую работу.
Во-вторых, сосредоточенные массы расположены в узлах, то есть, на пересечениях, описанных выше. Это значит, грубо говоря, что на каждом пересечении в решётке лежит шарик определённой массы (не казните за простоту).
В-третьих, предложение "Задайте количество узлов рамы и сосредоточенную массу каждого узла" означает, что эти параметры нужно вводить пользователю (ну я так, по крайней мере, думаю), то есть, нужно обеспечить динамическое решение, в зависимости от количества узлов (хотя, честно говоря, тут можно и совсем противоположное подумать, мол сами задавайтесь чем хотите и решайте, лучше узнайте у составителя вопроса).
"Расположите узлы на раме..." - эта фраза привела меня в недоумение, но если абстрагироваться от того, что речь идёт об автомобиле, то продолжать можно. Итак, у нас есть nxn масс. Есть понятие о том, как их надо расположить. И есть условие, что сумма масс с одной стороны поперечной оси не будет отличаться от суммы масс с другой более, чем на 15 %. По этому поводу Вам уже дал наводку эксперт Kazakh. Я могу лишь добавить, что начинать
балансировать следует с самых тяжёлых узлов, затем по очереди раскидывать всё более лёгкие. Но если не получится, тогда меняйте местами близкие по значению массы с разных сторон, добиваясь незначительных изменений в балансе (ну или значительных, смотря какая разность масс будет у этих двух узлов).
Подытожу весь мой ответ примером (без кода):
задаём количество узлов: 3х3
рисуем:
Задаёмся девятью массами:
1, 2, 3, 4 ... 9 кг
Раскидываем в том порядке, как было сказано выше:
Центральный ряд (по нему идёт ось): 9-8-7
Верхний ряд:6-3-2
Нижний ряд:5-4-1
Итог:
6-3-2
9-8-7 - этот ряд считать не будем, он не относится ни к левой, ни к правой части
5-4-1
Задача решена. обращаю Ваше внимание ещё раз: матрица будет иметь 9 ячеек, а не 4, как таблица на рисунке.
Ещё 2 момента, которые я отмечу:
1. Не знаю, нужно ли учитывать масу узлов, которые лежат на оси (думаю, нет, так как нагрузки сосредоточенные).
2. Возможно, составитель имел в виду именно nxn "квадратиков" (не все владеют техническими понятиями), тогда ось не будет проходить через один из рядов узлов, и решение незначительно изменится.
Отвечает: NiGHT
Здравствуйте, Ямкина Елена Владимировна!
Основываясь на предыдущих ответах я написал.
тут учтен и случай невозможности расположения масс.
PS Думаю ВЫ неправильно воспроизвели условие, слишком уж это просто. На уровне 1 класса (а такие задачи так заумно никогда не формулируют...). Я бы например в поменял одно слово в условии ...Расположите узлы на раме так, чтобы суммы ВЕСОВ узлов... И тогда задача становится уже нелинейно сложной. Да и по логике обычно инженерам нужно распределять не массу а вес по поверхности.
Приложение:
Ответ отправил: NiGHT (статус: Студент)
Ответ отправлен: 13.04.2006, 12:59