powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / массив
18 сообщений из 18, страница 1 из 1
массив
    #35117976
Bella_8686
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 1, если k-я строка матрицы симметрична, и значение 0 в противном случае.
подскажите, пожалуйста!
заранее спасибо!
...
Рейтинг: 0 / 0
массив
    #35118079
Фотография ..:COBECTb:..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bella_8686Задана матрица размером NxM. Получить массив B, присвоив его k-му элементу значение 1, если k-я строка матрицы симметрична, и значение 0 в противном случае.
подскажите, пожалуйста!
заранее спасибо!
а поподробней никак нельзя???
какой язык?
тут телепаты в отпуску...
...
Рейтинг: 0 / 0
массив
    #35118325
Bella_8686
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему никак нельзя?
Tyrbo Paskal or Delphi
...
Рейтинг: 0 / 0
массив
    #35118416
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая забавная девчушшка... В контексте линейной алгебры, ежели скажем есть квадратная матрица NxN, то я понимаю что значит что она симметричная. Если же матрица прямоугольная NxM, то уже непонятно. А что такое симметричная строка прямоугольной матрицы, то только Вашему преподу ведомо...
...
Рейтинг: 0 / 0
массив
    #35118435
Шогал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то мне интуиция подсказывает, что имеется ввиду палиндром
...
Рейтинг: 0 / 0
массив
    #35119186
Gatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ШогалЧто-то мне интуиция подсказывает, что имеется ввиду палиндром
+1

Багим по строкам. В каждой строке начиная с середины движемся одновременно к началу и к концу, парралельно сравнивая элементы. Если нашли не равные, значит не симметрична, если не нашли - симметрична. Только учесть вариант когда в строке чётное и нечётное количество элементов.
В принципе можно и наоборот, двигаться от концов к середине, тогда и учитывать не нужно ничего
...
Рейтинг: 0 / 0
массив
    #35120979
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
array.inject([]) do |s, row|
  s << (if row[ 0 ..(row.length /  2  -  1 )] == row[-(row.length /  2 )..- 1 ].reverse then  1  else  0  end)
end

На паскаль сами переведете.
...
Рейтинг: 0 / 0
массив
    #35121261
Gatman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гы
Код: plaintext
1.
2.
3.
array.inject([]) do |s, row|
  s << (if row[ 0 ..(row.length /  2  -  1 )] == row[-(row.length /  2 )..- 1 ].reverse then  1  else  0  end)
end

На паскаль сами переведете.

Это чё за язык такой то?
...
Рейтинг: 0 / 0
массив
    #35121480
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gatman гы
Код: plaintext
1.
2.
3.
array.inject([]) do |s, row|
  s << (if row[ 0 ..(row.length /  2  -  1 )] == row[-(row.length /  2 )..- 1 ].reverse then  1  else  0  end)
end

На паскаль сами переведете.

Это чё за язык такой то?

это ruby, но где-то так будет выглядеть на всех языках, реализующию замыкание. А именно почти дословная запись Вашего алгоритма.
...
Рейтинг: 0 / 0
массив
    #35121511
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я так понимаю что row "указывает" на текущую строку матрицы, т.е. что-то типа указателя на массив из N элементов типа double или int или whatever. А сама матрица та где? И как Вы ассоциируете row с началом текущей строки в матрице? Как переходите от строки к строке? Это уже где-то сидит в Вашем коде?
...
Рейтинг: 0 / 0
массив
    #35121597
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikhail_nя так понимаю что row "указывает" на текущую строку матрицы, т.е. что-то типа указателя на массив из N элементов типа double или int или whatever. А сама матрица та где? И как Вы ассоциируете row с началом текущей строки в матрице? Как переходите от строки к строке? Это уже где-то сидит в Вашем коде?

матрица, это array
inject это итератор, прокидывающий в блок do..end значение параметра в (...) и текущей строки |s, i|
...
Рейтинг: 0 / 0
массив
    #35121599
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
гы mikhail_nя так понимаю что row "указывает" на текущую строку матрицы, т.е. что-то типа указателя на массив из N элементов типа double или int или whatever. А сама матрица та где? И как Вы ассоциируете row с началом текущей строки в матрице? Как переходите от строки к строке? Это уже где-то сидит в Вашем коде?

матрица, это array
inject это итератор, прокидывающий в блок do..end значение параметра в (...) и текущей строки |s, i|

|s, row|
...
Рейтинг: 0 / 0
массив
    #35121636
Хе-хе-хе
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Bella_8686почему никак нельзя?
Tyrbo Paskal or Delphi

мне вот это понравилось...
...
Рейтинг: 0 / 0
массив
    #35122083
Bella_8686
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а можно написать на язык Turbo Pascal?
буду благородна!
...
Рейтинг: 0 / 0
массив
    #35125416
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
матрица, это array
inject это итератор, прокидывающий в блок do..end значение параметра в (...) и текущей строки |s, i|

А если матрица уложена в массив по столбцам, а не по строкам?
...
Рейтинг: 0 / 0
массив
    #35125498
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikhail_n матрица, это array
inject это итератор, прокидывающий в блок do..end значение параметра в (...) и текущей строки |s, i|

А если матрица уложена в массив по столбцам, а не по строкам?

метод array.transpose приведет к необходимому виду.
...
Рейтинг: 0 / 0
массив
    #35125502
mikhail_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
метод array.transpose приведет к необходимому виду.

Ну всё, приехали, а метод transpose наличиствует у любого массива иль только двумерного? Или array попросту инстанс класса matrix? А то так и на любом ООП языке можно налопатить кучу классов, а потом уж элегантно решить задачу в три строчки - и замыкание/незамыкание - по-барабану.
...
Рейтинг: 0 / 0
массив
    #35125504
Гы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikhail_n метод array.transpose приведет к необходимому виду.

Ну всё, приехали, а метод transpose наличиствует у любого массива иль только двумерного? Или array попросту инстанс класса matrix? А то так и на любом ООП языке можно налопатить кучу классов, а потом уж элегантно решить задачу в три строчки - и замыкание/незамыкание - по-барабану.

transpose применим к двумерным массивам. А я не буду спорить, что можно налопатить. Только без замыканий так элегантно не получится. Под каждый случай не налопатишь.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / массив
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]