使用Pascal中的字符串

时间:2014-03-20 16:20:52

标签: string function pascal procedures turbo-pascal

请。帮我确定给定文本中出现了多少个小字母和大字母“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.

1 个答案:

答案 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.