Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
21 / 18 / 4
Регистрация: 07.04.2010
Сообщений: 806

Заменить в тексте слова, заключенные в ковычки порядковым номером!

14.06.2010, 13:55. Показов 3418. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, пожалуйста задачку, она звучит так!
Заменить в текстовом файле все слова, заключенные в ковычки, порядковым номером!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
program z1;
var
i,n:integer;
st:string;
f:text;
begin
assign(f,14ish.pas');
reset(f)
readln(f,st);
i:=length(st);
while i>1 do if st[i]='"' then begin
n:=i;
while(st[n]<>'"') and (n<=lenghth(st)) do n:=n+1;
delete(st,i+1,n-i-1);
i:=i-1;
end else i:=i+1;
writeln(st);
readln;
end.
Но у меня она циклится!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.06.2010, 13:55
Ответы с готовыми решениями:

Заменить в тексте все слова, заключенные в кавычки, порядковым номером
Добрый день!Есть такая задачка, она звучит так: Заменить в тексте все слова, заключенные в кавычки, порядковым номером. Вот мой код...

В тексте каждую букву заменить ее порядковым номером в алфавите
В тексте каждую букву заменить ее порядковым номером в алфавите . При выводе в одной строке печатать текст с двумя пробелами между буквами...

В английском тексте каждую букву заменить ее порядковым номером в алфавите
В английском тексте каждую букву заменить ее порядковым номером в алфавите . При выводе в одной строке печатать текст с двумя пробелами...

26
Почетный модератор
 Аватар для Puporev
64321 / 47617 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
14.06.2010, 20:26
Студворк — интернет-сервис помощи студентам
Вот переделал, если еще не так, доделывай сам, мне надоело.
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
53
uses crt;
const rz=[' ','.',',',';',':','?','!','"'];
var f,g:text;
    i,k:byte;
    nf,ng,s,s1:string;
begin
clrscr;
write('Имя файла для чтения: ');
readln(nf);
nf:=nf+'.txt';
assign(f,nf);
{$I-} reset(f);  {$I+}
if IOResult <> 0 then
 begin
  writeLn('Файл ',nf,' не найден!');
  writeLn('Работа программы завершена. Нажмите ENTER');
  readln;
  exit;
 end;
write('Имя файла для записи: ');
readln(ng);
ng:=ng+'.txt';
assign(g,ng);
rewrite(g);
while not eof(f) do
 begin
  readln(f,s);
  k:=1;
  i:=1;
  while i<length(s) do
  if ((s[i] in rz)and not(s[i+1] in rz)) or((i=1)and (s[i] in rz)) then
   begin
    k:=k+1;
    if s[i]='"' then
     begin
      i:=i+1;
      str(k,s1);
      insert(s1,s,i);
      i:=i+length(s1);
      while s[i]<>'"' do
      delete(s,i,1);
      i:=i+1;
      k:=k+1;
     end
    end
   else i:=i+1;
  writeln(g,s);
 end;
close(f);
close(g);
write('Файл ',nf,' переписан в файл ',ng);
readln
end.
1
21 / 18 / 4
Регистрация: 07.04.2010
Сообщений: 806
14.06.2010, 20:31  [ТС]
Цитата Сообщение от sergei3ru Посмотреть сообщение
Может тогда я чего не понимаю!Пишу задачу, как она есть в словах!
Заменить в тексте все слова, заключенные в ковычки, порядковым номером!

Если исходная строка такая tttt"aaa"oooo"ppppp"
то типа должно получиться tttt"2"oooo"4"
в соотвествии с порядковым номером слова во всей строке!Или с порядковым номером слова именно в ковычках!Как легче сделать?
Аха сейчас посмотрим!СПАСИБО ОГРОМНЕЙШЕЕ!
0
21 / 18 / 4
Регистрация: 07.04.2010
Сообщений: 806
14.06.2010, 20:45  [ТС]
Последний вопрос, вот я добавил в ту задачу Ваши изменения, но при запуске задача виснет и ничего не показывает, может опять чего напортачил?
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
program z1;
uses crt;
const rz=[' ','.',',',';',':','?','!','"'];
 
var f,g:text;
    i,k:byte;
    nf,ng,s,s1:string;
begin
clrscr;
assign(f,'14ish.pas');
reset(f);
while not eof(f) do
if ((s[i] in rz)and not(s[i+1] in rz)) or((i=1)and (s[i] in rz)) then
 
 begin
  readln(f,s);
  k:=1;
  i:=1;
  while i<=length(s) do
  if s[i]='"' then
   begin
    
  i:=i+1;
    str(k,s1);
    insert(s1,s,i);
    i:=i+length(s1);
    while s[i]<>'"' do
    delete(s,i,1);
    i:=i+1;
k:=k+1;
   end;
end
  else i:=i+1;
  writeln(s);
 
close(f);
readln
end.
0
Почетный модератор
 Аватар для Puporev
64321 / 47617 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
14.06.2010, 20:46
Цитата Сообщение от sergei3ru Посмотреть сообщение
вот я добавил в ту задачу Ваши изменения
А вот этого не нужно делать, нужно целиком взять новый код.
1
21 / 18 / 4
Регистрация: 07.04.2010
Сообщений: 806
14.06.2010, 21:05  [ТС]
Ужас, как меня достала эта задача...я переписал ее, немного изменил в начале, ну чтобы мы не вводили имя файла для чтения и для ввода!А присваивали переменной уже готовые файлы, так опять же ничего не показвает, зависает...ну что ему надо?
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
program z1;
uses crt;
const rz=[' ','.',',',';',':','?','!','"'];
var f,g:text;
    i,k:byte;
    nf,ng,s,s1:string;
begin
clrscr;
assign(f,'14ish.pas');
reset(f);
assign(g,'14zapi.pas');
rewrite(g);
while not eof(f) do
 begin
  readln(f,s);
  k:=1;
  i:=1;
  while i<length(s) do
  if ((s[i] in rz)and not(s[i+1] in rz)) or((i=1)and (s[i] in rz)) then
   begin
    k:=k+1;
    if s[i]='"' then
     begin
      i:=i+1;
      str(k,s1);
      insert(s1,s,i);
      i:=i+length(s1);
      while s[i]<>'"' do
      delete(s,i,1);
      i:=i+1;
      k:=k+1;
     end
    end
   else i:=i+1;
  writeln(g,s);
 end;
close(f);
close(g);
{write('Файл ',nf,' переписан в файл ',ng);}
writeln(g);
readln
end.
0
Почетный модератор
 Аватар для Puporev
64321 / 47617 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
14.06.2010, 21:16
writeln(g);//это что ты ты творишь? Ты вообще хоть что-то знаешь про файлы??????:?
readln
end.
1
21 / 18 / 4
Регистрация: 07.04.2010
Сообщений: 806
14.06.2010, 21:50  [ТС]
Цитата Сообщение от Puporev Посмотреть сообщение
writeln(g);//это что ты ты творишь? Ты вообще хоть что-то знаешь про файлы??????:?
readln
end.
Мало...очень мало...но задачу решить надо, так уж извините, если что не то, бывает!Как надо написать?

Добавлено через 1 минуту
Я выводил и строку s и s1 все равно ничего не показывает, мозг уже не соображает!Вот и обращаюсь за советом!

Добавлено через 29 минут
Спасибо за помощь, я воспользовался той задачей, которую вы прислали и не буду париться, ничего переделывать!А то бестолку все это!Завтра со свежими мозгами будем продолжать делать следующие задачи!Уж извините, если что не так!НО ГЛАВНОЕ СПАСИБО ЗА ВСЕ!5+!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.06.2010, 21:50

Найти количество слов, начинающихся с заданного символа, и заменить эти слова их порядковым номером
Дана строка. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами....

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

Замена букв в тексте порядковым номером
В тексте каждую букву заменить ее номером в алфавите

Точки заменить их порядковым номером
Задание звучит так: заменить все точки цифрами, с соответствующими им номерами. Написал этот код. Но тут проверка уже на самом выводе....

Элементы с четным порядковым номером заменить на 02
Массив из восьми элементов. Элементы с четным порядковым номером заменить на 02. Помогите кому не сложно.


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей. Самым главным критерием для. . .
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store. И так: 1. Скачиваем с. . .
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге). Задача: Программно добавить префикс в нумерацию документов. Решение: В модуле объекта. . .
После закрытия оутлука продолжает висеть процесс в диспетчере задач
Maks 27.10.2026
С недавнего времени в продакшене возникла проблема: при закрытии оутлука в диспетчере задач продолжал висеть процесс outlook. exe. Проблема возникла после установки MS Office 2021 LTSC на машинах, под. . .
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него. https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952 Инструкция внутри. https:/ / youtu. be/ VpfFZSUDGnQ. . .
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru