Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159

Удаление подстроки из строки

27.12.2009, 19:00. Показов 3762. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
написать программу которая включала бы в себя подпрограммы имитирующие основные стандартные
функции и процедуры раоты со строками

вобщем для начала нужна одна функция удаления подстроки из строки
вобщем есть наработки но нужна помощь ..программа работает но мне надо изменить длину строки..никак не получается сделать это
pos-номер элемента строки с которго нужно начать удаление
num-длина удаляемого отрезка
Pascal
1
2
3
4
5
6
7
8
procedure delete(var s:string; pos,num:integer;)
var
i:integer;
begin
for i:=pos to length(s)-num do
s[i]:=s[i+num];
end;
end;
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.12.2009, 19:00
Ответы с готовыми решениями:

Удаление из строки заданной подстроки
Delete(s,n,l) удаление из строки s подстроки, начиная с позиции n длиной l (аналогичная функция есть в Pascal)

Даны две строки: S1 и S2. Удалить из строки S1 все подстроки, совпадающие с S2
8. Даны две строки: S1 и S2. Удалить из строки S1 все подстроки, совпадающие с S2. Если таких подстрок нет, то вывести S1 без изменений.

Обработка строки: удаление подстроки, подсчет заданных символов
Вводится строчка. а)Удалить все "РРР" б)определить сколько раз в строчке встречается "." с)Если больше 5 раз, то вставить...

23
Retired
7727 / 2559 / 671
Регистрация: 17.10.2009
Сообщений: 5,100
29.12.2009, 17:31
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Delphin_KKC Посмотреть сообщение
Можно и byte(s[0])
Я не о том как можно, а о том что Length быть не должно, хотя ТС самостоятельно я думаю сможет разберется что к чему и решит как ей нужно.
0
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
29.12.2009, 19:02  [ТС]
Delphin_KKC я поняла в чем моя ошибка...в одном месте забыла поставить var)))))
кстати вот у меня вопрос...каким образом работает эта штука s[0]:=char(length(s)-num)
char это же тип...а не оператор...
0
UNIX-way
 Аватар для Delphin_KKC
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
29.12.2009, 20:14
Цитата Сообщение от МаргаритаC Посмотреть сообщение
...
кстати вот у меня вопрос...каким образом работает эта штука s[0]:=char(length(s)-num)
char это же тип...а не оператор...
Правильно. char - тип. А char(x) - приведение "х" к типу char.
В нулевом символе строки хранится признак её длины. Но строка - это ведь массив символов. Вот и привожу результат выражения, вычисляющего новую длину строки, к типу "символ", а потом записываю его в нулевую позицию.

Паскаль выделяет места под 255 символов+нулевой(признак длины) даже если строка в три символа длиной. Например, вполне правомерным является код:
Pascal
1
2
3
4
5
6
7
8
var
 s:string;
begin
s:='123';
s[50]:='4';
s[0]:=char(50);//про признак длины не забываем
writeln(s);
end.
Этот код выведет на экран строку в 50 символов длиной, в первых позициях имеющую "123" и в последней - "4".

Для тех, кто знает С/С++
Поскольку Паскаль обнуляет содержимое переменных при объявлении - то в явно не инициализированных позициях будут нули. Так что мусора на экране не будет.
1
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
30.12.2009, 21:27  [ТС]
еее....зачет по информатике есть!)))
спасибо всем!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.12.2009, 21:27

Удаление подстроки из строки
Необходимо написать программу удаляющую подстроку из строки. В ассемблере плохо шарю. Написать надо на masm32. Кто чем сможет помогите...

Удаление подстроки из строки
Есть программа, которая работает с отдельным модулем написанным на ассемблере. Суть: программа удаляет строку из подстроки. Уже все...

Удаление подстроки из строки
//Метод удаляет введённую подстроку из строки static string SubStrDel(String str) { ...

Удаление подстроки из строки
Помогите пожалуйста реализовать функцию удаления подстроки из строки, функция получает в качестве параметров индекс элемента и кол-во...

Удаление подстроки из строки
Здравствуйте, помогите пожалуйста преобразовать на delphi как можно создать Project var a:string; begin a :=...


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

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Новые блоги и статьи
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
Создание формы заимствованного документа
Maks 03.08.2026
Задача: Необходимо создать собственную форму заимствованного документа. На форме должен быть реквизит "Покупатель", а также табличная часть со следующими реквизитами: - Расчетный счет покупателя. . .
Задача предоставления скидок покупателям
Maks 03.08.2026
Задача: В документе "Продажи" необходимо реализовать функционал предоставления скидок покупателям. Скидка должна автоматически рассчитываться и подставляться в соответствующее поле при выборе. . .
Почему SEO не начинается с ключевых слов: что проверить до написания текстов
Neotwalker 01.08.2026
Когда владельцу сайта предлагают заняться SEO, первым шагом часто становится сбор запросов и написание текстов. Логика кажется понятной: 1. Находим ключевые слова. 2. Добавляем их на. . .
Знание — сила: Доктрина интенциональности знаний, углубление в формулу
Hrethgir 01.08.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11957&stc=1&d=1785567302 Знаменитый афоризм Фрэнсиса Бэкона «Знание — сила» (Scientia potentia est) в массовой культуре принято понимать. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru