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

Поиск слова в словаре

22.06.2015, 01:48. Показов 1965. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Поиск слова в словаре. Все слова словаря хранятся в массиве. В отдельном текстовом поле вывести найденное слово и наиболее близкие к нему варианты (однокоренное, начинающееся на ту же последовательность букв). В другое текстовое поле вывести все слова словаря. Предусмотреть поле для ввода отыскиваемого слова.
Миниатюры
Поиск слова в словаре  
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.06.2015, 01:48
Ответы с готовыми решениями:

Поиск нужного слова в словаре, в котором слова расположены в лексикографическом порядке
Напишите задачу поиска нужного слова в словаре, в котором слова расположены в лексикографическом порядке(бинарный поиск). решить надо...

Поиск слова в словаре
У меня есть большой текст и словарь на ~100 000 слов. Нужно найти в этом тексте все слова с помощью словаря и посчитать их встречаемость. ...

Не работает бинарный поиск слова в словаре
Вторую неделю пытаюсь поймать ошибку в программке на С. Моя реализация бинарного поиска в словаре. Не могу понять что я упускаю - вроде все...

12
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
22.06.2015, 06:18
однокоренное, однако, будет найти сложновато: нужно будет выделить корень из введённого слова. А это не всегда просто сделать программно.
Судя по скрину что-то уже сделано.
Выкладывай проект с наработками, задавай конретные вопросы - поможем разобраться с остальным.

Добавлено через 2 минуты
Ну а в помощь строковый функции Left, Mid
Основные функции
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
22.06.2015, 07:55
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Цитата Сообщение от Alex77755 Посмотреть сообщение
нужно будет выделить корень из введённого слова
Если очень грубо принять что корень - это, допустим, 4 подряд идущие буквы в слове, то можно сделать так:
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
Option Explicit
Option Compare Text
Dim Arr
Const MinLen As Integer = 4
Private Sub Command1_Click()
    Dim i As Long, j As Integer, s As String, st As String, n As Long
    Text2.Text = ""
    For j = 1 To Len(Trim(Text3.Text)) - MinLen + 1
        st = Mid(Trim(Text3.Text), j, MinLen)
        For i = 0 To UBound(Arr)
            If Arr(i) Like "*" & st & "*" Then
                  s = s & Arr(i) & vbCrLf
                  n = n + 1
            End If
        Next i
    Next j
    Text2.Text = s
    MsgBox IIf(n = 0, "Поиск не дал результатов.", "Найдено " & n & " слов")
End Sub
 
Private Sub Form_Load()
    Dim ff As Integer, st As String
    ff = FreeFile
    Open App.Path & "\Dictionary.txt" For Input As #ff
        st = Input(LOF(ff), ff)
    Close #ff
    Text1.Text = st
    Arr = Split(st, vbCrLf) '14832
End Sub
Миниатюры
Поиск слова в словаре  
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
22.06.2015, 09:08
В том-то и дело, что грубо:
словечечко - Кисловодск - ловелас - овечка - соловей - тяжеловес - пуловер - монголовед - печечка - свечечка темечко - утречко........
И ещё сотни 2 окажутся однокоренными
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
22.06.2015, 09:35
Цитата Сообщение от Alex77755 Посмотреть сообщение
И ещё сотни 2 окажутся однокоренными
Const MinLen As Integer = 5 (6, 7 ....и т.д.)

А что делать? Разбор слова на приставки-корни-суффиксы-окончания?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
22.06.2015, 11:06
Даже не знаю
пролесок корень лес?
А по этому сочетанию найдётся 189 слов от блеска до электропылесоса
Кликните здесь для просмотра всего текста
автолесовоз
автомобилестроение
автослесарь
агролесомелиоратор
агролесомелиорация
анофелес
безлесье
блеск
блесна
блестка
блесточка
блестянка
бурлеск
ветроколесо
взблеск
взблескивание
всплеск
всплескивание
выплеск
выплескивание
геркулес
деталесмена
дирижаблестроение
доблесть
залесье
землесос
зенит-телескоп
картофелесажалка
картофелесортировка
клест
коалесценция
колесико
колесник
колесник
колесница
колесо
колесование
коноплесноповязалка
кораблестроение
кораблестроитель
кораблестроительство
лес
лес
леса
лесбиянка
лесенка
лесина
лесишко
лесище
леска
лесник
лесничество
лесничий
лесоведение
лесовик
лесовод
лесоводство
лесовоз
лесовозобновление
лесогон
лесозавод
лесозаготовки
лесок
лесокомбинат
лесокультура
лесоматериал
лесомелиоратор
лесомелиорация
лесонасаждение
лесоохранение
лесопарк
лесопиление
лесопилка
лесопильня
лесопитомник
лесоповал
лесополоса
лесопосадка
лесопромышленник
лесопункт
лесоразведение
лесоразработки
лесорасчистка
лесоруб
лесосад
лесосека
лесосплав
лесоспуск
лесостепь
лесотаска
лесоторговец
лесоторговля
лесотундра
лесоукладчик
лесоустройство
лесоучасток
лесохимик
лесохимия
лесочек
лесоэксплуатация
лесоэкспорт
леспромхоз
лесс
лессировка
лестница
лестничка
лестовка
лесть
лесхоз
лесхозовец
малолесье
мелколесье
многолесье
молескин
нахлестка
нецелесообразность
обезлесение
облесение
околесина
околесица
околесная
опалесценция
отблеск
отплеск
палестина
палестины
палестра
пелесина
перелеска
перелесок
перелесье
плес
плесень
плеск
плескание
плесневица
плессиметр
подлесник
подлесок
подлесье
подхлестка
полесовщик
полесье
послесвечение
послесловие
прелестница
прелесть
проблеск
пролесок
пылесос
радиотелескоп
разнолесье
редколесье
рекалесценция
реконвалесценция
росплеск
рукоплескания
слесарня
слесарство
слесарь
слесарь-инструментальщик
слесарь-сантехник
слесарь-сборщик
солесодержание
солесос
солестойкость
старолесье
талес
телеса
телесигнализация
телескоп
телескопия
телеспектакль
телестанция
телестереоскоп
телестих
телестудия
тоннелестроение
тулес
туннелестроение
углесос
хлестаковщина
холестерин
целесообразность
целестин
челеста
чернолесье
шелест
электропылесос


