![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Студентик13 |
![]() ![]()
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Здесь строковая задача. т.е работа с текстом. Я эту тему не понял. Помогите кто сможет.
Заранее благодарен. Дана последовательность слов. Напечатать все слова, предварительно выполнив преобразования их по правилу: а) заменить во всех словах первую букву заглавной; б) в словах наибольшей длины удалить среднюю (средние) букву; в) заменить в каждом слове первую встреченную букву “а” на “о”. -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
![]() ![]() |
Ozzя |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 220 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вытаскиваешь слова в массив
http://forum.pascalnet.ru/index.php?s=&sh...indpost&p=28059 а) UpCase в) Код for i:=1 to length(s) do if s[i]='a' then begin s[i]:='o'; break; end; Сообщение отредактировано: Ozzя - 11.01.2006 17:12 |
Студентик13 |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
OzzЯ а поподробней можно я не оракул чтоб видеть то чего нет.
-------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Тебе дали ссылку на готовые функции разбиения строки на слова. В чем теперь у тебя проблема, объясни...
|
APAL |
![]()
Сообщение
#5
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Здесь не нужно быть оракулом, достаточно воспользваться поиском по форуму и заглянуть в раздел F.A.Q.!
-------------------- |
Студентик13 |
![]()
Сообщение
#6
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Я искал по форуму, в программах которые я видел не было "заменить в каждом слове первую встреченную букву “а” на “о”." и не было ") в словах наибольшей длины удалить среднюю (средние) букву;"
Код program WordsToArray; uses crt; type TArray=array[1..100]of string; {функция заполняет возвращает массив mas словами из строки s} procedure GetWords(s:string; var mas:TArray); var i,j:shortint; begin while pos(' ',s)<>0 do delete(s,pos(' ',s),1); if s[1]=' ' then delete(s,1,1); if s[length(s)]=' ' then delete(s,length(s),1); {удаляем лишние пробелы} i:=1; for j:=1 to length(s) do if s[j]<>' ' then mas[i]:=mas[i]+s[j] else if i<>high(mas) then inc(i); {заполняем массив словами из строки} end; var s:string; mas:TArray;i:shortint; begin clrscr; write('> '); readln(s); GetWords(s,mas); for i:=1 to high(mas) do if mas[i]<>'' then writeln(i,' - ',mas[i]); end. и здесь ничего подобного не было и в других прогах тоже ![]() ![]() ![]() -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Ты сразу за все-то не хватайся... По очереди...
Разбей строку на слова, пройди по ним, и замени в каждом их них первую букву на заглавную.. Алгоритм - в моем модуле в "FAQ: Строки"... Потом берись за вторую часть... Ты же создал десяток тем и СРАЗУ хочешь все сделать. Так не бывает... |
Студентик13 |
![]()
Сообщение
#8
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Да так не бывает но нижно и попробовать.
-------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
Студентик13 |
![]()
Сообщение
#9
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Хорошо оформленно и все понятно
Цитата Модуль для работы со строками Содержит ряд функций для работы со строковыми переменными. Функции разбиты на насколько групп: Функции проверки: Функции, начинающиеся с Is... предназначены для проверки принадлежности символов строки к определенным группам. Все они возвращают логическое значение (True/False). Функция Is... проверяет, "является ли символ Ch..." -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
Студентик13 |
![]()
Сообщение
#10
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Код Const s:String = ('N'); var N:string; count:text; Begin write('Ââåäèòå òåêñò'); Read(N); Count:=GetWords(s,['-', ';', '.']); WriteLn(Count, ' words found ...'); End. Прога у меня не работает говорит что ошибка в Count:=GetWords(s,['-', ';', '.']); не понимаю,возможно можно упростить тут Код Const s:String = ('N'); var N:string; если да то как не помню но вроде что-то простое ![]() ![]() -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
volvo |
![]()
Сообщение
#11
|
Гость ![]() |
Цитата Прога у меня не работает говорит что ошибка А где у тебя собственно функция GetWords описана? Ты ничего не сделал: ни модуль подключить, ни саму функцию скопировать не догадался. Как же ты хочешь, чтобы это работало? |
Студентик13 |
![]()
Сообщение
#12
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Код Const maxWords = 100; Type TWords = Array[1 .. maxWords] Of String; Function GetWords(s: String; Var mas: TWords): Byte; var count:text; TWords:stringe; Begin write('string'); read(TWords); Count:=GetWords(TWords,['-', ';', '.']); WriteLn(Count, ' words found ...'); End. Может так точно не знаю но не работает Сообщение отредактировано: Студентик13 - 11.01.2006 23:33 -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
Гость |
![]()
Сообщение
#13
|
Гость ![]() |
Ты для начала книжку какую-нибудь почитай по Паскалю, а то, знаешь ли, тебе надо все с САМЫХ основ объяснять...
|
Студентик13 |
![]()
Сообщение
#14
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 53 Пол: Мужской Реальное имя: Николай Репутация: ![]() ![]() ![]() |
Память плохая
![]() -------------------- Учение есть учение, а свет есть свет и ненадо обобщать.
|
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 17:09 |