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

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

31.03.2017, 12:45. Показов 1904. Ответов 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
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 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
33195 / 21491 / 8233
Регистрация: 22.10.2011
Сообщений: 36,878
Записей в блоге: 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
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru