Другие языки программирования и технологии

Задача Pascal ABC: Точечный удар

Данику нравится слова с точками между буквами. Он короч хочет сделать из любого слова точечное".))

Формат ввода:

S - одна строка содержащее слово.

Строка состоит только из маленьких букв англ.

Ограничения:

Длина S не более 255 символов.

Формат вывода:

Ans - строка сод. "точечное" слово.

Пример:

Ввод: vitriol

Вывод: v.i.t.r.i.o.l

Помогите пожалуйста решить) )
SR
Sergey Radchenko
213
function Dotter(s:string):string;
var
rs:String;
i:integer;
begin
rs:='';
for i:=1 to Length(s)-1 do
rs:=rs+s[i]+'.';
Dotter:=rs+s[Length(s)];
end;
Влад Кочуров
Влад Кочуров
79 122
Лучший ответ
примени insert и разбери эту прогу
program stringfun;
uses crt;
var n:integer;
procedure proc1; {****************proceduri*******************}
var k:integer;
procedure ins; {********insert*********}
var w1:string[3];
//w2:string[10];
w2:string;
h:integer;
begin
clrscr;
write('vvedite fragment [3simvola]: ');
readln(w1);
write('vvedite slovo [7simvolov]: ');
readln(w2);
write('vvedite nomer pozicii: ');
readln(h);
insert(w1,w2,h);
writeln('rezultat raven ',w2); delay(3000);
readln;
end;
procedure del; {*******delete***********}
var w:string;
h1,h2:integer;
begin
clrscr;
write('vvedite slovo [10 simvolov]: ');
readln(w);
write('vvedite nomer pozicii: ');
readln(h1);
write('vvedite kol-vo udaliaemih simvolov: ');
readln(h2);
delete(w,h1,h2);
writeln('rezultat raven ',w); delay(1000);
readln;
end;
begin
repeat
clrscr;
Writeln(' MENU');
writeln('--------------------');
writeln('1. proceduri ===========>');
writeln('2. funkcii');
writeln('3. vihod');
writeln('---------------------');
write('VASH VIBOR ');
gotoxy(26,3);
writeln('proceduri so strokami');
gotoxy(26,4);writeln('*********************');
writeln;
gotoxy(26,6);writeln('1.INSERT');
gotoxy(26,7);writeln('2.DELETE');
gotoxy(26,8);writeln('3.exit');
gotoxy(26,9);writeln('*********************');
gotoxy(26,10);write('vash vibor:');
gotoxy(37,10);readln(k);
case k of
1: begin ins; readln; end;
2: begin del; readln; end;
3:;
else begin gotoxy(26,12);write('error');readln;end;
end;
until k = 3;readln;
end;
procedure proc2; {******************funkcii*****************}
var k:integer;
procedure leng; {********length*********}
var w:string;
h:integer;
begin
clrscr;
write('vvedite stroku: ');
readln(w);
h:=length(w);
writeln('dlina stroki: ',h);
readln;
end;
procedure upc; {*******upcase***********}
var w1,w2:string;
i:integer;
begin
clrscr;
write('vvedite stroku: ');
readln(w1);
for i:=1 to length(w1) do
w2[i]:=upcase(w1[i]);
writeln('w1=',w1);
for i:=1 to length(w1) do
write(w2[i]);
readln;
end;
procedure po; {*******pos***********}
var w2:string[3];
w1:string[10];
h:integer;
begin
clrscr;
write('vvedite stroku: ');
readln(w1);
write('vvedite fragment: ');
readln(w2);
h:=pos(w2,w1);
writeln('pozicia= ',h);
readln;
end;
procedure cop; {*******copy***********}
var w1,w2:string[10];
h1,h2:integer;
begin
clrscr;
write('vvedite slovo [10 simvolov]: ');
readln(w1);
write('vvedite nomer pozicii: ');
readln(h1);
write('vvedite kol-vo copiruemih simvolov: ');
readln(h2);
w2:=copy(w1,h1,h2);
writeln('rezultat= ',w2);
readln;
end;
begin
repeat
clrscr;
Writeln(' ЊҐ­о');
writeln('--------------------');
writeln('1. proceduri');
writeln('2. funkcii ============>');
writeln('3. vihod');
writeln('---------------------');
write('vash vibor ');
gotoxy(26,4);writeln('funkcii so strokami');
gotoxy(26,5);writeln('*********************');
writeln;
gotoxy(26,7);writeln('1.LENGTH');
gotoxy(26,8);writeln('2.UPCASE');
gotoxy(26,9);writeln('3.POS');
gotoxy(26,10);writeln('4.COPY');
gotoxy(26,11);writeln('5.exit');
gotoxy(26,12);writeln('*********************');
gotoxy(26,13);write('vash vibor:');
gotoxy(39,13);readln(k);
case k of
1:leng;
2:upc;
3:po;
4:cop;
5:;
else begin gotoxy(26,14);write('error');readln;end;
end;
until k = 5;{readkey;}

end;

procedure menu(var r:integer); {*****************************}
begin
Writeln(' Menu');
writeln('--------------------');
writeln('1. proceduri');
writeln('2. funkcii');
writeln('3. vihod');
writeln('---------------------');
write('Vash vibor ');
readln(r);
end;
BEGIN
repeat
clrscr;
menu(n);
case n of
1:proc1;
2:proc2;
3:; {exit}
else begin
writeln('error nomer punkta');
readln;
end;
end; {case}
until n=3;
writeln('konec programm');
readln;
END.