|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.12.2012, 23:32 | #1 |
Регистрация: 26.12.2012
Сообщений: 8
|
С квадратной матрицы получить ромб путем отсечение углов по n элементов. Элементы, которыми заполнено ромб переписать в вых. файл
С квадратной матрицы получить ромб путем отсечение углов по n элементов. Элементы, которыми заполнено ромб переписать в выходной файл без повторений.
помогите пожалуйста, очень важно, хоть чуточку, часть программы, буду очень благодарна я уже так долго над ней туплю... представление имею как это все должно быть, а вот сделать не получается Последний раз редактировалось Juliks; 27.12.2012 в 01:29. |
27.12.2012, 09:21 | #2 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
|
|
28.12.2012, 01:22 | #3 |
Регистрация: 26.12.2012
Сообщений: 8
|
Serge_Bliznykov
нужно каждую сторону поделить по средине и соединить. в результате получились диагонали четырех маленьких квадратов. нужно выделить внутренние треугольники и таким образом получить ромб. а внешние треугольники мы не трогаем, они нам не нужны. поскольку размер самой матрицы нам не известен, то и количество элементов внутри образовавшегося треугольника нам тоже не известно, поэтому в условии и звучит ''n''
|
28.12.2012, 11:12 | #4 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
мда..
ладно. "продолжаем разговор..." (с) Карлсон... Допустим. Дана матрица 4 x 4. вот такая (просто пример): Код:
|
28.12.2012, 12:24 | #5 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Подозреваю, что размерность MxM, где должно быть M-нечетное. Примерно так:
Код:
n<m div 2 В задаче об этом не слова. И что означает "без повторений"?
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
28.12.2012, 14:15 | #6 | |||||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Поэтому и привёл пример с чётной матрицей! Цитата:
Цитата:
Цитата:
Цитата:
для вашего примера нужно в выходной файл записать 3 6 7 8 9 1 2 4 |
|||||
28.12.2012, 23:11 | #7 | |
Регистрация: 26.12.2012
Сообщений: 8
|
Цитата:
да, так оно и должно быть |
|
28.12.2012, 23:14 | #8 |
Регистрация: 26.12.2012
Сообщений: 8
|
подозреваю, что если в оставшихся элементах матрицы есть дублирующие значения, то нужно записать такие значения только 1 раз.
для вашего примера нужно в выходной файл записать 3 6 7 8 9 1 2 4[/QUOTE] да, это оно |
28.12.2012, 23:25 | #9 |
Регистрация: 26.12.2012
Сообщений: 8
|
Serge_Bliznykov
у меня уже программа написана, вот только есть один вопрос: могу ли я задав размерность массива автоматически подсчитать количество отсекаемых элементов? а то пока мне нужно самой задав размерность подсчитать количество элементов в отсекаемом треугольнике. в маленькой я могу это вделать, но если она будет большая, то не совсем удобно |
29.12.2012, 09:44 | #10 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
введём переменную m обознаючающую катет отсекаемого треугольника (для удобства включим и диагональ, которая отсекает элементы (выделил красным): Код:
очевидно, что для нечётных K получаем, что m равна (K div 2) + 1 путём несложных манипуляций (достроения матрицы размером m x m и подсчётом, сколько элементов лежит выше диагонали Код:
проверим для примера при K= 5 (тот пример, что привёл Sciv) m = (K div 2) + 1 = (5 div 2) + 1 = 3 n = (m*m - m) div 2 = ( 3*3 - 3 ) div 2 = 3 ответ. в отсекаемой части получается 3 элемента. p.s. не забывайте, что отсекаются все четыре угла, поэтому всего у Вас будет отсекаться n *4 элементов исходной матрицы... Последний раз редактировалось Serge_Bliznykov; 29.12.2012 в 09:46. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
2. Получить элементы квадратной матрицы | Annyska | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 11.12.2012 09:38 |
Получить новую матрицу путем деления всех элементов данной матрицы на ее наибольший по модулю элемент (Delphi) | tatarin4555 | Помощь студентам | 1 | 04.12.2012 01:06 |
Получить элементы квадратной матрицы(Pascal) | xxxartikxxx | Помощь студентам | 3 | 17.10.2012 17:35 |
Паскаль:Получить элементы квадратной матрицы | xxxartikxxx | Помощь студентам | 3 | 12.10.2012 17:35 |
графика. ромб. оч странный ромб | aka_faith | Паскаль, Turbo Pascal, PascalABC.NET | 19 | 11.06.2009 02:57 |