Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2009, 19:46   #1
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию указать путь к файлу

подскажите пожалуйста, как правильно указывать путь к файлу.

вот кусок программы:
procedure M1(var M:array of string; var i:integer);
var
s,pr:string;
ff:text;
begin
writeln('Введите путь к файлу MENU.DAT');
readln(s);
assign(ff,s);
reset(ff);
i:=1;
while not eof(ff) do
begin
readln(ff,pr);
M[i]:=pr;
i:=i+1;
end;
i:=i-1;
writeln('Всего пунктов меню ',i);
close(ff);
end;

не могу разобраться что не так
andreww вне форума Ответить с цитированием
Старый 26.05.2009, 19:56   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Ну, вроде, все так. А вы что вводите?
Нужно вводить имя файла (если он в директории с программой) или полный путь.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 26.05.2009, 20:01   #3
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию

ну вот в том то и дело что все вроде бы так! выходит с exitcodом пробовал по разному путь вводить,менял место файла. мне все таки кажется что чето в коде напутано: пробовал сделать так

begin
assign(ff,'MENU.txt');
reset(ff);
i:=1;
все равно ошибка
andreww вне форума Ответить с цитированием
Старый 26.05.2009, 20:03   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от andreww
мне все таки кажется что чето в коде напутано
Код проверил. Все открывается и считывается.
Как вы запускаете программу? Через среду?
Попробуйте скомпилировать и запустить так.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 26.05.2009, 20:06   #5
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию

ctrl f9. а как надо? через командную строку?
andreww вне форума Ответить с цитированием
Старый 26.05.2009, 20:07   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от andreww
ctrl f9. а как надо? через командную строку?
Да. Попробуйте запустить программу отдельно. Бывает такой глюк.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 26.05.2009, 20:13   #7
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию

через командную строку не получается. а так exeшник запускаю, вроде работает ,но не вся программа.
andreww вне форума Ответить с цитированием
Старый 26.05.2009, 20:16   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от andreww
через командную строку не получается
Что значит "не получается"?
Цитата:
Сообщение от andreww
а так exeшник запускаю, вроде работает ,но не вся программа.
Но файл-то читается?
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 26.05.2009, 20:19   #9
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию

когда отдельно exe запускаю, а потом жму alt f5, то выдается ответ.
еще такой вопрос: почему она на этом останавливается?
andreww вне форума Ответить с цитированием
Старый 26.05.2009, 20:21   #10
andreww
Пользователь
 
Регистрация: 26.05.2009
Сообщений: 20
По умолчанию

program kurs;
uses crt, graph;
var
s:string;
M:array[1..10] of string;
i:integer;
ch:char;

procedure M1(var M:array of string; var i:integer);
var
s,pr:string;
ff:text;
begin
writeln('Введите путь к файлу MENU.DAT');
readln(s);
assign(ff,s);
reset(ff);
i:=1;
while not eof(ff) do
begin
readln(ff,pr);
M[i]:=pr;
i:=i+1;
end;
i:=i-1;
writeln('Всего пунктов меню ',i);
close(ff);
end;

procedure M2(M:array of string; i:integer);
var
n,x,y,j,gd,gm:integer;
a:real;
s:string;
begin
initgraph(gd,gm,'');
gd:=detect;
if graphresult <>grok then
halt(1);
cleardevice;
repeat
n:=0;
repeat
clearviewport;
settextstyle(1,0,1);
setcolor(4);
outtextxy(20,20,'VIXOD-ESC');
for j:=1 to i do
begin
setcolor(1);
rectangle(0,getmaxy-50*j, 200,getmaxy-50*(j-1));
settextstyle(4,0,2);
setcolor(2);
if length(M[j]) > 11 then M[j]:=copy(M[j],1,11);
outtextxy(10,getmaxy-50*j+10, M[j]);
end;
setcolor(4);
Line(210,655-n, 225,640-n);
Line(225,640-n, 225,670-n);
Line(225,670-n, 210,655-n);
Line(215,655-n, 225,645-n);
Line(215,655-n, 225,665-n);
Line(220,655-n, 225,655-n);
ch:=readkey;
if ch=#72 then n:=n+50;
if ch=#80 then n:=n-50;
if n=i*50 then n:=0;
if n=-50 then n:=(i-1)*50;
if ch=#27 then closegraph;
until ch=#13;
a:=n/50+1;
int(a);
str(a,s);
setcolor(5);
outtextxy(300,300, 'Funktsia nomer');
outtextxy(540,300,s[2]);
ch:=readkey;
until ch=#27;
closegraph;
end;

begin
clrscr;
M1(M,i);
M2(M,i);
end.

вот полный текст: программа формирует меню и работает с ним в графическом режиме. протестируйте пожалуйста!
andreww вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Указать путь в webbrouser oduvan4ik Общие вопросы Delphi 5 03.03.2009 08:03
Как указать путь к шаблону excel ??? antoni БД в Delphi 4 04.11.2008 11:22
Путь к файлу Баламут Win Api 12 14.05.2008 13:27
Проблема с FindFirst, как указать меняющийся путь? _SacreD_ Общие вопросы Delphi 12 26.12.2007 16:14
Как указать путь компилируемуму exe файлу shurik_7866 Общие вопросы Delphi 2 18.07.2007 23:24