![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
mashka-promakashka |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 10 Пол: Женский Реальное имя: Мария Репутация: ![]() ![]() ![]() |
Вот как звучит задача:
Ввести числовую прямоугольную матрицу размером M×N (M и N заданы). Определить элементы, которые, являясь максимальными в столбцах, больше всех своих соседей слева в строке и меньше всех своих соседей справа в строке, указав значения найденных элементов и их индексы, или же сообщить, что таких элементов нет. Крайние столбцы не рассматривать. Начала делать, но что то не работает толком...помогите пожалуйста
|
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата В языке программирование Паскаль есть определение "матрицы"? Матрица - это двумерный массив. Так? Какой из двух индексов начинает изменяться первым при продвижении по матрице построчно? Первый или второй?Цитата Или вам не нравится ввод матрицы "построчно"? По-моему, такой ввод естественнее Я уже объяснил выше, что хотя я ввожу матрицу построчно, в память данные почему-то заносятся по столбцам. Я этого не просил, кстати.Цитата А не все-равно ли, как размещать индексы, если все работает верно? Ну, это смотря какую цель ты преследуешь... Если написать на одни раз, а потом вообще забыть про программирование, как страшный сон - то пиши хоть с Label-ами и Goto, какая разница? Ну, помучаешься в 3 раза больше при отладке, отладишь однажды, больше к этому возвращаться не будешь...А вот если тебе хочется научиться программировать - то тут уж будь добр не мешать индексы. Во-первых, в матрице обработка строки производится быстрее, чем обработка столбца (вот именно потому, что матрица хранится построчно это и происходит), а следовательно, на больших матрицах у тебя будет провал в быстродействии (а привыкнув работать "шиворот-навыворот" с маленькими матрицами ты БУДЕШЬ так же работать и с большими), которого можно избежать просто работая с индексами НОРМАЛЬНО. Во-вторых, человек, знакомый с любым языком-наследником Алгола, глядя на запись A[1, 2] понимает, что это должна быть первая строка, второй столбец, а тут оказывается у тебя первый столбец, вторая строка - то есть, ему надо лазить по твоей программе, и пытаться понять, что к чему и где, чтобы разобраться в алгоритме работы. Смысл в этом есть? Что дает тебе такой "переворот"? Что, программа заработает быстрее? Нет, она будет работать медленнее. Тогда зачем? Но это все ни к чему не приведет... Ты все равно будешь спорить, делать по-своему, будешь обжигаться, тебя будут наказывать, но ты будешь продолжать, потому что думаешь, что самый умный и находчивый, "вон как выделился из толпы, все работают построчно, а я - по столбцам". Ну что ж, кто-то выделяется, бреясь налысо, кто-то - носит "гребень" на голове, ты нашел свой способ выделиться... Только вот не надо учить ему остальных. Ты хочешь - ты выделяйся. Всех других оставь в покое. Пускай они работают так, как принято, а не наоборот. |
![]() ![]() |
![]() |
Текстовая версия | 31.07.2025 17:02 |