1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Liba |
Сообщение
#1
|
|
Гость |
Помогите пожалуйста решить задачку нам ее на контрольной дали,но ничего не получилось написать...............хотьь я и списала у одногрупника( и не я одна) он сказал вот вы у него списали я вам не засчитаю.....помогите плиз :molitva:
Задача такая:Задана строка,состоящая из слов латинского алфавита,разделенное одним или несколькими пробелами и знаками препинаниями(запетая,двоеточние,тире,точк, и т.д.) Требуется: 1)выделить слоа из строки и сформулировать массив слов(максимальное количество строк n,а максимальное длина слов m;n=5.m=15). 2)Объединить в новую строку и в ней требуется найти подстроку неповторяющихся символов максимальной длины. 3)Найти набор символов, которые входят в каждые из нечетных слов,но е входят в состав найденый в предыдущем пункте подстроки. Заранее вам огромное спасибо!!!!!!!!! Решите пожалуйста очень надо в понедельник сдать ;) |
![]() ![]() |
| volvo |
Сообщение
#2
|
|
Гость |
Liba
Сама просила... (одно замечание - эта программа работает только со строчными буквами. Если нужна работа и с заглавными - говори, я исправлю) Код Type TWords = Array[1 .. 5] Of String[15]; Function GetWords(s: String; Var mas: TWords): Byte; Var i, j, p: Byte; Const Other = [',', '.', '-', ':', ';']; Begin For i := 1 To Length(s) Do If s[i] In Other Then s[i] := ' '; Repeat p := Pos(' ', s); If p > 0 Then Delete(s, p, 1) Until p = 0; If s[1] = ' ' Then Delete(s, 1, 1); If s[Length(s)] = ' ' Then Delete(s, Length(s), 1); i := 0; Repeat p := Pos(' ', s); Inc(i); If p > 0 Then Begin mas[i] := Copy(s, 1, Pred(p)); Delete(s, 1, p) End Else mas[i] := s Until p = 0; GetWords := i End; Const s: String = 'this is just a test'; Var s2: String; i, Count: Byte; arr: TWords; Var Ch: Char; InWord, InAll, Exists: Set Of Char; j, start, cnt, max_cnt: Byte; Begin { Part 1 } Count := GetWords(s, arr); { Part 2 } s2 := ''; For i := 1 to Count Do s2 := s2 + arr[i]; max_cnt := 0; For i := 1 To Length(s2) - 1 Do Begin Exists := []; j := i; cnt := 0; While (j <= Length(s2)) and (not (s2[j] In Exists)) Do Begin Exists := Exists + [s2[j]]; Inc(j); Inc(cnt) End; If max_cnt < cnt Then Begin max_cnt := cnt; start := i; End; End; { Part 3 } Exists := []; For i := 0 to Pred(max_cnt) Do Exists := Exists + [s2[start + i]]; {**** Добавлено для работы с заглавными буквами *****} InAll := ['a' .. 'z', 'A' .. 'Z']; i := 1; While i <= Count Do Begin InWord := []; For j := 1 To Length(arr[i]) Do InWord := InWord + [arr[i][j]]; InAll := InAll * InWord; Inc(i, 2) End; Exists := Exists - InAll; For Ch := 'a' To 'z' Do If Ch In Exists Then Write(Ch, ' '); WriteLn; End. Liba, теперь программа должна работать и с заглавными тоже... Сообщение отредактировано: volvo - |
Liba Задача на строки 4.12.2004 5:50
volvo Liba
Здесь - последний пост 4.12.2004 5:55
Liba Я уже помоему весь форум прочитала аж глазки болят… 4.12.2004 6:00
volvo Ну и для кого делается ФАК? По ссылке лежит функци… 4.12.2004 6:06
Liba Не учто вся функция решает всю программу???? 4.12.2004 6:13
volvo :no: Только первый пункт... Но если не будет перво… 4.12.2004 6:15
Liba Я тебя прошу ты же знаешь как писать эту прогу....… 4.12.2004 6:21
volvo
то есть записать все слова слитно, без пробелов ? 4.12.2004 6:28
Liba знаешь он нам этого не сказал...я переписала досло… 4.12.2004 6:31
Liba Спасибочки!!!!!!!… 4.12.2004 7:17
Liba А еще не мог бы ты условно поставить где 1,где 2,г… 4.12.2004 7:18
volvo Liba
Там же стоит - Part 1, Part 2, Part 3 ... :ro… 4.12.2004 8:12
Liba ААА я просто не заметила!!!!!… 4.12.2004 21:03
volvo Liba
Зарегистрируйся на форуме, и получишь доступ … 4.12.2004 21:05
Liba Ок...псибки 4.12.2004 21:12
Liba Скажи пожалуйста как избавится здесь от ошибки про… 7.12.2004 3:57
volvo Liba
Я только что прогнал программу в Дельфи:
pr… 7.12.2004 4:05
Liba теперь нету спасибо)))) :flowers: 7.12.2004 4:07![]() ![]() |
|
Текстовая версия | 7.11.2025 21:01 |