UNIT expected |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
UNIT expected |
Mr. Anderson |
5.03.2007 23:18
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
Установлена операционная система Windows XP PRO.
При проверке программы на Borland Pascal 7.0 выдаёт ошибку UNIT expected. Курсор мигает в начале программы. Программа взята с Построение любого графика Думаю, это как то связано с Graph. программы с использованием Crt работают нормально.
Помогите исправить ошибку. Сообщение отредактировано: Mr. Anderson - 8.03.2007 14:24 -------------------- Каждое начало имеет свой конец
|
volvo |
5.03.2007 23:27
Сообщение
#2
|
Гость |
Во-первых, почему здесь? Есть же раздел "Задачи"? А во-вторых, твоя программа у меня компилируется и под BP7 и под TP7 совершенно нормально - что-то у тебя с настройками среды програмирования...
Переезжаем в Задачи... |
volvo |
6.03.2007 0:01
Сообщение
#3
|
Гость |
Стоп... Вопрос на засыпку: Как называется файл, в котором находится эта программа?
|
Mr. Anderson |
8.03.2007 12:17
Сообщение
#4
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
файл называется grafik.pas . Находится C:\BP\BIN
Сначала скопировал на BPW, сохранил как graf. Потом открыл в BP. добавил в начале program grafik; Нажал run >> UNIT expected. Курсор мигает в начале. Потом напечатал в вручную в BP File >> Change directory >> C:\BP\BIN Может здесь нужно что-то поменять? Я знаю, что программа правильна, всё дело в настройках... -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 12:57
Сообщение
#5
|
Гость |
Mr. Anderson, ты опять даешь противоречивую информацию... Тебя спросили, как файл называется, ты начинаешь юлить:
Цитата файл называется grafik.pas , однако:Цитата Сначала скопировал на BPW, сохранил как graf Так вот учти, если выяснится, что ты сохранил НЕ как graf, а как GRAPH (чувствуешь разницу, да?) то тебе никто не поможет решить твою проблему, ибо ты в программе делаешь Uses Graph, следовательно, опять же начинает компилироваться ТВОЙ ЖЕ файл, и что? Первое слово, которое компилятор ждет в нем - Unit, у тебя его нет... Ошибка...Переименуй файл в 1.pas и попробуй скомпилировать !!! |
Mr. Anderson |
8.03.2007 15:04
Сообщение
#6
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
Да, выяснилось ... сохранил как graph.pas свою программу (c другой функцией, другим диапазоном...) до того, как проверял программу из форума...
Удалил этот файл (graph.pas), т.к. по-прежнему выдавало ошибку в программе ( уже 1.PAS) . Теперь новая ошибка. Error 15: File not found (GRAPH.TPU). Курсор мигает на ; в строке Uses Graph, crt; Этот файл GRAPH.TPU, однако, сейчас после удаления graph.pas , находится по-прежнему в C:\BP\UNITS (он не удалён). Кажется, прийдётся переустанавливать Паскаль... ??? Хотя вряд ли поможет... Сообщение отредактировано: Mr. Anderson - 8.03.2007 15:41 -------------------- Каждое начало имеет свой конец
|
compiler |
8.03.2007 15:33
Сообщение
#7
|
Человек Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: 3 |
по моему эта программа для FP...
-------------------- Спасибо!
Удачи! |
Mr. Anderson |
8.03.2007 15:36
Сообщение
#8
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
Пока мы сейчас проходим Паскаль 7.0 ( с сентября прошлого года)
Сообщение отредактировано: Mr. Anderson - 8.03.2007 15:37 -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 15:38
Сообщение
#9
|
Гость |
Один ответ на 2 предыдущих поста: "Ничего подобного"...
Для compiler: эта программа - для любого компилятора Паскаля, в том числе и для FP... Для Mr. Anderson: Файл GRAPH.TPU должен присутствововать в текущей папке, или в одной из папок, перечисленных в Options -> Directories -> Unit Directories ... |
compiler |
8.03.2007 15:43
Сообщение
#10
|
Человек Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: 3 |
Для compiler: эта программа - для любого компилятора Паскаля, в том числе и для FP... да тут я ошибся... у меня и на FP компилируется и на TP... -------------------- Спасибо!
Удачи! |
Mr. Anderson |
8.03.2007 16:11
Сообщение
#11
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
Спасибо. Осталось ещё немного:
После исправлений в unit directories (вместо D:\BP\UNITS C:\BP\UNITS, у меня тот же Паскаль установлен и на диске D) нажимаю на >> Run, экран очень быстро показывает чёрный экран (даже не видно график) и мгновенно закрывается, пробовал в конце перед end. поставить readln; ничего не изменилось... Сообщение отредактировано: Mr. Anderson - 8.03.2007 16:15 -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 16:18
Сообщение
#12
|
Гость |
ReadLn надо ставить НЕ перед End. , а перед CloseGraph... Это во-первых... А во-вторых: уверен, что граф. режим успешно инициализировался? Я бы все-таки это проверял:
...Файл EGAVGA.BGI в текущей папке присутствует? |
compiler |
8.03.2007 16:54
Сообщение
#13
|
Человек Группа: Пользователи Сообщений: 1 050 Пол: Мужской Реальное имя: Станислав Репутация: 3 |
да тут я ошибся... дело в том что у меня вместо grDriver, grMode: integer;стоит строчка grDriver, grMode: smallint; какая разница или что такое smallint? Сообщение отредактировано: compiler - 8.03.2007 16:55 -------------------- Спасибо!
Удачи! |
Mr. Anderson |
8.03.2007 17:22
Сообщение
#14
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
EVANGA.BGI присутствует ( C:\BP\BGI ).
Сначала ставил просто перед closegraph; Скомпилировал >> тот же быстро исчезающий чёрный экран. Потом ставил ErrCode:=GraphResult; if ErrCode <> grOk then begin writeln('Oshibka: ', GraphErrorMsg(ErrCode)); readln; halt(100); end; как показано ниже. { Error 3: Unknown identifier. {курсор на ErrorCode ErrCode :=GraphResult; } } program grafika; {$N+} {$E+} Uses Graph,crt; const { OPTIONS } shag=0.0001; lgr=-50; pgr=50; zcrtX=320; zcrtY=240; mtrX=10; mtrY=10; colorG=15; colorOXY=4; OXYminX=-200; OXYmaxX=200; OXYminY=-200; OXYmaxY=200; Var grDriver:integer; grMode:integer; x,y:real;{extended;} i:integer; Begin grDriver:=Detect; InitGraph(grDriver, grMode, ''); ErrCode:=GraphResult; if ErrCode <> grOk then begin writeln('Oshibka: ', GraphErrorMsg(ErrCode)); readln; halt(100); end; for i:=OXYminX to OXYmaxX do putpixel(zcrtX+i,zcrtY,colorOXY); for i:=OXYminY to OXYmaxY do putpixel(zcrtX,zcrtY-i,colorOXY); x:=lgr; while x<=pgr do begin { readln(x);} {***} if x<>2 then begin y:=abs(x/(x-2))-1; {***} { writeln(y:1:8);} putpixel(zcrtX+trunc(x*mtrX),zcrtY-trunc(y*mtrY),colorg) end; x:=x+shag; end; readkey; readln; closegraph; end. Сообщение отредактировано: Mr. Anderson - 8.03.2007 18:09 -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 17:42
Сообщение
#15
|
Гость |
Добавить:
|
Mr. Anderson |
8.03.2007 18:29
Сообщение
#16
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
BGI Error: Graphics not initialized (use InitGraph)
....................................................................... (повторяется 44-45 раз ) Oshibka: Device driver file not found (EGAVGA.BGI) Проверил, EGAVGA.BGI на месте в C:\BP\BGI Unit directories C:\BP\UNITS; Resource directories C:\BP\UNITS; Change Directory C:\BP\BIN GRAPH.TPU в C:\BP\UNITS Также исправил, где надо, строчные буквы на заглавные для соответствия (oxy >> OXY, y>>Y , кроме, конечно переменных x, y. Сообщение отредактировано: Mr. Anderson - 8.03.2007 18:46 Прикрепленные файлы 1.PAS ( 891 байт ) Кол-во скачиваний: 267 -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 18:47
Сообщение
#17
|
Гость |
Цитата Проверил, EGAVGA.BGI на месте в C:\BP\BGI Неправильный вывод... ЭТОТ файл должен быть рядом с EXE, в текущей папке !Добавлено через 2 мин. Цитата Также исправил, где надо, строчные буквы на заглавные для соответствия А вот это совсем лишнее... для Паскаля нет разницы, это NON-case-sensitive язык |
Mr. Anderson |
8.03.2007 19:17
Сообщение
#18
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
теперь файл EGAVGA.BGI в папке BIN.
компилируется Только оси без стрелок и обозначений (x, y, 0). Вопрос: нужно ли остальные файлы BGI скопировать в BIN (так, если будут другие программы на графику)? Сообщение отредактировано: Mr. Anderson - 8.03.2007 19:25 -------------------- Каждое начало имеет свой конец
|
volvo |
8.03.2007 19:51
Сообщение
#19
|
Гость |
Цитата нужно ли остальные файлы BGI скопировать в BIN Вообще-то я бы крайне не рекомендовал сбрасывать все свои программы в папку \BIN... Это все-таки папка для средства разработки... Создал бы свою папку для программ, и работал бы с ней...Это первое... Второе - зачем тебе другие BGI? Ты что, собрался делать программу, которая будет работать с любыми драйверами? Сомневаюсь... Ну, и третье: лучше всего (если ты уже занялся разработкой графических программ), написать вот такой модуль: Unit BGI; , откомпилировать его один раз, а потом просто использовать в программе, не заботясь о присутствии BGI и CHR файлов в текущей папке... (о том, как преобразовать BGI/CHR в OBJ - читай здесь: Директивы компилятора - про директиву $L ) |
Mr. Anderson |
8.03.2007 19:58
Сообщение
#20
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: Александр Репутация: 0 |
Спасибо, попробую. А как поставить стрелки и обозначения? я не нашёл по поиску.
Сообщение отредактировано: Mr. Anderson - 8.03.2007 20:31 -------------------- Каждое начало имеет свой конец
|
Текстовая версия | 19.10.2024 18:42 |