user <назв модуля>;
а дальше то как ? напишите пожалуйста, в faq, статьях и уроках вроде нету если пропустил ткните носом
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
написание своего модуля |
SeRGuSii |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Забыл как описывать свои модули, помню, что вроде надо так
Код user <назв модуля>; а дальше то как ? напишите пожалуйста, в faq, статьях и уроках вроде нету если пропустил ткните носом |
volvo |
Сообщение
#2
|
Гость |
unit <имя_модуля>; |
klem4 |
Сообщение
#3
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
И еще не забудь, что имя файла, в котором находится модуль, должно совпадать с именем в программе(то что после слова
unit <тут>;) Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
SeRGuSii |
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
примного благодарен
|
SeRGuSii |
Сообщение
#5
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Что нужно сделать, чтобы заработал модуль GRAPH, а то паскаль выдает ошибку:
Хотя в папке units он присутствует. |
klem4 |
Сообщение
#6
|
Perl. Just code it! Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: 44 |
try:
зайди в Option->Directories-> и пропиши пути к папке units в там где unit directories Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
volvo |
Сообщение
#7
|
Гость |
:yes: Или брось Graph.TPU в текущую папку (я всегда так делаю...)
|
SeRGuSii |
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
to klem4, делал не помогло.
volvo спасибо, теперь работает. ---------- Посмотрите задачку что-то упустил в создании модуля, не инициализируется. Модуль включает подпрограмму обработки массива: ввод массива, вывод массива в графическом режиме, проверка упоряд на возрастание, на убывание, сортировка массива, поиск заданного элемента.
и какбы по красивее её вывести в графическом режиме |
volvo |
Сообщение
#9
|
Гость |
Смотри, что происходит:
1. Ты определил реализацию функций и процедур в модуле, но не описАл их как внешние, то есть вызывающая программа о них не знает... 2. Процедура sort описана после завершающей точки - это запрещено. Компилятор просто не знает о ее существовании... ( плюс к этому в sort была небольшая ошибка - не описана переменная i ) 3. Более опасное: в модуле у тебя определен тип Type ты попытался описАть переменную такого же типа в основной программе и передать ее как параметр в процедуру... Нет !!! Нельзя этого делать. По правилу совместимости типов эти 2 типа будут считаться разными, и естественно вылетит ошибка. Нужно использовать ранее определенный в модуле тип... Вот правильный вариант 2-х файлов (работоспособность не проверял, но компиляцию проходят ) obrmasiv.pas unit obrmasiv; Файл main.pas uses obrmasiv; Кстати, зачем тебе Graph, он же нигде не используется? Или ты хочешь перенести это в графику? Я бы не советовал, смысл какой? Разными цветами можно и в текстовом режиме вывести... |
SeRGuSii |
Сообщение
#10
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
volvo, не всеравно не стартует, а graph был нужен чтобы красиво вывести массив
|
volvo |
Сообщение
#11
|
Гость |
Распакуй архив, открой main.pas и в меню компилятора выбери НЕ Compile (Alt+F9) а Make (F9)... Я программы без проверки не выкладываю... Раз я сказал, что компилируется, значит она компилируется и запускается... (По крайней мере первый шаг в пошаговом режиме делается)...
Прикрепленные файлы main.rar ( 596 байт ) Кол-во скачиваний: 168 |
SeRGuSii |
Сообщение
#12
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
Да ты прав она запускается, это я с путями намудрил. Правда еще проблемы остались массив вводит, но элементы не запоминает, выводит нулевой массив
|
volvo |
Сообщение
#13
|
Гость |
Цитата(SeRGuSii @ 1.06.05 11:59) еще проблемы остались массив вводит, но элементы не запоминает, выводит нулевой массив Правильно... У тебя в модуле процедура ввода массива как определена? Вот так: procedure inputmas (a:mass); а это значит что результаты работы процедуры в вызывающую программу не вернутся... Поменяй на procedure inputmas (var a:mass); (только не забудь, и в секции Interface и в Implementation) То же самое - в сортировке (ты там вообще чего-то намудрил, я поменял то что было на простейший алгоритм "пузырька"): procedure sort(var a:mass); не забудь про Var... |
SeRGuSii |
Сообщение
#14
|
Новичок Группа: Пользователи Сообщений: 14 Пол: Мужской Репутация: 0 |
ок, еще раз СПАСИБО !
|
Текстовая версия | 16.05.2024 12:10 |