Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Повторяющиеся символы

Автор: Sir 2.12.2003 17:22

Условие задачи:
В файле - строка (не более 255 символов) , удаляем из неё повторяющиеся символы ,
оставляя символы в том порядке ,в каком они были , пишем полученную
строку в выходной файл.

Пример строки во входном файле:
qqwe12Q21145weW

Пример выходного файла:
qwe12Q45W

Помогите найти ошибку , в выходном файле выдаётся какая-то дребедень

Код
var inp,outp:text;
   tmp,st:string;
   i,k:byte;
function search(st:string;ch:char):boolean;
var
cnt:byte;
begin
for k:=1 to length(tmp) do
if tmp[k]=ch then cnt:=cnt+1;
if cnt<>0 then search:=true;
end;
function makestr:string;
begin
for i:=1 to length(st) do
if search(tmp,st[i])=false then tmp:=tmp+st[i];
end;
begin
    assign(inp,'input.txt');
    reset(inp);
    assign(outp,'output.txt');
    rewrite(outp);
    readln(inp,st);
    tmp:='';
    st:=makestr;
    writeln(outp,st);
    close(outp);
    close(inp);
end.

Автор: Sir 3.12.2003 16:15

Решил , не знаю , чего я так тупил ???

Код
var inp,outp:text;
   tmp,st:string;
   i:byte;
begin
    assign(inp,'input.txt');
    reset(inp);
    readln(inp,st);
    assign(outp,'output.txt');
    rewrite(outp);
    for i:=1 to length(st) do
    if pos(st[i],tmp)=0 then tmp:=tmp+st[i];
    write(outp,tmp);
    close(outp);
    close(inp);
end.

Автор: GLuk 3.12.2003 21:45

Поди в соурсах ответов надавали... ;)

Автор: Sir 4.12.2003 20:45

Не-а , я тама не спрашивал ;D

Автор: trminator 4.12.2003 21:12

а http://forum.sources.ru/index.php?showtopic=39548 не твое?