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

Удалить в тексте третью букву каждого слова

31.03.2017, 12:45. Показов 1946. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. Дан текст. Удалить в нём третью букву каждого слова;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.03.2017, 12:45
Ответы с готовыми решениями:

Удалить в тексте третью букву каждого слова
Дан текст. Удалить в нём третью букву каждого слова; помогите че-то я не могу разобраться вот сделал тут: var s:...

Удалить из слова третью букву
Дано слово: а) удалить из него третью букву; б) удалить из него k-ю букву.

Удалить из слова каждую третью букву
Напишите программу, удаляющую из слова каждую третью букву. С++ пж,помагите

10
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
31.03.2017, 13:03
1: Скорее всего можно проще
Pascal
1
2
3
4
5
begin
  var s:=ReadlnString('Введите текст:').ToWords;
  for var i:=0 to s.Length-1 do delete(s[i],3,1);
  s.Print;
end.
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33402 / 21512 / 8236
Регистрация: 22.10.2011
Сообщений: 36,913
Записей в блоге: 12
31.03.2017, 13:08
Цитата Сообщение от Hitoku Посмотреть сообщение
можно проще
Вот так, например:
Pascal
1
ReadlnString('Введите текст:').ToWords.Select(s -> s.Where((ch, i) -> (i + 1) mod 3 <> 0).JoinIntoString('')).Print;
1
0 / 0 / 0
Регистрация: 31.03.2017
Сообщений: 19
31.03.2017, 13:25  [ТС]
Добавлено через 11 минут
Hitoku, А можно как-то вот так, чтобы подлиннее
Pascal
1
2
3
4
5
6
7
8
9
10
var
a:string;
i:integer;
begin
readln(a);
a:=' '+a;
for i:=length(a) downto 1 do
if a[i]=' 'then delete(a,i+3,1);
writeln(a);
end.
Тут она считает пробелы, а этого не надо
0
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
31.03.2017, 13:29
Лучший ответ Сообщение было отмечено leha37rus как решение

Решение

leha37rus, вы добавляете пробел в начале, но потом, наверное, стоит его удалить
Pascal
1
2
3
4
5
6
7
8
9
var
  a:string; i:integer;
begin
  readln(a); a:=' '+a;
  for i:=length(a) downto 1 do
    if a[i]=' ' then delete(a,i+3,1);
  delete(a,1,1);
  writeln(a);
end.
0
0 / 0 / 0
Регистрация: 31.03.2017
Сообщений: 19
31.03.2017, 13:46  [ТС]
Hitoku, Так она вообще каждый 3ий символ удаляет,а надо в слове.
0
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
31.03.2017, 13:49
leha37rus, третье после каждого пробела
стол стул окно дом слово
стл стл око до слво
0
0 / 0 / 0
Регистрация: 31.03.2017
Сообщений: 19
31.03.2017, 13:53  [ТС]
Hitoku, попробуйте еще ввести слова с меньшим количеством букв(2-3)
0
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
31.03.2017, 13:55
leha37rus, именно поэтому лучше использовать либо тот код, который дал я первым ответом, либо код от volvo
1
Эксперт Pascal/Delphi
2388 / 1300 / 1492
Регистрация: 29.08.2014
Сообщений: 4,665
01.04.2017, 03:11
Цитата Сообщение от Hitoku Посмотреть сообщение
leha37rus, именно поэтому лучше использовать либо тот код, который дал я первым ответом, либо код от volvo
там тоже не учитывается многоточие и удаляет каждую третью букву в слове
Code
1
2
Введите текст: продолжение следует...
прдожеие слдут..
Добавлено через 18 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var
  s,t,r:string;
  i:integer;
begin
  s:=readlnstring('введите текст:')+' ';
  for i:=1 to length(s) do 
    if uppercase(s[i]) in ['A'..'Z','А'..'Я','Ё'] then t:=t+s[i] 
    else begin
      delete(t,3,1);
      r:=r+t+s[i];
      t:='';
    end;
    delete(r,length(r),1);
  writeln('Полученный текст:"',r,'"');
end.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33402 / 21512 / 8236
Регистрация: 22.10.2011
Сообщений: 36,913
Записей в блоге: 12
01.04.2017, 15:25
Лучший ответ Сообщение было отмечено Joy как решение

Решение

Блин. Мне показалось, что надо каждую третью удалить. Тогда вот так, раз только одну третью:
Pascal
1
2
3
4
begin
  s := Regex.Replace(ReadlnString('Введите текст'), '(\b\w{2})(\w)', '$1');
  writeln(s);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2017, 15:25
Помогаю со студенческими работами здесь

Символьный массив: в заданном предложении вырезать каждую третью букву каждого слова
Дано предложение: &quot;ЛЕНЬ - МАТЬ ВСЕХ ПОРОКОВ&quot; В заданном предложении вырезать каждую третью букву каждого слова. С помощью функций языка...

Строки и множества. Удалить из слова каждую третью букву
Напишите программу, удаляющую из слова каждую третью букву

Удалить из каждого слова последнюю букву
Дана последовательность, содержащая от 2 до 50 слов, в каждом из которых до 8 строчных букв. Между соседними словами не меньше 1 пробела....

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

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


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru