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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2009, 09:39   #1
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
Счастье Паскаль

Программа "Азбука в коробках"

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

Не знаю даже с чего начать, за что браться укажите верный путь пожалуйста.
mistertvister вне форума Ответить с цитированием
Старый 28.11.2009, 10:07   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

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

p.s. а вообще эта задача идеально (ну, кроме того, что находится в текстовом файле) ложится в описание Файловой системы: коробки - это папки (они же директории), буквы - это файлы...

Последний раз редактировалось Serge_Bliznykov; 28.11.2009 в 10:09.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 19.12.2009, 16:26   #3
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
По умолчанию

есть идеи?
mistertvister вне форума Ответить с цитированием
Старый 19.12.2009, 18:20   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

а что, мой предыдущий пост Вы решили просто проигнорировать?...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.12.2009, 13:47   #5
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
По умолчанию

что это значит?

Вся эта система описывается в текстовом файле
mistertvister вне форума Ответить с цитированием
Старый 21.12.2009, 14:47   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
что это значит?
Вся эта система описывается в текстовом файле
Каким образом эта система описывается в текстовом файле? правила описания + пример такого текстового файла есть?...
без этого разговаривать не о чем... если же это есть — публикуйте эту информацию здесь, в теме..

"ну и сразу, чтобы второй раз не вставать" ((с) браток из анекдота):
А что Вы сами уже пытались сделать? И что конкретно не получается?..
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.12.2009, 15:19   #7
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
По умолчанию

и здесь не ясно, каким образом определяется какая коробка в какой лежит...
Alex_FF вне форума Ответить с цитированием
Старый 21.12.2009, 15:32   #8
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
По умолчанию

Program The_alphabet_in_boxes;
uses crt;


var
s: integer;
fi: text ;
r: string;

begin

clrscr;
textcolor(yellow);
writeln(' *********************************** *****************');
writeln(' ******* The alphabet in boxes *******');
writeln(' ******* *******');
writeln(' ******* Version 1.0 *******');
writeln(' *********************************** *****************');


textcolor(red);
writeln(' There is one big box, in latin letter');
writeln(' and boxescan lie, in these boxes letter');
writeln(' and boxes etc. can lie in turn.');
textcolor(yellow);
writeln('*_________________________ ________________*');
writeln('Would press enter what to start the program.');
readln(s);
if s=1 then

assign(fi,'c:\1.txt');
reset(fi);
read(fi,r);
write(r);
и далее


я планировал делать программу как "без конечный" цикл (это как то тупо)

Последний раз редактировалось mistertvister; 21.12.2009 в 15:44.
mistertvister вне форума Ответить с цитированием
Старый 21.12.2009, 15:43   #9
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
По умолчанию

мож есть идеи как лучше зделать? (как никак КУРСОВАЯ)
mistertvister вне форума Ответить с цитированием
Старый 26.12.2009, 18:28   #10
mistertvister
Константин
Пользователь
 
Аватар для mistertvister
 
Регистрация: 11.10.2009
Сообщений: 47
По умолчанию

Program xxx;

const
filename='C:\direct.txt';

procedure proverka(filename2:string);
var f2:text;
Begin
{$I-}
Assign(f2,filename2);
reset(f2);
{$I+}
if ioresult<>0 then Begin writeln('ERROR FILE!!!'); readln; halt; End
else writeln('fail "',filename,'" otkrit');
End;

var
f: Text;
mastext: array [1..100] of string;
masput: array [1..100] of integer;
masprv: array [1..100] of integer;
masstr: array [1..100] of string;
st,ch,s,sr,first,r,first1,first2,na m: string;
tr: boolean;
i,l,n,error,y,z,v,d,sn,k,m,g,h,q: integer;
textf: string;

begin
write('Vvedite put k failu: ');
readln(nam);
proverka(nam);
Assign(f,filename);
Reset(f);
i:=0;
while not eof(f) do begin
readln(f,st);
for l:=1 to length(st) do
Begin
textf:=textf+st[l];
end;
if i=0 then ch:=ch+textf
else mastext[i]:=textf;
i:=i+1;
textf:='';
end;
z:=i;
Close(f);
randomize;
writeln('count elementov: ',ch);
val(ch,n,error);
for l := 1 to n do
begin
randomize;
repeat
i:=random(100);
tr:=false;
for y := 1 to n do
begin
if masput[y]=i then tr:=true;
end;
until tr=false;
masput[l]:=i;
end;
writeln;
writeln('nomera Kubov');
for l := 1 to n do
begin
write(masput[l],' ');
end;
for l := 1 to n do
begin
str(masput[l],sr);
masstr[l]:=sr;
end;
CHDIR ('C:\');
MKDIR(masstr[1]);
first:='C:\'+masstr[1]+'\';
first1:='C:\'+masstr[1]+'\';
k:=0;
g:=0;
l:=1;
m:=0;
{$I-}
while q<n do begin
l:=l+1;
if k<=n then begin
m:=random(2);
if m=1 then begin
MKDIR(first+masstr[l]);q:=q+1; first:=first+masstr[l]+'\';CHDIR(first); first1:=first;
v:=random(z);
for d:=1 to v do begin
str(d,r);
Assign(f,first+masstr[l]+r+'.txt');
Rewrite(f);
Append(f);
sn:=random(z);
writeln(f,mastext[sn]);
Close(f);
end;
end;
if m=2 then
g:=random(4);
if l+g<=n then
for h:=l to l+g do begin MKDIR(first1+masstr[h]);q:=q+1;
for d:=1 to g do begin
str(d,r);
Assign(f,first+masstr[l]+masstr[l]+r+'.txt');
Rewrite(f);
Append(f);
sn:=random(z);
writeln(f,mastext[sn]);
Close(f);
end;
first1:=first;
end;
end;
end;
readln;
end.



Не выводит файлы( . Help!

В текстовом фале лежит вот что C:\direct.txt'
"30
hati ksamapal krug kvadrat stroka chislo dark moon dota pascal delphi"
mistertvister вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль, Борланд Паскаль-в чем разница??? Vremya-Dengy Паскаль, Turbo Pascal, PascalABC.NET 13 31.05.2011 18:23
Паскаль Roll1n Помощь студентам 1 23.11.2009 23:39
Паскаль Psayker Помощь студентам 13 16.05.2009 19:02
Из С++ в Паскаль Jondeer Паскаль, Turbo Pascal, PascalABC.NET 3 10.06.2008 12:55