IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Матрица и массив, Никак не пойму......
fanatik
сообщение 21.10.2006 23:02
Сообщение #1





Группа: Пользователи
Сообщений: 2
Пол: Мужской
Реальное имя: Андрей

Репутация: -  0  +


Кто-нить помогите решить задачку. Текст следующий: Даны целочисленная матрица X[1:n,1:m] и целочисленный массив Z[1:r]. Обнулить элементы матрицы X, которых нет в массиве Z и запомнить обнулённые элементы. Буду очень благодарен за помощь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 22.10.2006 11:04
Сообщение #2


Гость






Bokul,
вот такой код получился (код тестовый, поэтому в нем присутствуют директивы условной компиляции {$ifdef}...{$else}...{$endif}, за объяснениями - по ссылке)...

Прикрепленный файл  speed_test.pas ( 3.37 килобайт ) Кол-во скачиваний: 344


Чтобы прогнать тестовое значение, и посморреть правильность работы алгоритма достаточно определить условный символ TEST_SMALL (добавлением строки {$define TEST_SMALL} в начало программы, сейчас она уже добавлена), при этом на печать будет выведена и исходная матрица, и массив, и результат, т.е. все позиции элементов в матрице. Для тестирования на скорость (при больших массивах) эту строчку надо либо удалить, либо между символами { и $ добавить пробел (тогда эта строка превратится в комментарий), и перекомпилировать программу (!!!), и программа будет тестироваться с большими значениями, БЕЗ вывода на печать, только сам процесс поиска. То же самое касается и автора - с определенным __BOKUL будет выполняться алгоритм Bokul-а, иначе - мой...

Вот что выдала программа у меня:
Цитата(Console)
Volvo:
391

Bokul:
11356


(кстати, Bokul, при TEST_SMALL внимательно посмотри на результаты работы своего алгоритма. Есть подозрение, что он находит элементы неправильно, ибо на показанных местах в матрице стоят также и НЕ присутствующие в массиве элементы)...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
fanatik   Матрица и массив   21.10.2006 23:02
мисс_граффити   что значит запомнить?   21.10.2006 23:05
SuperMozg   Если я правильно понял, то надо запомнить индексы ...   22.10.2006 0:00
Bokul   uses crt; const n=10; m=10; r=10; t...   22.10.2006 0:13
volvo   Ребята, это все прекрасно, конечно, но решение ...   22.10.2006 0:22
SuperMozg   Заметьте, о величинах M, N и R ничего не сказано...   22.10.2006 0:39
Bokul   SuperMozg, что-то мне кажется, что твоя прога не с...   22.10.2006 0:43
volvo   Ты на чем компилировал? FPC? На TP будет больше......   22.10.2006 0:50
Bokul   FPC   22.10.2006 0:52
volvo   Bokul, не стал я ждать до завтра, сделал сегодня :...   22.10.2006 2:08
Bokul   Впечетляет. volvo, кодом поделишься?   22.10.2006 2:12
volvo   Поделюсь, только причешу малость ( может, еще быст...   22.10.2006 2:24
volvo   Bokul, вот такой код получился (код тестовый, поэ...   22.10.2006 11:04
fanatik   Ребята, спасибо! Вы мне очень помогли :good: ...   22.10.2006 11:57
Bokul   volvo, начал разбираться. Вот, что-то я не понимаю...   22.10.2006 19:04
volvo   :blink: Ну, да... Я почему-то пропустил слово ...   22.10.2006 19:21


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 12.08.2025 10:26
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"