Технический форум

Технический форум (http://www.tehnari.ru/index.php)
-   Помощь студентам (http://www.tehnari.ru/forumdisplay.php?f=41)
-   -   Дописать две строчки в Pascal (http://www.tehnari.ru/showthread.php?t=60921)

shrek=) 08.12.2011 11:01

Дописать две строчки в Pascal
 
Дана строка преобразовать ее, заменив группы рядом стоящих точек, одной точкой
вот что я придумал:
Код:

var
s:string;
i,j:integer;
begin
writeln ('Input string');
readln (s);
for i:=1 to length(s) do begin
j:=i+1;
if (s[i]='.') and (s[i+1]='.') then begin
delete(s,i,2);
insert('.',s,i);
end;
end;
write (s);
readln
end.


Vladimir_S 08.12.2011 11:20

Не, Миш - не фонтан! Если точек больше двух, то Ваша программа оставляет две точки, а не одну. Да и j там явно лишний... Вот работающий вариант:
Код:

var
 s:string;
 i:integer;
begin
 writeln ('Input string');
 readln (s);
 i:=0;
 Repeat
  Inc(i);
  If i<Length(s) then
  if (s[i]='.') and (s[i+1]='.') then
    begin
    delete(s,i,1);
    Dec(i);
    end;
 Until i=Length(s);
 writeln(s);
 readln
end.


shrek=) 08.12.2011 11:26

Спасибо большое!


Часовой пояс GMT +4, время: 09:13.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.