Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
1 / 1 / 1
Регистрация: 13.06.2015
Сообщений: 47

Удаление из натурального числа Х заданной цифры D

13.06.2015, 11:31. Показов 1818. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите решить задачу.
Составить программу, которая выполняет удаление из натурального числа Х некоторой заданной цифры D. Н-р для числа 58789890 и цифры 8 результатом будет число 57990.
Заранее Спасибо!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.06.2015, 11:31
Ответы с готовыми решениями:

Найти наибольшую и наименьшую цифры в записи данного натурального числа.
Найти наибольшую и наименьшую цифры в записи данного натурального числа.

Найти количество цифр натурального числа, больших заданной цифры
Здравствуйте! Помогите чем сможете) Дано натуральное число: 1. Найти количество цифр этого числа, больших А (число А вводится с...

Из натурального числа N удалить все цифры, равные заданной цифре А
Привет народ. Дали задание. Из натурального числа N удалить все цифры, равные заданной цифре А. Первая строка входного файла...

16
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
13.06.2015, 12:01
Replace в помощь!
0
1 / 1 / 1
Регистрация: 13.06.2015
Сообщений: 47
13.06.2015, 15:41  [ТС]
Visual Basic
1
2
3
If TextBox1.Text.Contain("1828384858") Then
TextBox1.Text = TextBox1.Text.Replace("1828384858", "12345")
End If
Вот что-то наскреб(прошу прощения совсем новичок, знания ноль(( почему выдает ошибку, что у меня не так написано?invalid qualifier
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
13.06.2015, 15:55
Visual Basic
1
TextBox1.Text = Replace(TextBox1.Text, "8", "")
0
1 / 1 / 1
Регистрация: 13.06.2015
Сообщений: 47
13.06.2015, 17:23  [ТС]
аналогично
If TextBox1.Text.Contain("1828384858") Then
выдает ошибку и выделяет Text
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
13.06.2015, 17:51
linkel,
1. Какая среда - VB6 или VB.Net?
2. Alex77755 привел решение для VB6. А этот If не нужен ни там, ни там.
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
13.06.2015, 18:49
Казанский,
В данном случае и в NET работает
VB.NET
1
2
3
 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        TextBox1.Text = Replace(TextBox1.Text, "8", "")
    End Sub]
Добавлено через 2 минуты
Проато ТС не хочет читать о чём кричит среда!
Ошибка 1 Не удалось разрешить перегрузку, так как данное число аргументов не подходит ни одному из доступных "Contains".
0
1 / 1 / 1
Регистрация: 13.06.2015
Сообщений: 47
13.06.2015, 20:18  [ТС]
я не программист и с вами спорить бесполезно, т.к я обычный юзер(который только умеет пользоватся браузером/распечать/муз/фильмы) , я сам не в недоумение как такое задали, надеюсь в скором я забуду это как страшный сон. Спасибо за ответы все написал все сделал)
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38194 / 21127 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
13.06.2015, 20:38
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Удалять цифры из строкового представления числа - тривиальное решение. Вот решение без строк:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Function delDig(n As Long, d As Long, Optional r As Long = 0) As Long
    If n = d Or n = 0 Then
       delDig = r
    Else
       nn& = n \ 10
       rr& = n Mod 10
       If rr& = d Then
         delDig = delDig(nn&, d, r)
       Else
         delDig = delDig(nn&, d, r) * 10 + rr&
       End If
    End If
End Function
 
Sub Test()
    Debug.Print delDig(354545, 5)
End Sub
1
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
13.06.2015, 20:49
Конечно, с точки зрения "правильности" и при уточнении вопроса, что заданная строка является числом (а тут еще может возникнуть проблема с проверкой "на число" и пр.) Математические способы решения не вызывают сомнения.
Но, ИМХО! одна строка вместо рекурентной функции в 13 строк более рациональна!
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38194 / 21127 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
14.06.2015, 08:58
Цитата Сообщение от Alex77755 Посмотреть сообщение
Но, ИМХО! одна строка вместо рекурентной функции в 13 строк более рациональна!
- рекурсия - это я нарочно... Можно и без рекурсии.
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
14.06.2015, 11:58
Цитата Сообщение от Alex77755 Посмотреть сообщение
Но, ИМХО! одна строка вместо рекурентной функции в 13 строк более рациональна!
Зато быстрее.
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
14.06.2015, 12:31
Ну да. С Replace быстрее.
И к тому же нет ограничения на целочисленное деление в 2 147 483 647
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
14.06.2015, 12:38
Цитата Сообщение от Alex77755 Посмотреть сообщение
Ну да. С Replace быстрее.
Нет. C replace никак не может быть быстрее, т.к. ты работаешь со строкой.
Вложения
Тип файла: rar Temp.rar (3.3 Кб, 8 просмотров)
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
14.06.2015, 13:26
C replace никак не может быть быстрее
Не может? Но у меня показывает наоборот
23, вроде больше 17?
Миниатюры
Удаление из натурального числа Х заданной цифры D  
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
14.06.2015, 14:27
Ну так ты скомпилируй и посмотри.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38194 / 21127 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
14.06.2015, 15:31
Цитата Сообщение от Alex77755 Посмотреть сообщение
И к тому же нет ограничения на целочисленное деление в 2 147 483 647
- давайте вникнем в методическую суть задачи.

1) если речь об умении удалять символы из строки - тогда, конечно, Replace$... Но задача становится тривиальной (в духе "теста" из "Чапаев и Пустота" В.Пелевина - "По какому объекту стрелял крейсер Аврора? Возможные ответы: ...)
2) если речь идет о числах, то, скорее всего, предполагается что-то менее тривиальное, чем вызов стандартной функции. А ограничение на размер чисел перестает играть роль.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.06.2015, 15:31
Помогаю со студенческими работами здесь

Из записи натурального числа N выбросить все цифры, кратные заданной
Вот такая вот задача. Из записи натурального числа N выбросить все цифры, кратные заданной, оставив прежним порядок остальных цифр. С...

Вычеркнуть все вхождения заданной цифры из записи натурального числа
Есть решение , нужно переделать с помощью рекурсивной функции или процедуры. Пожалуйста!!! var s, k: string; p, u, i: integer; ...

Вывести самую старшую цифру натурального числа, которая больше заданной цифры
Дано натуральное число. Вывести самую старшую его цифру, которая больше заданной цифры. Если таких цифр нет, то вывести 0. Пример:...

Для натурального числа определить истинность предиката «все цифры в записи числа равны»
Для натурального числа определить истинность предиката «все цифры в записи числа равны». Если предикат истинен, то вывести эту цифру.

Переставить первую и последнюю цифры числа натурального числа n
Переставить первую и последнюю цифры числа натурального числа n! Заранее спасибо!


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru