Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 07.02.2014
Сообщений: 4

В слово, заканчивающимся точкой, вставить новый элемент е1 за каждым вхождением элемента е2(исправить)

08.02.2014, 20:03. Показов 1019. Ответов 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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
type ukaz=^Zveno;
     zveno=record
          :ukaz;
          Info:char;
     end;
    spisok=ukaz;
  var
   p,q,q1:spisok;
   sym,e1,e2:char;
   ee:string;
begin
write('E1=');
readln(e1);
 writeln;
write('E2=');
readln(e2);
 
 
{Порождение списка}
{ ввод исходного слова, представление его в виде цепочки }
 
  { формирование заглавного звена }
 
new(q);
p:=q;
p^.Next:=nil;
write('Spisok=');
read(sym);{чтение первого символа}
while sym<>'.' do
 begin
 
   new(p^.Next);
   p:=p^.Next;
   P^.Info:=sym;
   p^.Next:=nil;
   read(sym)
 end;
{Вывод списка}
p:=q;
 
while p^.Next<>nil do
 begin
  p:=p^.Next; write(p^.Info);
 end;
 
writeln;
p:=q;
while p^.Next<>nil do
 begin
 if p^.Info=e2 then
    Begin
      New(q1);
      q1^.Info:=e1;
      q1^.Next:=p^.Next;
      P^.Next:=q1;
    End;
 
  p:=p^.Next;
 
 end;
 
 
if p^.Info=e2 then   {Если последний символ е2}
    Begin
      New(q1);
      q1^.Info:=e1;
      q1^.Next:=p^.Next;
      P^.Next:=q1;
    End;
 
{Вывод списка}
p:=q;
 
while p^.Next<>nil do
 begin
  p:=p^.Next; write(p^.Info);
 end;
 
//while keypressed do   readkey;
readln;
 readln
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.02.2014, 20:03
Ответы с готовыми решениями:

Вставить в список L новый элемент F за каждым вхождением элемента E
Здравствуйте, выручите студента недоучку =))) работу надо сдать уже завтра. Задача стоит такая Все работает правильно за одним только...

Вставить в список L новый элемент E1 за каждым вхождением заданного элемента E
Помогите написать эту часть программы(Вставить в список L новый элемент E1 за каждым вхождением заданного элемента E) на c++ или Visual...

Вставить в список L новый элемент E1 за каждым вхождением заданного элемента E
Помоги те пожалуйста дополнить программу, ( Вставить в список L новый элемент E1 за каждым вхождением заданного элемента E) using System;...

1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33395 / 21505 / 8236
Регистрация: 22.10.2011
Сообщений: 36,902
Записей в блоге: 12
09.02.2014, 22:36
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Type ukaz =  ^Zveno;
   zveno =  Record
      :  ukaz;
      Info:  char;
   End;
   spisok =  ukaz;
 
Var 
   p,q,t,q1:  spisok;
   sym,e1,e2:  char;
   ee:  string;
Begin
   write('E1=');
   readln(e1);
   writeln;
   write('E2=');
   readln(e2);
 
   {Порождение списка}
   { ввод исходного слова, представление его в виде цепочки }
   { формирование заглавного звена }
 
   new(q);
   p := q;
   p^.Next := Nil;
   write('Spisok=');
   read(sym);{чтение первого символа}
   While sym<>'.' Do
   Begin
      new(p^.Next);
      p := p^.Next;
      P^.Info := sym;
      p^.Next := Nil;
      read(sym)
   End;
 
   {Вывод списка}
   p := q;
 
   While p^.Next<>Nil Do
   Begin
      p := p^.Next;
      write(p^.Info);
   End;
 
   // Ищешь пробел, и запоминаешь его позицию...
   p := q;
   While p <> Nil Do
   Begin
      If p^.info = ' ' Then t := p;
      p := p^.next;
   End;
 
   writeln;
   // t указывает на последний пробел, то есть добавляться элементы
   // будут только в завершающее слово
   p := t;
   While p^.Next<>Nil Do
   Begin
      If p^.Info=e2 Then
      Begin
         New(q1);
         q1^.Info := e1;
         q1^.Next := p^.Next;
         P^.Next := q1;
      End;
      p := p^.Next;
   End;
 
   If p^.Info=e2 Then   {Если последний символ е2}
   Begin
      New(q1);
      q1^.Info := e1;
      q1^.Next := p^.Next;
      P^.Next := q1;
   End;
 
   {Вывод списка}
   p := q;
   While p^.Next<>Nil Do
   Begin
      p := p^.Next;
      write(p^.Info);
   End;
   // while keypressed do   readkey;
   readln;
   readln
End.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.02.2014, 22:36
Помогаю со студенческими работами здесь

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

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

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

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

Однонаправленные списки. В слове, заканчивающемся точкой, удалить за каждым вхождением элемента Е один элемент
помогите пожалуйста,в слове,заканчивающеуся точкой,удалить за каждым вхождении элемента Е один элемент,есть такой и он отлиен от Е.


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru