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

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

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

 
Closed Topic Открыть новую тему 
> Задача на ФАЙЛЫ, хелп ми)
сообщение
Сообщение #1


Пионер
**

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

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


компонентами текстового файла являются символ, образующие наборы строк.
Организовать следующие процедуры работы с файлом:
-добавление информации в фаил
-просмотр всего файла
-СОРТИРОВКА СТРОК ФАЙЛА В АЛФАВИТНОМ ПОРЯДКЕ {самое важно и на мой взгляд сложно, как реализовать это?}
-очистка файла
Действия выполняются в произвольном порядке, по выбору пользователя.

помогите пожалуйста с рещение задачи (особено с 3 пунктом)! зарание большое спасибО!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Послушай, Ostin !!!

Ты что, издеваешься? Сколько можно задавать вопросы, которые уже обсосаны просто ДО ПРЕДЕЛА на этом форуме? Ну КАКАЯ может быть сложность с добавлением информации в ТЕКСТОВЫЙ файл (Если ты, конечно, соизволил прочесть тему "FAQ: Файлы")? А если не соизволил - то подними глаза наверх, и прочти, НАКОНЕЦ, что написано в рамочке!

Что может быть непонятно в просмотре текстового же файла? Ты хотя бы пытался?

Что с сортировкой? Тема "FAQ: Методы сортировок" тебе что, недоступна? Или "не царское это дело"? Чего читать самому, когда тут могут все готовое выложить?

(только вот не надо говорить, что все, что в FAQ-е сортирует только Integer-ы, ладно? Меняешь тип и работаешь со строками...)

P.S.
Цитата
компонентами текстового файла являются символ, образующие наборы строк.
Это у тебя что, бред? Какие компоненты в текстовом файле? Это, позволь тебе заметить, НЕ типизированный файл, у которого могут быть какие-то компоненты. Текстовый файл он и есть текстовый, и не надо его мешать с File Of Char...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Пионер
**

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

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


а дайте мне пожалуйста ссылку!) а то эти руки)))) замучили меня!))))
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

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


FAQ: Файлы
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Perl. Just code it!
******

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

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


Цитата
-СОРТИРОВКА СТРОК ФАЙЛА В АЛФАВИТНОМ ПОРЯДКЕ {самое важно и на мой взгляд сложно, как



читаешь все строки из файла в массив, соритруешь массив, перезаписвыаешь обратно в файл.
попробуй действительно почитать FAQ и восопльзоваться поиском.

ps флуд удален.


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Пионер
**

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

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


uses crt;
var
f,f1:text;
ch:char;
st:array [1..15] of string;
tr,kl:string;
min,max,k,a,i,p,b:byte;
{$i-}

procedure okno;
begin
textbackground(0);
clrscr;
textbackground(1);
window(13,6,75,25);
clrscr;
end;

procedure save;
begin
write('vvedite imia faila:');
readln(asd);
assign(f, asd);
rewrite(f);
if ioresult<>0 then
write('fail ne naiden')
else begin
for p:=1 to i do
begin
writeln(f, st[p]);
end;
close(F);
write('fail uspeshno sohranen');
end;
readln;
end;

procedure ydal;
begin
write('vvedite imia faila:');
readln(asd);
write('udalit fail',asd,'? (Y)\N');
ch:=readkey;
if (ch='y')or(ch='Y') then
begin
Assign(f, asd);
reset (f);
if ioresult<>0 then
begin
clrscr;
write('fail ne naiden');
end
else begin close(f);
erase(f);
clrscr;textcolor(15);
write('fail udalen!!!');
end;
end;
readln;
end;

procedure dobav;
begin
if i<=15 then
begin
okno;
write('vvedite imia faila:');
readln(asd);
textbackground(1);
window(13,6,75,20);
clrscr;
i:=i+1;
readln(st[i]);
Assign(f, 'q');
append(f);
if ioresult<>0 then
begin okno;
write('fail ne naiden');
end
else begin
writeln(f, st[i]);
close(F);
okno;
write('fail uspeshno sohranen');
end;
readln;
end;
end;

procedure open;
begin
okno;
write('vvedite imia faila:');
readln(asd);
assign(f, 'q');
reset(f);
if ioresult<>0 then
begin
write('fail ne naiden');
end;
textbackground(1);
window(13,6,75,20);
clrscr;
for p:= 1 to i do
begin
readln(f,st[p]);
writeln(st[p],' ');
end;
readln;
close(f);
end;

procedure as;
begin
okno;
write('vvedite imia faila:');
readln(asd);
assign(f, asd);
append(f);
assign(f1,'w' );
rewrite(f1);
if ioresult<>0 then
begin
write('fail ne naiden');
end;
textbackground(1);
window(13,6,75,20);
clrscr;
writeln('stroka dlia ydalenia');
max:=i;
readln(p);
for i:=1 to max do
begin
if i<>p then
writeln(f1,st[i]);
end;
close(f);
close(f1);
asd:='w';
assign(f,asd);
reset(f);
p:=max-1;
for i:= 1 to p do
begin
readln(f,st[i]);
writeln(st[i],' ');
end;
readln;
close(f);
end;


procedure stroka;
begin
okno;
write('vvedite imia faila:');
readln(asd);
assign(f, asd);
reset(f);
if ioresult<>0 then
begin
write('fail ne naiden');
end;
for p:=1 to i do
begin
a:=length(st[p]);
if p=1 then
begin
tr:=st[p];
kl:=st[p];
min:=a;
max:=a;
end;
if a>=max then
begin
max:=a;
tr:=st[p];
end;
if a<=min then
begin
min:=a;
kl:=st[p];
end;
end;
writeln('samaia dlinnaia stroka ',tr);
writeln('samaia korotkaia stroka ',kl);
readln;
end;

begin
okno;
write('vvedite stroku ');
i:=1;
readln(st[i]);
save;
repeat
okno;
ch:=readkey;
if ch=#49 then
open;
if ch=#50 then
dobav;
if ch=#51 then
ydal;
if ch=#52 then
stroka;
if ch=#53 then
as;
until ch=#27;
end.

вот что вышло почти моими усилиями))) пот имено тот 3 пункт ну не как он не катит((((( помогите а я вот тут не много догнать в этом тектсте не могу где редактирование файла!? что-то не работает((( помогите пиз!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Пионер
**

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

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


а еще не большой вопрос не в тему где можно найти список аски таблицы (коды клавиш) и еще нам препод рассказал история как при атестации института раз в 4 года при проверке астаточных знаний студент с 5 курса назвал таблица ASCII аск2 таблица



все нашол!) smile.gif

СОРТИРОВКА СТРОК ФАЙЛА В АЛФАВИТНОМ ПОРЯДКЕ (помогите мне с этим пожалуйста, умоляю просто)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Пионер
**

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

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


народ! ну пожалуйста помогите мне с этой сортировкой!!! пиззззззззззззззз!!!!!!!!!!!!!!!!!!!!!!!!!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гуру
*****

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

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


Не флуди mad.gif , этим ты ничего хорошого не добьёшься. no1.gif

Цитата
СОРТИРОВКА СТРОК ФАЙЛА В АЛФАВИТНОМ ПОРЯДКЕ {самое важно и на мой взгляд сложно, как реализовать это?}


Читаешь файл в одномерный массив строк, сортируешь его любым методом сортировок FAQ , при етом надо использовать функцию сравнения строк,
(она снизу wink.gif ), и наконец, перезаписываешь файл и записываеш в него массив. wink.gif yes2.gif


Функция возвращает
1 - если первая строка должна стоять перед второй.
2 - если строки одинаковые.
3 - если первая строка должна стоять после второй.
Код

function alp(s1,s2:string):byte;
var i,size1,size2,t1,t2:byte;
begin
size1:=length(s1);
size2:=length(s2);
for i:=1 to size1 do
    begin
         t1:=ord(s1[i]);
         t2:=ord(s2[i]);
         if t1 <> t2 then
            if t1 < t2 then
               begin
                    alp:=1;
                    exit;
               end
                  else
                      begin
                           alp:=3;
                           exit;
                      end;
         if (i=size2) and (i<>size1) then
            begin
                 alp:=3;
                 exit;
            end;
    end;
alp:=2;
end;



Сообщение отредактировано: Bokul -


--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Помогите решить задачу на Паскале. Условие: в текстовом фале есть несколько строк подобн
:
ac11de
ddf50f5
fd1d4g7


ответ должен быть записан в тот же файл в виде acde - 11
ddff - 55
fddg - 12;
короче буквы сначало написать а потом сумму чисел встречающихся в строке.


Помогите решить plz
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Уникум
*******

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

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


А с каких пор 1+1=11 ? smile.gif

 ! 
Тему закрываю - хватит задавать вопросы в чужие темы. Открывай свою.



--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 




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