请。帮我确定给定文本中出现了多少个小字母和大字母“s”以及符号“=”。打印缺少这些字符的行。
如何实施验证文本以及如何识别没有此类标记的行
帮助该计划。我将非常感激!
我的程序现在。接下来要做什么,
program four;
var
i : integer;
MyString : string;
MyChar : char;
begin
read( MyString );
for i := 1 to MyString.Length do
begin
case ( MyString[i] ) of
'S' : writeln( i );
's' : writeln( i );
'=' : writeln( i );
end;
end;
end.
答案 0 :(得分:1)
您需要实施计数器以跟踪您是否找到任何字符,以便您知道该怎么做。
这样的事情应该让你开始:
program four;
var
i : integer;
LowerS, UpperS, Equals: Integer;
MyString : string;
begin
LowerS := 0;
UpperS := 0;
Equals := 0;
Write('Enter text to scan: ');
ReadLn( MyString );
for i := 1 to Length(MyString) do
begin
case ( MyString[i] ) of
'S' : Inc(UpperS);
's' : Inc(LowerS);
'=' : Inc(Equals);
end;
end;
if (UpperS + LowerS + Equals) = 0 then
WriteLn('No valid characters found')
else
WriteLn(Format('S: %d s: %d =: %d', [UpperS, LowerS, Equals]));
ReadLn;
end.