![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
klik1602 |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 49 Пол: Женский Реальное имя: Натали Репутация: ![]() ![]() ![]() |
Дана матрица А порядка н. Удалить строки содержащие нулевые элементы.
|
![]() ![]() |
TarasBer |
![]()
Сообщение
#2
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
1.
> for p:=1 to m do a[k,p]:=a[k+1,p]; Если бы m совпадало с размером матрицы, то можно было бы писать просто a[k] := a[k + 1]; (для не совпадающего - тоже как бы можно, но не надо так делать) Для динамической матрицы (массив указателей на массивы строк) через a[k] := a[k+1] было бы идеально - копируется не ряд, а только указатель. 2. Алгоритм ужасен, для каждого удаления элемента выполняет сдвиг всей оставшейся таблицы. Именно для этого я и написал статью в ЧАВО, чтобы так не делали. Ужас в том, что эту ошибку делают не только новички. Часто обработчики некоторых форматов, написанные опытными людьми, тоже применяют операцию удаления и сдвига для каждого встреченного комментария. Впрочем, раз работает, то препода это устроит. Когда сдашь задачу преподу, напишу, как бы делал я. -------------------- |
![]() ![]() |
![]() |
Текстовая версия | 21.07.2025 7:06 |