Добавлено через 11 минут
А если из пролеска брать 5 букв, то и пролетариат, и пролежень, и колесо, и солесос

Добавлено через 2 минуты
Так что с однокоренными проблема.
Вот начинающися на ту же послодовательность букв ближе к истине
0
1 / 1 / 1
Регистрация: 29.05.2015
Сообщений: 44
22.06.2015, 11:46  [ТС]
По такому коду,когда вводишь слово,выводит не однокоренное, а это же слово
VB.NET
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Public Class Form1
    Dim A(21) As String, s As String, n As Long
    Const MinLen As Integer = 4
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim I As Integer, j As Integer, st As String
        TextBox1.Focus()
        s = TextBox1.Text
        For I = 1 To n
            A(1) = "арбуз"
            A(2) = "морковь"
            A(3) = "машина"
            A(4) = "город"
            A(5) = "звезда"
            A(6) = "кино"
            A(7) = "луна"
            A(8) = "зебра"
            A(9) = "лимон"
            A(10) = "круг"
            RichTextBox1.Text = RichTextBox1.Text + A(I) + vbCrLf
        Next I
        For I = 1 To n
            If (A(I) = s) Then
                RichTextBox2.Text = s
            End If
        Next
 
        For j = 1 To Len(Trim(RichTextBox1.Text)) - MinLen + 1
            st = Mid(Trim(RichTextBox1.Text), j, MinLen)
            For I = 0 To UBound(A)
                If A(I) Like "*" & st & "*" Then
                    s = s & A(I) & vbCrLf
                    n = n + 1
                End If
            Next I
        Next j
        RichTextBox2.Text = s
        MsgBox(If(n = 0, "Поиск не дал результатов.", "Найдено " & n & " слов"))
    End Sub
 
        
 
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        TextBox1.Clear()
        RichTextBox1.Clear()
        RichTextBox2.Clear()
    End Sub
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Close()
    End Sub
End Class
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38177 / 21112 / 4307
Регистрация: 12.02.2012
Сообщений: 34,716
Записей в блоге: 14
22.06.2015, 12:15
Цитата Сообщение от Николайка Посмотреть сообщение
наиболее близкие к нему варианты
- можно искать минимизацией расстояния Левенштейна
0
1 / 1 / 1
Регистрация: 29.05.2015
Сообщений: 44
22.06.2015, 13:08  [ТС]
это как?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
22.06.2015, 13:44
Николайка, не в тот раздел постишь
Если ваш бэйсик выдает конструкции типа Imports System, sender As Object, Public Class Form1, то вам СЮДА!

Добавлено через 3 минуты
Зачем этот цикл?
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
        For I = 1 To n
            A(1) = "арбуз"
            A(2) = "морковь"
            A(3) = "машина"
            A(4) = "город"
            A(5) = "звезда"
            A(6) = "кино"
            A(7) = "луна"
            A(8) = "зебра"
            A(9) = "лимон"
            A(10) = "круг"
            RichTextBox1.Text = RichTextBox1.Text + A(I) + vbCrLf
        Next I
тем более n ещё не назначена и цикл выполняться не будет
0
1 / 1 / 1
Регистрация: 29.05.2015
Сообщений: 44
22.06.2015, 13:55  [ТС]
Так как в задании сказано, что слова хранятся в массиве
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
22.06.2015, 15:00
n ещё не назначена и цикл выполняться не будет
Да и при таком назначении цикл не нужен!
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38177 / 21112 / 4307
Регистрация: 12.02.2012
Сообщений: 34,716
Записей в блоге: 14
22.06.2015, 15:26
Цитата Сообщение от Николайка Посмотреть сообщение
это как?
- это так. А вот еще хорошая статья
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.06.2015, 15:26
Помогаю со студенческими работами здесь

Для заданного длинного слова найти в словаре все слова
Для заданного длинного слова найти в словаре все слова, в которых использованы только буквы, которые присутствуют в заданном слове ...

Рандомные слова в словаре
Добрый день. И с праздником дорогие женщины! Так, опишу проблему: Есть у меня словарь Dictionary в котором находятся англ слова и рус....

Подчеркнуть слова не содержащиеся в словаре
Извините что не написал хоть строчки кода, но очень плохо разобрался с типом string Входные данные должны быть такие В первой строке...

Найти слова , которых нет в словаре
Всем доброго времени суток, помогите решить следующую задачу: Дан текст и словарь, найти слова, которых нет в словаре.

Поиск по значению в словаре
Доброго времени суток. Нужна структура, представляющая коллекцию ключ - значение, в которой наиболее быстро идет поиск по значению. Пока...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 19.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru