IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Курсовая задача, помогите, плизз
Florensita
сообщение 14.5.2007, 8:32
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 1
Регистрация: 14.5.2007
Город: Нижний Новгород
Учебное заведение: ННГУ
Вы: студент



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

Задан текст, состоящий из нескольких строк, каждая из которых в свою очередь состоит из слов, разделенных пробелами. Подсчитать количество слов в тексте, совпадающих с заданным ключевым словом. При проверке совпадения слов символ «*»(звездочка) в начале или в конце слова обрабатывать специальным образом: считать его признаком того, что в проверяемом слове на этом месте может находится непустая последовательность произвольной длины, состоящая из любых символов, кроме пробела. Можно считать, что символ «*» в ключевом слове встречается 1 раз.

Например: Ключевое слово «кор*» будет совпадать со словами «корпус», «корабль» и т.п. или слову «корпус» могут соответствовать ключевые слова «*пус», «корп*» и т.п. Случай включения ключевого слова можно не рассматривать(т. е. ключ «прав*» не соответствует слову «управление»)

Заранее спасибо. (IMG:style_emoticons/default/smile.gif)

Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
AlexDemche
сообщение 14.5.2007, 11:56
Сообщение #2


Студент
**

Группа: Продвинутые
Сообщений: 83
Регистрация: 18.3.2007
Город: Казань
Учебное заведение: Казанский Государственный Университет
Вы: преподаватель



Ну а Вы сами думали над этой самой звездочкой? Какие идеи?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Ботаник
сообщение 14.5.2007, 11:58
Сообщение #3


Аспирант
***

Группа: Активисты
Сообщений: 414
Регистрация: 1.3.2007
Город: Люберцы
Вы: другое



Звёздочку можно обрабатывать так:

Sub main()
Dim ИсходныйТекст As String
Dim Ключ As String
Dim ЗвёздочкаВпереди As Boolean
Dim ЗвёздочкаСзади As Boolean
Dim i As Integer, j As Integer, k As Integer
Const Пробел = " "

Debug.Print "---"
ИсходныйТекст = "Корабль с коркой плыл корпусом по морю субкорпускул"
'Добавляю пробелы в начало и в конец
ИсходныйТекст = Пробел & ИсходныйТекст & Пробел
Ключ = "кор*"

If (Left(Ключ, 1) = "*") Then
ЗвёздочкаВпереди = True
'Убираю звёздочку из ключа и добавляю пробел
Ключ = Right(Ключ, Len(Ключ) - 1) & Пробел
ElseIf (Right(Ключ, 1) = "*") Then
ЗвёздочкаСзади = True
'Убираю звёздочку из ключа и добавляю пробел
Ключ = Пробел & Left(Ключ, Len(Ключ) - 1)
End If

i = 1
Do
'Ищу строку ключа в тексте
j = InStr(i, ИсходныйТекст, Ключ)
If (j = 0) Then Exit Do
If (ЗвёздочкаСзади) Then
'Искать пробел правее ключа
k = InStr(j + 1, ИсходныйТекст, Пробел)
Debug.Print Mid(ИсходныйТекст, j, k - j)
End If
If (ЗвёздочкаВпереди) Then
'Искать пробел левее ключа
For k = j - 1 To 1 Step -1
If (Mid(ИсходныйТекст, k, 1) = Пробел) Then Exit For
Next k
If (k < 1) Then k = 1
Debug.Print Mid(ИсходныйТекст, k + 1, j - k + 1)
End If
i = j + 1
Loop
End Sub


Для ключа "*л" программа выдаёт:
---
плыл
субкорпускул

Для ключа "кор*" программа выдаёт:
---
Корабль
коркой
корпусом

Ха! Какой прикольный номер у моего сообщения: раз-два-три
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Diablo
сообщение 11.9.2007, 18:17
Сообщение #4


Новичок
*

Группа: Пользователи
Сообщений: 1
Регистрация: 11.9.2007
Город: Фрязино
Учебное заведение: МГУЛ
Вы: студент



Помогите написать в паскале курсовик плиз
задача звучит так:
Написать простейший текстовой редактор.

зы: зарание благодарен
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 29.4.2024, 4:33

Книжки в помощь: "Сборник заданий по высшей математике" Кузнецов Л.А., "Сборник заданий по высшей математике" Чудесенко В.Ф., "Индивидуальные задания по высшей математике" Рябушко А.П., и другие.




Зеркало сайта Решебник.Ру - reshebnik.org.ru