Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 09.11.2020
Сообщений: 18
1

Удалить из слов текста все предыдущие вхождения последней буквы каждого слова

10.01.2021, 21:59. Просмотров 913. Ответов 4

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

Не могу понять ,как реализовать решение задачи на языке паскаль
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.01.2021, 21:59
Ответы с готовыми решениями:

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

Дана последовательность из n символов.
Дана последовательность из n символов. Подсчитать: 1) сколько раз среди данных символов...

Дана последовательность символов, построить и напечатать множество
Помогите решить задачку: Дана последовательность символов, построить и напечатать множество,...

Дана последовательность, состоящая из 10 слов. Напечатать те слова последовательности, которые имеют нечётное количество символов
Дана последовательность, состоящая из 10 слов. Напечатать те слова последовательности, которые...

4
0 / 0 / 0
Регистрация: 09.11.2020
Сообщений: 18
13.01.2021, 22:58  [ТС] 3
Всё-таки, я не смогла разобраться с этой задачей
Помогите пожалуйста!!!
0
Модератор
8325 / 4098 / 2846
Регистрация: 17.08.2012
Сообщений: 13,090
14.01.2021, 07:11 4
А как с ней можно разобраться, если условие задачи, скажем так, далеко не полное?
  • Последнюю букву слова удалять только из слова, которому эта буква принадлежит,
    или же из слова, которому эта буква принадлежит, и изо всех предыдущих слов?
    Например, из текста "размер класса" что должно остаться, "азмер клсса" или "змер клсса"?
  • Неизвестно, что считать словом, а что - разделителем между словами.
  • Неизвестно, нужно ли различать строчные и прописные буквы.
  • Неизвестно, состоит текст из одной строки, или из нескольких строк.

Вот Вам простейший вариант: текст состоит из одной строки, разделителем слов считается один или несколько пробелов, словом считается последовательность символов, не содержащая пробелы, строчные и прописные буквы считаются различными, и предыдущие вхождения последней буквы слова требуется удалить только из слова, которому эта буква принадлежит:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var
  s: string;
  c: char;
  i: integer;
begin
  writeln('Введите строку из слов, разделённых пробелами:');
  readln(s); //ввод текста
  s := s + ' '; //для удобства алгоритма добавляем разделитель в конец последнего слова
  for i := length(s) - 1 downto 1 do //просматриваем строку с конца
    if (s[i] <> ' ') and (s[i+1] = ' ') then c := s[i] //если обнаружен конец слова, то запоминаем последнюю букву
    else //иначе
      if s[i] = c then delete(s, i, 1); //если встретилась запомненная буква, то удаляем её
  delete(s, length(s), 1); //(после просмотра строки) удаляем добавленный ранее разделитель (вообще-то, можно и не удалять)
  writeln('Преобразованная строка:');
  writeln(s); //печатаем результат
  readln //ожидание нажатия <Enter> перед закрытием программы
end.
Строка просматривается с конца не только из-за очевидного удобства для данной задачи, но и из-за того, что при удалении символов длина строки уменьшается, и при просмотре строки с начала возникла бы ошибка при попытке чтения символа после конца строки.

Если выяснится, что нужна программа с другими условиями, например, что разделителем следует считать не только пробел, но и какие-либо знаки препинания, или что строчные и прописные буквы различать не следует, или мало ли что ещё, пишите.
0
0 / 0 / 0
Регистрация: 09.11.2020
Сообщений: 18
17.01.2021, 19:27  [ТС] 5
Огромное спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.01.2021, 19:27

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Дана непустая последовательность символов. Требуется построить и напечатать множество, элементами которого являются встречающиеся в последовательности
Не как не могу решить задачку по Паскалю.. вот ее условвие Дана непустая последовательность...

Дана последовательность из n символов. Выяснить, имеются ли в последовательности два подряд идущих символа ",-"
2. Дана последовательность из n символов. Выяснить, имеются ли в последовательности два подряд...

2. Дана целочисленная последовательность. Определить количество вхождений каждого числа в последовательность
Написал программу var a,c:array of integer; count,i,p,u: integer; begin for i:=1 to 10 do...

Дана последовательность А1...А50. Получить новую последовательность, исключив отрицательные элементы
Дана последовательность А1...А50. Получить новую последовательность, исключив отрицательные элементы

дана последовательность вещественных чисел а1,а2,.а15 Определить являеться ли последовательность упорядоченной по возрастанию
дана последовательность вещественных чисел а1,а2,...а15 Определить являеться ли последовательность...

Дана строка символов. Подсчитать, сколько различных символов встречаются в ней.
Дана строка символов. Подсчитать, сколько различных символов встречаются в ней. О.о весь алфавит...


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

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

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