С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58

Удалить из строки символы, не являющиеся цифрами

13.02.2016, 19:27. Показов 3181. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача: записи телефонных номеров обычно содержат дополнительные символы(скобки.черточки,пробелы), - чтобы удобней запоминалось.Например:8(123)45-67-89.Предположим,что пользователь их так и вводит.Пусть ваша программа преобразит строку с таким номером,удалив все символы,кроме цифр.Например, после ввода указанного выше номера она должна напечатать 8123456789.

Вот, что получишь накодить, но на месте не нужных символов остались пробелы.(((
Pascal
1
2
3
4
5
6
7
8
9
10
var a:integer;
    s:string;
begin
writeln('Введите ваш номер телефона');
readln(s);
for a:=1 to Length(S) do
if (s[a]='-') or (s[a]='(') or (s[a]=')') then 
s[a]:=' ';
write(s);
end.


Напишите новую программу, но с предельно простым синтаксисом.Спасибо)
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.02.2016, 19:27
Ответы с готовыми решениями:

Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или цифрами
Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или цифрами Помогите пожалуйста)))

Удалить в данной строке все символы, являющиеся нечётными цифрами
Удалить в данной строке все символы, являющиеся нечётными цифрами.

Удалить из строки все символы не являющиеся буквами
помогите пожалуйста!!!!!!!!!!! Введите строку сивмолов.удалить из строки все символы не являющиеся буквами.вывести на экран изменённую...

12
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
13.02.2016, 19:36
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
var a:integer;
    s:string;
begin
writeln('Введите ваш номер телефона');
readln(s);
for a:=Length(s) downto 1 do
if not(s[a] in ['0'..'9']) then delete(s,a,1);
write(s);
end.
1
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58
14.02.2016, 12:38  [ТС]
Puporev, прошу пожалуйста, дополните вашу программу комментариями..Спасибо
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
14.02.2016, 12:50
Идем с конца строки к началу и если не цифра, то удаляем.
0
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58
14.02.2016, 12:56  [ТС]
Puporev,
Цитата Сообщение от Puporev Посмотреть сообщение
delete(s,a,1)
а что здесь указываеться в скобка?
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
14.02.2016, 12:57
А справку открой да посмотри, если до сих пор ни строчки из учебника не прочитал
0
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58
14.02.2016, 12:59  [ТС]
Puporev, учебник, который я изучаю об этом ни слово("Песни о Паскале"), а интернет рыть - это значит кучу время потерять.Лучше я думаю если живой человек объяснит.Но все равно спасибо за помощь)
0
 Аватар для RostorLuxor
144 / 129 / 46
Регистрация: 12.08.2015
Сообщений: 1,203
Записей в блоге: 1
14.02.2016, 12:59
Pascal
1
2
3
4
5
6
7
8
9
var a:integer;
    s:string;
begin
writeln('Введите ваш номер телефона'); // запрос номера
readln(s); // считывание
for a:=Length(s) downto 1 do // цикл будет выполнен столько раз, сколько символов в переменной s
if not(s[a] in ['0'..'9']) then delete(s,a,1); // если символ под номером a не равен цифре, то удаляем.
write(s); // выводим исправленный s
end.
1
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
14.02.2016, 13:01
Цитата Сообщение от RomaRi0 Посмотреть сообщение
Лучше я думаю если живой человек объяснит.
Считай что он помер..

Добавлено через 1 минуту
RostorLuxor, Ну и что ты опять влез? Что ты нового написал?
0
 Аватар для RostorLuxor
144 / 129 / 46
Регистрация: 12.08.2015
Сообщений: 1,203
Записей в блоге: 1
14.02.2016, 13:01
Pascal
1
delete(s,a,1);
Удаление символа из строки в указанной позиции.

S - Строка.
A - Позиция.
1 - Сколько символов от позиции будет удалено.
0
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58
14.02.2016, 13:03  [ТС]
Цитата Сообщение от RostorLuxor Посмотреть сообщение
delete(s,a,1)
объясните пожалуйста какие парметры указываються в скобках, гуглить не хочу((((((((((((((

Добавлено через 11 секунд
RostorLuxor, спасибо

Добавлено через 51 секунду
Цитата Сообщение от Puporev Посмотреть сообщение
RostorLuxor, Ну и что ты опять влез? Что ты нового написал?
он хотя бы объяснил, а не чистый код...........
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
14.02.2016, 13:03
Цитата Сообщение от RomaRi0 Посмотреть сообщение
гуглить не хочу
А нахрена у тебя в Паскале есть встроенная справка?
1
2 / 2 / 4
Регистрация: 14.01.2016
Сообщений: 58
14.02.2016, 13:08  [ТС]
Puporev, оо и правда есть.Спасибо за инфу. +1.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.02.2016, 13:08
Помогаю со студенческими работами здесь

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

Удалить в строке все символы являющиеся буквами или цифрами, и заменить каждую большую букву одноименной малой
условие : Даны символы S1,...Sn. Известно, что символ S1 отличен от пробела и что среди S1, S2,...имеется хотя один пробел....

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

Удалить все символы, не являющиеся буквами или цифрами и заменить большую малой
Дана последовательность символов, количество букв <=255 удлить все символы не являющиеся буквами или цифРАМИ и заменить большую малой.

Из строки символов удалить все символы не являющиеся буквами
1)Получить в строке символов разделённой пробелами кол-во слов начинающихся с ''d''. 2)из строки символов удалить все символы не...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru