Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Pascal Поиск корней уравнения https://www.cyberforum.ru/ pascal/ thread2767337.html
Добрый вечер. Необходимо найти корни уравнения. Два метода. Итераций и половинного деления. Вроде бы всё решил, но считает неверно Начальные приближения: -2.9;0;2.2 Уравнение: Код программы:...
Вычисление суммы ряда с заданной точностью Pascal
Вычислить y = x - x2/2 + x3/3 - ... + (-1)n-1xn/n + ... с точностью eps = 0.00001, где |x|<1. Сравнить результат с вычисленным через стандартную функцию значением y = LN(1+x).(PASCAL) Помогите...
Вычислить сумму с точностью eps = 0.0001 и сравнить результат с вычисленным через стандартную функцию Pascal
Здравствуйте, помогите решить задачу на Паскале. Вычислить y = 1 - x^2/2! + x^4/4! - ... + (-1)^n*x^2*n/(2*n)! + ... с точностью eps = 0.0001 и сравнить результат с вычисленным через стандартную...
Pascal Составить динамический линейный список из большых букв Помогите, пожалуйста, решить следующую задачу. Пользователь вводит по очереди строки из различных символов (раскладка английская). Введение строк заканчивается, когда он введёт пустую строку.... https://www.cyberforum.ru/ pascal/ thread2766979.html
Pascal Бензоколонки https://www.cyberforum.ru/ pascal/ thread2766894.html
Нужно переделать код чтобы использовались процедуры ввода и вывода элементов массива. Const n=5; var a:array of real; b:array of string; i:integer; begin b:=('ул. Володарского');...
Pascal Получить новый массив, содержащий элементы, которые входят в исходный массив более одного раза
Дан одномерный массив, который содержит не более 60 английских букв. Получите новый массив, который будет содержать те элементы, которые входят в исходный массив более одного раза. Использовать...
Создать новый массив, элементами которого являются суммы делителей каждого числа старого массива Pascal
Дан одномерный массив, который содержит не более 40 целых чисел. Создайте новый массив, элементами которого являются суммы делителей каждого числа старого массива. Использовать процедуры ввода и...
Pascal Найти суммы отрицательных и положительных элементов, и сравнить их по модулю Дан одномерный массив, который содержит не более 50 целых чисел. Найдите сумму отрицательных и сумму положительных элементов и сравните их по модулю. Использовать процедуры ввода и вывода... https://www.cyberforum.ru/ pascal/ thread2766886.html
Pascal Получить в файле f последовательность матриц размера n*m https://www.cyberforum.ru/ pascal/ thread2766754.html
Условие задания: во входном файле даны действительные числа x1,x2,… количество которых заранее неизвестно. Получить в файле f последовательность матриц размера n*m (n,m-некоторые константы), где k-я...
Pascal Перевести код с Python на Pascal lst = sred = 0 print('Введите какое количество элементов вам нужно:', end=' ') for i in range(1, int(input()) + 1): print(f'Введите {i} элемент:', end=' ') chislo = int(input()) ... https://www.cyberforum.ru/ pascal/ thread2766750.html
Pascal Создать программу для умножения двух чисел в позиционной системе счисления https://www.cyberforum.ru/ pascal/ thread2766513.html
Создать программу для умножения двух чисел в позиционной системе счисления, не прибегая счету в десятичной системе счисления в явном виде. Помогите, пожалуйста
Pascal Совершенное число Написал программу на Си, которая проверяет введённое число на совершенство. Все переменные у меня типа int и когда я ввёл число 496 мне был дал положительный ответ, то есть то, что оно совершенное.... https://www.cyberforum.ru/ pascal/ thread2766467.html
Модератор
8405 / 4157 / 2873
Регистрация: 17.08.2012
Сообщений: 13,257
14.01.2021, 07:11 0

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

14.01.2021, 07:11. Просмотров 951. Ответов 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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.01.2021, 07:11

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

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

Дана последовательность из 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 Определить являеться ли последовательность...

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

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