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

Помогите написать программу по паскалю для задания! ( см. внутри)

Ввести текст и исключить все повторяющиеся буквы. Если какой-то символ встречается в тексте несколько раз, то оставить первый из них.
Prosto Anton.
Prosto Anton.
240
Допустим так

var a:array[char] of boolean;
c:char;
s,ss:string;
j:integer;
begin
for c:=#0 to #255 do a[c]:=false;
readln(s);
ss:='';
for j:=1 to length(s) do
if not a[s[j]] then begin
ss:=ss+s[j];
a[s[j]]:=true;
end;
writeln(ss);
readln;
end.
Роман Титов
Роман Титов
79 720
Лучший ответ
Используйте циклы по условию и строковые функции Pascal.
readln (str);
n:=1;
for j:=1 to length (str) do begin
flag:=false;
for k:=1 to n do
if str[j]=str[k] then flag:=true;
if not flag then begin
n:=n+1; str[n]:=str[j]
end;
str[0]:=n;
writeln (str);
KK
Kanybek Kanybek
19 025
Позавчера уже решал кому-то на учебе) )
Плюсуйте меня, а то не могу печатать на латинице. Стану знатоком - буду скидывать исходники
Alex Puzir
Alex Puzir
1 022
а нужен принцип работы или полный текст проги?
Ormandiore
readln (str);
n:=1;
for j:=1 to length (str) do begin
flag:=false;
for k:=1 to n do
if str[j]=str[k] then flag:=true;
if not flag then begin
n:=n+1; str[n]:=str[j]
end;
str[0]:=n; эта строка удивила больше всего)) )
writeln (str);

этот код работать не будет)))
MS
Madiar Sarnogaev
577
программу написать не могу, так как неразрешает писать латиницей.
там должно быть два цикла, это вопервых, во вторых первый цикл переменной длинны, так что на паскале это не пройдет.
если програма на каком то из современных языков, то всё просто,
1) перебераете строку посимвольно
2) изымаете строку после текущего символа
3) заменяете символы такие ж как текущий на пустой
4) получившуюся строку присоеденяете к той, от которой изъяли.
могу дать пример на Си-шарп
на паскале будет немного сложнее, но тоже быстро решаемо. сильно надо, пишите на мыло, найду паскаль, сделаю прогу. 20 минут делов.