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

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

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

> Текстовые файлы и Turbo Pascal
Katonka
сообщение 17.06.2011 7:48
Сообщение #1





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

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


Дана последовательность, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 прописных латинских букв; между соседними словами - запятая, за последним словом - точка. Напечатать все слова, которые встречаются в последовательности по одному разу.
uses crt;
var s : array [1..30] of String[5];
i,j,n:byte;
c:char;
b:boolean;
begin
ClrScr;
n:=1;
write('Enter string: ');
while (n<30)and(c<>'.') do
begin
c:=readkey;
if c=#27 then halt else
if (c in ['A'..'Z'])and(j<5) then
begin
s[n]:=s[n]+c;
write©;
inc(j);
end else
if (c in [',','.'])and(j>0) then
begin
write©;
inc(n);
j:=0;
end else
if (c='.')and(j=0) then c:=#0 else
end;
writeln;
writeln('Result:');
for i:=1 to n do
begin
b:=true;
for j:=1 to n do
if (i<>j)and(s[i]=s[j])then
begin
b:=false;
break;
end;
if b then writeln(s[i]);
end;
readln;
end.

Нужно в етот код внести добавления, чтобы выполнить задание:

Реализовать ввод из текстового файла и обработку символьных последовательностей состоящих из любых символов. В программе должны быть предусмотрены соответствующие процедуры и функции, корректно обрабатывающие входные данные. Результат должен запоминаться тоже в текстовом файле и в понятном для интерпретации виде.

Заранее большое и человеческое спасибо!

Сообщение отредактировано: Lapp - 17.06.2011 22:30
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
TarasBer
сообщение 17.06.2011 11:13
Сообщение #2


Злостный любитель
*****

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

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


> Нужно в етот код внести добавления, чтобы выполнить задание:

А можно вносить не только добавления, но и удаления?
Первую строчку неплохо бы удалить, например.

Для того, чтобы ввод и вывод делался из текстовых файлов, надо в начале программы (после главного бегина) написать

Assign(input, 'task2.in');
Reset(input);
Assign(output, 'task2.out');
Rewrite(output);

А в конце программы написать

Close(input);
Close(output);

Сообщение отредактировано: TarasBer - 17.06.2011 11:15


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



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