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

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

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

 
 Ответить  Открыть новую тему 
> Переделка, файловый тип
Amster
сообщение 24.03.2008 15:14
Сообщение #1


Гость






Помогите пожалуйста......

Значит изначально условие задачи , которую я делал пол - года назад заключалось в следующем:
В переменную типа String заносился текст , нужно было вывести символы встречающиеся только один раз и исходный текст....

program lab5
uses crt, printer
var
s: string;
tx: string;
i: integer;
txt: string;
k: boolean;
begin
clrscr;
writeln;
repeat
writeln;
readln(s);
if length(s)=0 then
begin
writeln('’ҐЄбв ­Ґ ўўҐ¤Ґ­, Ї®ўв®аЁвҐ ўў®¤');continue;
end
else
tx:='';
txt:='';

for i:=1 to length(s) do
begin
if pos(s[i], txt)=0 then
begin
tx:=tx+s[i];
txt:=txt+s[i];
end
else if pos(s[i], tx)>0 then begin
delete(tx, pos(s[i], tx), 1);
end;
end;
writeln('?б室­л© ⥪бв:');
writeln(s);
writeln;
if length(tx)=0 then
writeln('ЌҐв бЁ¬ў®«®ў, ўбваҐз ойЁебп ®¤Ё­ а §')
else
begin
writeln('‘Ё¬ў®«л, ўбваҐз ойЁҐбп ®¤Ё­ а §:');
for i:=1 to length(tx) do
write(tx[i],' ');
end;
writeln('¤«п ўл室  Ё§ жЁЄ«  ­ ¦¬ЁвҐ ESC, ¤«п Їа®¤®«¦Ґ­Ёп - «оЎго Є« ўЁиг.');
until readkey=#27;
end.


Сейчас нужно переделать программу.... условие то же ....
но текст находится в типизированном файле.....
Незнаю что делать....

program lab5;
uses crt;
var
s: file of string;
tx: string;
i: integer;
txt: string;
k: boolean;
begin
assign(s,'z:\13.txt');
reset(s);
clrscr;
writeln('‡¤а ўбвўг©вҐ! ќв® Їа®Ја ¬¬ , ўлў®¤  бЁ¬ў®«®ў, ўбваҐз ойЁебп ў ⥪б⥠®¤­®Єа в­®.');
repeat
tx:='';
txt:='';

while not eof(s) do
begin
if pos(s,txt)=0 then
begin
tx:=tx+s;
txt:=txt+s;
end
else if pos(s,tx)>0 then begin
delete(tx, pos(s, tx), 1);
end;
end;
writeln('?б室­л© ⥪бв:');
writeln(s);
writeln;
if length(tx)=0 then
writeln
else
begin
writeln('‘Ё¬ў®«л, ўбваҐз ойЁҐбп ®¤Ё­ а §:');
for i:=1 to length(tx) do
write(tx[i],' ');
end;
writeln;
writeln('¤«п ўл室  Ё§ жЁЄ«  ­ ¦¬ЁвҐ ESC, ¤«п Їа®¤®«¦Ґ­Ёп - «оЎго Є« ўЁиг.');
until readkey=#27;
end.

 К началу страницы 
+ Ответить 
Zzzz...
сообщение 24.03.2008 17:18
Сообщение #2


///
**

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

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


считываешь пока нету конца файла строку, а сколько символов во входномфайле символов?



....и кстати файл после использования закрывают

Сообщение отредактировано: Zzzz... - 24.03.2008 17:20
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 24.03.2008 17:29
Сообщение #3


Гость






Цитата(Zzzz... @ 24.03.2008 17:18) *

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


Да я в курсе что закрывают...это очень сырой вариант.....
Текст в принципе любой...минимум 5 строк
 К началу страницы 
+ Ответить 
Zzzz...
сообщение 24.03.2008 17:42
Сообщение #4


///
**

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

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


тогда за место строки делаем массив типа чар
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 24.03.2008 19:43
Сообщение #5


Гость






Цитата(Zzzz... @ 24.03.2008 17:42) *

тогда за место строки делаем массив типа чар



Ага.....мысль дельная
 К началу страницы 
+ Ответить 
Гость
сообщение 25.03.2008 18:16
Сообщение #6


Гость






Цитата(Гость @ 24.03.2008 19:43) *

Ага.....мысль дельная


А вот что с основным телом делать??? всмысле конструкцию с pos....
 К началу страницы 
+ Ответить 

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

 



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