Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 20.11.2017
Сообщений: 26
1

Используя кольцевой односвязный список найти введённый с клавиатуры символ, удалить символ стоящий перед найденным за 1

22.11.2017, 12:41. Показов 1371. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Используя кольцевой односвязный список найти введённый с клавиатуры символ, удалить символ стоящий перед найденным за 1 позицию и вставить символ, введённый с клавиатуры , перед найденным.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2017, 12:41
Ответы с готовыми решениями:

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

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

Удалить символ стоящий перед символом '#'
в) В тексте имеется символ '#'. Появление этого символа означает отмену предыдущего символа текста....

Ввести с клавиатуры символ. Определить, является ли введённый символ буквой
Ввести с клавиатуры символ. Определить, является ли введённый символ буквой.Заранее благодарчик!

1
5079 / 2651 / 2349
Регистрация: 10.12.2014
Сообщений: 10,028
23.11.2017, 10:21 2
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

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
type
  tList = class
    c : Char;
    x : tList;
    
    constructor;
    begin
      c := Chr(Random(ord('a'),ord('z'))); x := nil;
    end;
    
    constructor (ch : Char);
    begin
      c := ch; x := nil;
    end;
 
    procedure Print;
    begin
      Write(c);
      var tmp := Self;
      repeat
        tmp := tmp.x; if tmp <> Self then Write(' ', tmp.c);
      until tmp = Self;
      Writeln;
    end;
    
    function Find(fnd : Char) : tList;
    begin
      Result := nil;
      var tmp := Self;
      if tmp.c = fnd then Result := Self
      else
        while tmp.x <> Self do
          begin
            tmp := tmp.x; if tmp.c = fnd then begin Result := tmp; Exit; end;
          end;
    end;
    
    function DeletePred : Boolean;
    begin
      Result := False;
      if Self.x = Self then Exit;
      var tmp := Self; while tmp.x.x <> Self do tmp := tmp.x;
      tmp.x := tmp.x.x; Result := True;
    end;
    
    procedure Insert(ins : Char);
    begin
      var newElement := New tList(ins); newElement.x := Self;
      if Self.x = Self then Self.x:=newElement
      else
        begin
          var tmp := Self; while tmp.x <> Self do tmp := tmp.x;
          tmp.x := newElement;
        end;
    end;
  end;
 
begin
  Randomize;
  var List := New tList;
  var Tmp := List;
  for var i := 2 to 20 do begin Tmp.x := New tList; Tmp := Tmp.x; end;
  Tmp.x := List;
  WriteLn('Создан список: '); List.Print;
  List := List.Find(ReadLnChar('Найти символ:'));
  if List = nil then begin WriteLn('Введённый символ не найден!'); Halt; end;
  WriteLn('Символ найден: '); List.Print;
  if List.DeletePred then WriteLn('Удалён за 1 до: '); List.Print;
  List.Insert(ReadLnChar('Символ для вставки:'));
  WriteLn('Символ вставлен: '); List.Print;
end.
1
23.11.2017, 10:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.11.2017, 10:21
Помогаю со студенческими работами здесь

Заменить символ, стоящий перед прописной буквой на пробел
Ввести массив из 10 символов. Если символ массива является прописной буквой латинского алфавита (т....

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

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

Перед каждым знаком '=' вставить символ, стоящий за ним, если таковой имеется
нужно написать программу, которая читает с клавиатуры строку символов, преобразует ее и выводит...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru