Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
AndrewTrey
0 / 0 / 0
Регистрация: 17.07.2011
Сообщений: 25
1

Файлы. Каждый заданный символ заменить на заданную последовательность символов

15.05.2012, 17:08. Просмотров 599. Ответов 2
Метки нет (Все метки)

1. Дан символьный файл f. Написать программу, которая каждый встречающийся в файле заданный символ заменяет на заданную последовательность символов. Результат записать в файл g.

2. Дан символьный файл f. Написать программу, которая находит самое длинное слово, встречающееся в файле.

Добавлено через 4 часа 6 минут
Есть рабочий код, но только не с типизироваными файлами.
исправьте его под мою задачу.

Основная часть.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
uses crt, xe;
 
begin
 
 
clrscr;
write('Введите текст: ');readln(s);
write('Введите заменяемый символ: ');readln(c);
write('заменяемая часть: ');readln(s1);
cicle(s);
write('Итог: ',s);
end.
Модуль
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
unit pff;
interface
       var s,s1:string;
    c:char;
 
    procedure cicle(var s:string);
 
implementation
    procedure cicle(var s:string);
      var i:integer;
    begin
    i:=1;
    while i<= length(s) do
                        begin
                        
                                if copy(s,i,1)=c then
                                             begin
                                             delete(s,i,1);
                                             insert(s1,s,i);
                                             end;
                                             inc(i);
                          end;
 
    end;
 
begin
 
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2012, 17:08
Ответы с готовыми решениями:

заменить во всем исходном массиве символьных строк заданную последовательность символов
заменить во всем исходном массиве символьных строк заданную последовательность...

Дан текст, заменить все вхождения заданного слога (сочетания 2-х символов) на заданный символ
Дан текст, заменить все вхождения заданного слога (сочетания 2-х символов) на...

Заменить в строке последовательность символов на один символ
Добрый день. Помогите пожалуйста с заданием. :) Заранее извините если не в ту...

Каждый символ ? удвоить. Каждый символ, стоящий перед !, заменить символом, введенным с клавиатуры
Каждый символ ? удвоить. Каждый символ, стоящий перед !, заменить...

Каждый символ ? удвоить. Каждый символ, стоящий перед !, заменить символом, введенным с клавиатуры.
Работа с символьными данными. 15. Каждый символ ? удвоить. Каждый символ,...

2
КонецСвета
Почетный модератор
7929 / 3900 / 2464
Регистрация: 30.10.2011
Сообщений: 5,379
15.05.2012, 21:24 2
Цитата Сообщение от AndrewTrey Посмотреть сообщение
1. Дан символьный файл f. Написать программу, которая каждый встречающийся в файле заданный символ заменяет на заданную последовательность символов. Результат записать в файл g.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
uses crt;
var f,g: file of char;
    c,cc: char;
    s: string;
    i,n: integer;
begin
assign(f,'C:\in.dta');
assign(g,'C:\out.dta');
rewrite(f);
write('Сколько символов вводим в файл? '); readln(n);
writeln('Введите в строку без пробелов ',n,' символов');
for i:=1 to n do
    begin
    read(c);
    write(f,c);
    end;
write('Какой символ заменять? '); read(cc);
write('Введите в строку последовательность символов для замены: '); read(s);
reset(f);
rewrite(g);
while not (eof(f)) do
      begin
      read(f,c);
      if c=cc then
         for i:=1 to length(s) do
             begin
             c:=s[i];
             write(g,c);
             end
         else write(g,c);
      end;
reset(g);
writeln('Итоговый файл');
while not (eof(g)) do
      begin
      read(g,c);
      write(c,' ');
      end;
close(f);
close(g);
end.
а вот со вторым не помогу, извини... пока, по крайней мере нет идей =(
1
Puporev
Модератор
54575 / 42085 / 29057
Регистрация: 18.05.2008
Сообщений: 99,243
15.05.2012, 21:45 3
1/
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
uses crt;
var f,g:file of char;
    c,c1:char;
    s:string;
    n,i:integer;
begin
clrscr;
assign(f,'fileF');
rewrite(f);
assign(g,'fileG');
rewrite(g);
write('Сколько символов записать в файл n=');
readln(n);
writeln('Введите в файл символы');
for i:=1 to n do
 begin
  readln(c);
  write(f,c);
 end;
clrscr;
reset(f);
writeln('Содержание исходного файла:');
while not eof(f) do
 begin
  read(f,c);
  write(c);
 end;
writeln;
write('Какой символ заменить? c=');
readln(c1);
write('Введите группу символов для замены s=');
readln(s);
seek(f,0);
while not eof(f) do
 begin
  read(f,c);
  if c<>c1 then write(g,c)
  else
   for i:=1 to length(s)do
   write(g,s[i]);
 end;
close(f);
reset(g);
writeln('Содержание нового файла');
while not eof(g) do
 begin
  read(g,c);
  write(c);
 end;
close(g);
readln
end.
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.05.2012, 21:45

7. Дана строка символов. Преобразовать строку, удалив каждый символ * и повторив каждый символ, отличный от *.
Дана строка символов. Преобразовать строку, удалив каждый символ * и повторив...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru