С Новым годом! Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
1

Подсчитать количество вхождений буквы в слово

07.12.2010, 00:17. Показов 5117. Ответов 24
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В общем надо посчитать кол-во вхождений буквы а в слово. прога есть,но цикл не работает, условие не подходит. Помогите,если не сложно.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub CommandButton1_Click()
     S = TextBox1.Text
     S = Replace(S, "  ", " ")
     S = Trim(S)
     k = TextBox2
     S1 = Split(S)
     TextBox4 = S1(k - 1)
     S2 = TextBox4
     S2 = LCase(S2)
     kol = 0
     b = 1
     a = 0
     Dlina = CStr(Len(S2))
     Do
        b = InStr(a + 1, S2, "a")
        kol = kol + 1
        S2 = Right(S2, Dlina - b)
        Dlina = CStr(Len(S2))
     Loop While b = Dlina
     TextBox3 = kol
End Sub
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.12.2010, 00:17
Ответы с готовыми решениями:

Подсчитать число вхождений буквы в строку
Очень надо,пожалуйста,подскажите,как можно подсчитать кол-во буквы "а" в строке S2. Строка - это...

подсчитать количество вхождений буквы
дана строка A$ , подсчитать количество вхождений буквы Е

Подсчитать количество вхождений заданной буквы в последнее слово массива
Условие: Дано массив символов, содержащий текст. подсчитать количество вхождений заданной буквы в...

Количество вхождений первой буквы в слово
Задача такая: Нужно создать текстовый документ там вписать несколько строк со словами. Программа...

24
Заблокирован
07.12.2010, 12:41 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от Don't_KnowVBA Посмотреть сообщение
a + 1
зачем это?

Добавлено через 2 минуты
Цитата Сообщение от Don't_KnowVBA Посмотреть сообщение
Dlina = CStr(Len(S2))
это то же что-то не то. Вот так надо:
Visual Basic
1
Dlina = Len(S2)
Добавлено через 20 минут
И ещё у тебя поиск осуществлялся английской буквы "а".
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub CommandButton1_Click()
     S = TextBox1.Text
     S = Replace(S, "  ", " ")
     S = Trim(S)
     k = TextBox2
     S1 = Split(S)
     TextBox4 = S1(k - 1)
     S2 = TextBox4
     S2 = LCase(S2)
     kol = 0
     Dlina = Len(S2)
     Do
        If InStr(S2, "а") > 0 Then
            b = InStr(S2, "а")
            kol = kol + 1
            S2 = Right(S2, Dlina - b)
            Dlina = Len(S2)
        Else
            Exit Do
        End If
     Loop
     TextBox3 = kol
End Sub
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 18:23  [ТС] 3
Спасибо большое,уже вроде сама разобралась,единственное что...можно ли сделать так,чтобы она считала и английские и русские?

Добавлено через 3 минуты

Цитата Сообщение от Busine2009 Посмотреть сообщение
Dlina = CStr(Len(S2))
а это у меня просто выводит не кол-во букв в К-ом слове,а само К-ое слово.
0
Заблокирован
08.12.2010, 18:26 4
Здесь был неправильный код.
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 18:28  [ТС] 5
для наглядности,так сказать))

Добавлено через 1 минуту
Ой,вот тупица))))Спасибо большое,вы меня очень выручили,теперь есть надежда сдать ползачета))
0
Заблокирован
08.12.2010, 18:30 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Visual Basic
1
Dlina = CStr(Len(S2))
Visual Basic
1
Dlina = S2
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Private Sub CommandButton1_Click()
     s = TextBox1.Text
     s = Replace(s, "  ", " ")
     s = Trim(s)
     k = TextBox2
     S1 = Split(s)
     TextBox4 = S1(k - 1)
     S2 = TextBox4
     S2 = LCase(S2)
     kol = 0
     Dlina = Len(S2)
     Do
        If InStr(S2, "а") > 0 Then
            b = InStr(S2, "а")
            S2 = Right(S2, Dlina - b)
            Dlina = Len(S2)
            kol = kol + 1
        Else
            Exit Do
        End If
     Loop
     S2 = TextBox4
     S2 = LCase(S2)
     Dlina = Len(S2)
     Do
        If InStr(S2, "a") > 0 Then
            b = InStr(S2, "a")
            S2 = Right(S2, Dlina - b)
            Dlina = Len(S2)
            kol = kol + 1
        Else
            Exit Do
        End If
     Loop
     TextBox3 = kol
End Sub
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 18:42  [ТС] 7
Вы меня так выручили,спасибо вам огромное!
Скажите,последний вопрос. Преверка вводимых данных,это по идее чтобы мне выдавало ошибку,если число?или как?
Если это проверка на нечисло,то возникает вопрос:Осуществить это можно только по ASCII коду?
0
Заблокирован
08.12.2010, 18:46 8
Цитата Сообщение от Don't_KnowVBA Посмотреть сообщение
Преверка вводимых данных
- это проверка вводимых данных. Это как проверка билетов на входе в какое-нибудь заведение.

А что конкретно надо?

P.S. I too do not know VBA, but i it (VBA) try learn.
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 18:57  [ТС] 9
Я тоже стараюсь его освоить, только вот начала буквально несколько дней назад))
В том то и дело,не знаю. просто написано что ввод/вывод в форме с проверкой вводимых данных. Вот знать бы что ему проверять надо.
0
Заблокирован
08.12.2010, 19:02 10
Цитата Сообщение от Don't_KnowVBA Посмотреть сообщение
что ввод/вывод в форме с проверкой вводимых данных.
а что за форма то?
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 19:15  [ТС] 11
Ну форма UserForm которая)))) можно ж еще в модуле делать или там просто на Листе делать,если ввод с листа идет и вывод на лист,ну или через MessageBox
0
Заблокирован
08.12.2010, 19:17 12
Don't_KnowVBA,
а с чем хоть связано задание на проверку вводимых данных? С этой темой или вообще ни с чем?
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 19:25  [ТС] 13
да,это продолжение этой проги
0
Заблокирован
08.12.2010, 19:33 14
Don't_KnowVBA,
можно вот если по-простому:
Visual Basic
1
2
3
4
5
6
7
Sub Тут нажатие кнопки()
If IsNumeric(TextBox1) = True Then
    MsgBox "Должна быть текстовая информация"
    TextBox1.SetFocus
    Exit Sub
End If
End Sub
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
08.12.2010, 19:39  [ТС] 15
Да,спасибо,я вот туже подумала,что скорей всего на число. Очень вам благодарна)))
0
1687 / 559 / 74
Регистрация: 10.04.2009
Сообщений: 9,155
15.12.2010, 15:54 16
Цитата Сообщение от Don't_KnowVBA Посмотреть сообщение
надо посчитать кол-во вхождений буквы "а" в слово
И для этого скрипт из 36 строк, с ума сойти, короче никак нельзя????, на него страшно смотреть, в плане того, что большой он
Я не посмотрел в коде, проверка есть, есть ли она там вообще, эта буква "а" в слове???
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
15.12.2010, 21:49  [ТС] 17
зря возмущаетесь,работает отлично при ЛЮБЫХ данных))))
0
1687 / 559 / 74
Регистрация: 10.04.2009
Сообщений: 9,155
16.12.2010, 02:14 18
1 строка кода и всё, приведите пример, когда это не сработает
Visual Basic
1
2
3
Текст = "Эта теставый текст"
Текст_который_ищем = "а"
Количество_вхождений_переменной_в_строку_Текст = Len(Текст) - Len(Replace$(Текст, Текст_который_ищем, ""))
0
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 28
16.12.2010, 22:25  [ТС] 19
если ввести русские и английские,работать также будет тока на 1м языке,либо русский либо английский. ИМХО
0
1687 / 559 / 74
Регистрация: 10.04.2009
Сообщений: 9,155
17.12.2010, 03:37 20
Ну пусть так в два захода, но не 36 же строк!!!!
Visual Basic
1
2
3
4
5
6
7
Текст = "Эта теставый текст"
Текст_который_ищем_р = "а" руская
Количество_вхождений_переменной_в_строку_Текст_р = LEN(Текст) - LEN(Replace$(Текст, Текст_который_ищем, "")) 
Текст = "Эта теставый текст"
Текст_который_ищем_анг = "а" англ
Количество_вхождений_переменной_в_строку_Текст_а = LEN(Текст) - LEN(Replace$(Текст, Текст_который_ищем, "")) 
Количество_вхождений_переменной_в_строку_Текст = Количество_вхождений_переменной_в_строку_Текст_а + Количество_вхождений_переменной_в_строку_Текст_р
1
17.12.2010, 03:37
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.12.2010, 03:37
Помогаю со студенческими работами здесь

В тексте подсчитать количество вхождений заданной буквы
помогите пожалуста написать програму: "в тексте подсчитать количество вхождений заданной буквы."

Строки. Подсчитать количество вхождений каждой буквы.
Задан текст. Определить количество повторений для каждой латинской буквы. Данные о буквах вывести в...

В данной строке подсчитать количество вхождений каждой буквы
В данной строке подсчитать количество вхождений каждой буквы

Подсчитать количество вхождений заданной буквы в исходном тексте
Добрый день друзья , помогите решить в С маленькую задачку. Подсчитать кол-во букв А в предложении...

Найти слово, содержащее наибольшее количество вхождений данной буквы
Описать функцию f (x, y) - количество букв х в слове y. Составить программу, которая находит слово,...

Найти в файле заданное слово и подсчитать количество его вхождений в файл.
Решите пожалуйста задачу. Задан текстовый файл. Разработать программу поиска в файле заданного...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Блоги программистов
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
Полезные поделки на Arduino, которые можно сделать самому
raxper 06.01.2025
Arduino как платформа для творчества Arduino представляет собой удивительную платформу для технического творчества, которая открывает безграничные возможности для создания уникальных проектов. Эта. . .
Подборка решений задач на Python
IT_Exp 06.01.2025
Целью данной подборки является предоставление возможности ознакомиться с различными задачами и их решениями на Python, что может быть полезно как для начинающих, так и для опытных программистов. . . .
С чего начать программировать микроконтроллер­­ы
raxper 06.01.2025
Введение в мир микроконтроллеров Микроконтроллеры стали неотъемлемой частью современного мира, окружая нас повсюду: от простых бытовых приборов до сложных промышленных систем. Эти маленькие. . .
Из чего собрать игровой компьютер
inter-admin 06.01.2025
Сборка игрового компьютера требует особого внимания к выбору комплектующих и их совместимости. Правильно собранный игровой ПК не только обеспечивает комфортный геймплей в современных играх, но и. . .
Обновление сайта www.historian.b­y
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
Модель полного двоичного сумматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list): s=^y] p=x and y for i in range(1,len(x)): s. append((x^y)^p) p=(x and y)or(p and (x or y)) return s x=list() y=list()
Это мы не проходили, это нам не задавали...(аси­­­­­­­­­­­­­­­­­­­­­­х­р­о­н­н­ы­­й счётчик с управляющим сигналом задержки)
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru