【发布时间】:2011-03-05 20:04:04
【问题描述】:
我必须编写程序来计算字符串中有多少个不同的字母。 例如“abc”将给出 3;而 "abcabc" 也会给出 3,因为只有 3 个不同的字母。
我需要使用 pascal,但如果你能帮助处理不同语言的代码,那也很好。
这是我的代码不起作用:
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 是不同的字母计数器; 也许我的算法很糟糕..有什么想法吗?谢谢。
【问题讨论】:
-
我也添加了 Delphi 标签。这样,您的问题会得到很多更多的关注。而且,毕竟对于像这样的简单算法,Delphi 和 Pascal 几乎是一回事。
-
+1 用于发布您尝试但不起作用的代码。看来您也应该添加作业标签。