Сколько разных букв в строке

Мне нужно написать программу, которая считает, сколько разных букв в строке. Например, «abc» даст 3; и "abcabc" тоже даст 3, потому что есть только 3 разных буквы.

Мне нужно использовать паскаль, но если вы можете помочь с кодом на разных языках, это тоже было бы очень хорошо.

Вот мой код это не работает:

var s:string;
    i,j,x,count:integer;
    c:char;
begin
  clrscr;

  Readln(s);
  c:=s[1];
  x:=1;

  Repeat
  For i:=1 to (length(s)) do
  begin
    If (c=s[i]) then
    begin
      delete(s,i,1);
      writeln(s);
    end;
  end;
  c:=s[1];
  x:=x+1;
  Until length(s)=1;

  Writeln(x);

x - другой счетчик букв; Может мой алгоритм очень плохой .. есть идеи? Спасибо.

8
задан Andreas Rejbrand 5 March 2011 в 20:26
поделиться