Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2013, 18:53   #1
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию Дана строка, состоящая из русских слов, набранных заглавными бук- вами и разделенных пробелами (одним или несколькими). Преобразо

Дана строка, состоящая из русских слов, набранных заглавными бук- вами и разделенных пробелами (одним или несколькими). Преобразовать каждое слово в строке, заменив в нем все последующие вхождения его первой буквы на символ «.» (точка). Например, слово «МИНИМУМ» на- до преобразовать в «МИНИ.У.». Количество пробелов между словами не изменять.
даже не знаю с чего начать программу.
nadyaH вне форума Ответить с цитированием
Старый 14.11.2013, 19:13   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
c:=s[1];
s:=StringReplace(s,c,'.',[rfreplaceall]); 
s[1]:=c;
Годится идея?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.11.2013, 20:48   #3
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

var
s:string;
c:char;
begin
c:=s[1];
s:=StringReplace(s,c,'.',[rfreplaceall]);
s[1]:=c;
end;
edit2.text:=c;/// а как заменить эту строку?
end.
nadyaH вне форума Ответить с цитированием
Старый 14.11.2013, 20:55   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как заменить эту строку?
Какую строку?
Ты идею даже не попыталась понять, поэтому обьясняю на пальцах: Есть функция StringReplace, в стандартном Делфи, Фрипаскале и где-то возможно еще.
Что она делает? Она заменяет все совпадения в строке, которые характеризируются вторым параметром на то что передается третим параметром. Если указан флаг rfreplaceall, замена происходит по всей строке, везде где только будет найдено то что во втором параметре. После замены она возвращает новую строку с уже замененными элементами.

А теперь хорошенько посмотри на свой код и ответь - что у тебя не так.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.11.2013, 21:24   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Фрипаскале
Stilet
Зная, что она есть в Фри, ты молчал?
Я то по старинке ручками всё менял.. А тут..
Огроменное спасибо!

Цитата:
Код:
c:=s[1];
s:=StringReplace(s,c,'.',[rfreplaceall]);
s[1]:=c;
Предлагаю так :
Код:
s := s[1] + StringReplace (Copy (s, 2, Length(s), c, '.', [rfReplaceAll]);
Poma][a вне форума Ответить с цитированием
Старый 14.11.2013, 21:44   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
ты молчал?
Ты не спрашивал.
И потом я не знаю насколько чистая Фраха отличается от Лазаря, в лазаревском паке эта функа есть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 14.11.2013, 21:51   #7
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Ты не спрашивал.
Тоже верно... НО..
Цитата:
И потом я не знаю насколько чистая Фраха отличается от Лазаря
В модуле SysUtils в Фришечке есть..
(Ушел за Лазарем..)
Poma][a вне форума Ответить с цитированием
Старый 15.11.2013, 12:37   #8
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

Код:
function Length ( const SourceString : string ) : Integer;
var
d:string;
i:integer;
o:String; // ðåçóëüòèðóþùàÿ ñòðîêà
S:char; // ïåðâûé ñèìâîë ñëîâà
begin
d:=edit1.Text;
S:=D[1];
for i:=1 to length(D) do
begin
if D[i]=S then O:=S;
 IF D[i]=S THEN o:=o+'.'
 else o:=o+D[i];
if (D[i]=' ')and(D[i+1]<>' ') then S:=D[i+1];
end;
BEGIN
edit2.Text:=O;
END;END.
НАПИСАЛА ТАК. ОШИБКА В КОНЦЕ ГДЕ-ТО. НЕ ЗНАЮ ИЗ-ЗА ЧЕГО
nadyaH вне форума Ответить с цитированием
Старый 15.11.2013, 12:57   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
ОШИБКА В КОНЦЕ ГДЕ-ТО
Каково проявление ошибки? В чем она выражается?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.11.2013, 13:04   #10
nadyaH
Форумчанин
 
Регистрация: 24.10.2013
Сообщений: 130
По умолчанию

END не нравится в конце программы.ошибку выдаёт.
nadyaH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дана строка, состоящая из русских слов, разделенных пробелами (одним или несколькими). Odinsoon Паскаль, Turbo Pascal, PascalABC.NET 0 24.04.2013 18:46
Задача делфи! Дана строка символов, состоящая из произвольных десятичных цифр, разделенных пробелами.Вывести четные числа строки ethic Помощь студентам 0 17.04.2013 22:08
Дана строка, состоящая из русских слов, набранных заглавными буквами и разделенных пробелами (одним или несколькими) NeLIN Общие вопросы C/C++ 1 12.12.2012 23:07
. Задана строка символов. состоящая из отдельных слов, разделенных пробелами. Преобразовать ее, оставив в ней только первые два Proskurina Паскаль, Turbo Pascal, PascalABC.NET 1 29.05.2012 19:35
дана строка символов ,разделённые пробелами(одним или несколькими) и не содержащие пробелов внутри себя,б Aktor1992 Паскаль, Turbo Pascal, PascalABC.NET 1 12.04.2011 22:19