![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
HUNTER77 |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
uses crt; необходимо:удалить столбец содержащий максимальный элемент матрицы,(это я пытался сделать...но ничего не вышло,мои попытки: For i:=imax to n do нечетные отрицательные элементы элементы первой строки расположить по убыванию,,на этот счет вообще нет никаких мыслей. кто может прошу помочь! Сообщение отредактировано: volvo - 25.03.2011 19:36 |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата нечетные отрицательные элементы элементы первой строки расположить по убыванию,,на этот счет вообще нет никаких мыслей. Поиск может помочь, я лично выкладывал решение такого задания.кто может прошу помочь! P.S. В следующий раз пользуйся тегами CODE, без них код абсолютно нечитаемый... Да и с ними не очень, если честно. Форматированием кода тоже займись. Для этого даже выкладывалась специальная утилитка: Графическая оболочка для PtoP |
DarkWishmaster |
![]()
Сообщение
#3
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вот похожая програма, удаляет одну колону и одну линию так чтобы сума всех чисел из матрицы была максимальной, может поможет:
Только я тут не удаляю, а просто пропускаю элементы линии и колоны которые должны быть удалены. Просто если удалят то надо сместить всю матрицу в одну сторону. Так быстрее Зачем столько циклов:
// снова в цикл for i:=1 to n do begin для удаленя то
В паскале не пробовал, но должно быть правильно. Сообщение отредактировано: DarkWishmaster - 26.03.2011 15:04 |
DarkWishmaster |
![]()
Сообщение
#4
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
...
Сообщение отредактировано: DarkWishmaster - 26.03.2011 15:44 |
volvo |
![]()
Сообщение
#5
|
Гость ![]() |
Цитата //так как нам нужно первая строка то очевидно что нужен только один цикл Давай договоримся, ты сначала будешь проверять решения, и только потом - из публиковать. То, что ты привел задачу не решает. Как был массив:const, так после "сортировки" и остался: Running "f:\programs\pascal\eee.exe " И где тут сортировка отрицательных элементов? Ответ должен быть таким: 1 2 3 -1 -3 6 7 -5 -4 10 (то есть, все отрицательные нечетные сортируются по убыванию, все остальные - на своих местах!!!). Повторяю: поиск и еще раз поиск, задача решалась. Неоднократно. |
DarkWishmaster |
![]()
Сообщение
#6
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
Давай договоримся, ты сначала будешь проверять решения, и только потом - из публиковать. То, что ты привел задачу не решает. Как был массив: const, так после "сортировки" и остался: Running "f:\programs\pascal\eee.exe " И где тут сортировка отрицательных элементов? Ответ должен быть таким: 1 2 3 -1 -3 6 7 -5 -4 10 (то есть, все отрицательные нечетные сортируются по убыванию, все остальные - на своих местах!!!). Повторяю: поиск и еще раз поиск, задача решалась. Неоднократно. Прошу прощения. Надеюсь это лучше:
|
HUNTER77 |
![]()
Сообщение
#7
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
столбец удалил..
теперь надо сортировать Код uses crt; var a:array[1..20,1..20]of integer; n,m,i,j,max,jmax:integer; begin clrscr; randomize; write('n=');readln(n); write('m=');readln(m); writeln('Ishodnaia matrica:'); for i:=1 to n do begin for j:=1 to m do begin a[i,j]:=random(20); write(a[i,j]:4); end; writeln; end; readln; max:=a[1,1];jmax:=1; for i:=1 to n do for j:=1 to m do if a[i,j]>=max then begin max:=a[i,j]; jmax:=j; end; writeln('max element=',max,' v stlbce ',jmax); writeln; writeln('Rezultat:'); for j:=jmax to m-1 do for i:=1 to n do begin a[i,j]:=a[i,j+1]; end; for i:=1 to n do begin for j:=1 to m-1 do write(a[i,j]:4); writeln; end; readln end. |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Ну, раз удалил - то теперь сортируй:
{ Доп. функции для реализации сортировки: }Ну, или воспользуйся приведенным выше кодом, с использованием функции Control. Он, насколько я вижу, тоже должен работать. Проверить сейчас негде. Сразу говорю: без функций можно, но я этого делать не буду. Дублировать код и писать километровые условия там, где этого можно избежать - оно мне не сдалось. Нужно - извращайся. Мне оно не надо. P.S. Ты в курсе, что вот таким способом (через random(20)) ты не получишь отрицательных элементов, да? |
HUNTER77 |
![]()
Сообщение
#9
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
да..я переделал
Добавлено через 16 мин. спасибо!! |
HUNTER77 |
![]()
Сообщение
#10
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
ты проверял сортировку?
|
volvo |
![]()
Сообщение
#11
|
Гость ![]() |
Свою - проверял. Было:
(-11, 2, 3, -1, -5, 6, 7, -3, -4, 10) стало: -1 2 3 -3 -5 6 7 -11 -4 10 , как видишь, все отрицательные нечетные отсортированы. Остальные остались там же, где и были. А что? |
HUNTER77 |
![]()
Сообщение
#12
|
Группа: Пользователи Сообщений: 9 Пол: Мужской Репутация: ![]() ![]() ![]() |
значит у меня паскаль глючный.
спасибо)) |
volvo |
![]()
Сообщение
#13
|
Гость ![]() |
|
![]() ![]() |
![]() |
Текстовая версия | 1.07.2025 2:31 |