![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Mouse |
![]()
Сообщение
#1
|
Гость ![]() |
Упорядочить строки целочисленной прямоугольной матрицы по возрастанию количества одинаковых элементов в каждой строке(в виде процедуры)
найти номер первого из столбцов, не содержащих ни одного отриц элемента(в виде ф-ии) Помогите доделать прогу...Функция сделана,а вот процедура не получается program matrica; |
![]() ![]() |
Yevgeny |
![]()
Сообщение
#2
|
![]() The matrix has me!!! ![]() ![]() Группа: Пользователи Сообщений: 74 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Суть процедуры в кратце: запусти по двойному циклу сортировку (можешь самую простую, пузырьком например), одновременно высчитывая количество одинаковых элементов в соседних строках, и сравнивай их, пока не отсортируешь...
![]() -------------------- "Брать производную можно научить даже обезьяну" - мой препод по матану! :-)
|
mouse1 |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Это понятно,но как реализовать это,не получается почему-то =(
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
1. Читаешь здесь: Как задать матрицу, чтобы быстро поменять местами ее строки ?
2. Задаешь матрицу так, как там написано 3. Пишешь функцию, вычисляющую количество одинаковых элементов в одной отдельно взятой строке (назовем ее F, к примеру) 4. Пишешь процедуру сортировки (как уже было сказано выше - хоть "пузырек"), но вместо сравнения самих строк матрицы сравниваешь результаты F(строка_i) и F(строка_i+1), а вот меняешь местами при необходимости - сами строки... Как видишь - ничего сложного, в поиске можно найти уже готовую реализацию, но я бы рекомендовал тебе сделать это задание самостоятельно (хотя бы начни, что не получится - поможем)... |
mouse1 |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вообщем,вставил этот код:
Выдаёт ошибку 41 Operand types do notmatch operator на строке If ar[Pred(j)] > ar[j] Then Begin |
Айра |
![]()
Сообщение
#6
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата Выдаёт ошибку 41 Operand types do notmatch operator на строке If ar[Pred(j)] > ar[j] Then Begin Я так понимаю ar - это двумерный массив? тогда может стоит добавить второй индекс? |
mouse1 |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Млин,чёта я не догоняю..
Добавлено через 2 мин. Двумерный он да... Куда и чего добавить |
Айра |
![]()
Сообщение
#8
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
у двумерного массива индексов два: ar[i,j], у тебя только один ar[j]..
|
mouse1 |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
ar[i,j] := T; -выдаёт Type mismatch Сообщение отредактировано: mouse1 - 17.01.2008 3:07 |
Yevgeny |
![]()
Сообщение
#10
|
![]() The matrix has me!!! ![]() ![]() Группа: Пользователи Сообщений: 74 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
понятное дело выдаёт, несоответсвие типов, невооружённым глазом видно, что у тебя ar - типа mas, а T - типа integer, вот и всё!
![]() -------------------- "Брать производную можно научить даже обезьяну" - мой препод по матану! :-)
|
Айра |
![]()
Сообщение
#11
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
mouse1 а можно полный код встудию?
![]() Цитата у тебя ar - типа mas, а T - типа integer, вот и всё! вот и ничего ![]() const n=5; |
mouse1 |
![]()
Сообщение
#12
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вот что получилось,матрицу не упорядочивается,хэлп..сёдня нужно.. =( Сообщение отредактировано: mouse1 - 17.01.2008 3:52 |
Айра |
![]()
Сообщение
#13
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Получилось как-то так (я добавила функцию в процедуру сортировки):
program proga; Вроде работает, но хорошо проверить времени нет.. Сообщение отредактировано: Айра - 17.01.2008 10:38 |
mouse1 |
![]()
Сообщение
#14
|
Новичок ![]() Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: ![]() ![]() ![]() |
Пасиб большое за помощь !
|
volvo |
![]()
Сообщение
#15
|
Гость ![]() |
Оля, ты на каком компиляторе это проверяла?
![]() type |
Айра |
![]()
Сообщение
#16
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
![]() ![]() p.s. чувствую хватит мне по ночам программки писать.. надо концентрироваться на матане))) Добавлено через 3 мин. проверила сейчас в TPW - выдает ошибку "тип не совместим".. Может что-то с настройками FPC? Сообщение отредактировано: Айра - 17.01.2008 10:48 |
volvo |
![]()
Сообщение
#17
|
Гость ![]() |
Ничего особенного... В режиме {$mode objFPC} это действительно будет работать (то, что ты написала), только это Extended Pascal... В обычном (или Object) Паскале надо делать так, как написано в посте №15.
|
Айра |
![]()
Сообщение
#18
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
![]() |
volvo |
![]()
Сообщение
#19
|
Гость ![]() |
Меню Options -> Compiler -> Syntax -> Compiler mode установить в "Turbo Pascal Compatible"
|
Айра |
![]()
Сообщение
#20
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Пасибо.. поменяла, теперь программка гордо не работает))
А вообще от того "расширенного паскаля" какую выгоду можно было получить? |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 18:20 |