![]() |
|
|
Регистрация | << Правила форума >> | 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
|
|||
|
|||
![]() Спасибо! Помогло!
|