![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Преобразовать строку, заменив в ней каждую точку многоточием.
Вот программа: Код:
program stroka;
uses crt;
Var s1,s2:string;i:integer;
Begin
clrscr;
Writeln ('‚Введите строку: ');
read (s1);
for i:=1 to length(s1) do begin
if s1[i]='.' then
insert ('...',s1,i);
end;
writeln (s1);
Readkey;
end.Почему с помощью этой программы не получается ничего? Напишите пожалуйста подобную программу, чтобы она могла заменять точки в случае, если в исходной строке только точки, точки в начале, в конце и конечно же в середине строки. Буду очень благодарен! Последний раз редактировалось Admin, 28.03.2012 в 21:22. |
|
#2
|
|||
|
|||
|
Используй StringReplace или такой код:
Код:
function ReplaceDots(AStr : String) : String;
var
I : Integer;
begin
Result := '';
For I := 1 To Length(AStr) Do
If AStr[i] = '.' Then Result := Result + '...' Else Result := Result + AStr[i];
end; |
|
#3
|
|||
|
|||
|
Мне бы без функции, что бы в самой программе это выполнялось.
|
|
#4
|
||||
|
||||
|
Поменяй просто в своей версии
Код:
insert ('...',s1,i);Код:
Result := Result + '...' Else Result := Result + AStr[i]; Код:
s2:= s2 + '...' Else s2 := s2 + s1[i]; |
| Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение: | ||
sasha.belyi (30.03.2012)
| ||
|
#5
|
|||
|
|||
|
Могу ошибаться, но попробуй так:
Код:
for i:=1 to length(s1) do begin if s1[i]='.' then s2:=s2+'...' else s2:=s2+s1[i]; end; |
| Этот пользователь сказал Спасибо PS11011010 за это полезное сообщение: | ||
sasha.belyi (30.03.2012)
| ||
|
#6
|
|||
|
|||
|
Спасибо! Помогло!
|
|
#7
|
|||
|
|||
|
Для спасибо есть кнопочка
![]() |
| Этот пользователь сказал Спасибо PS11011010 за это полезное сообщение: | ||
sasha.belyi (30.03.2012)
| ||