You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

新手求助:如何修复Pascal程序中Case语句的语法错误?

Pascal Case语句语法错误排查与修复

错误原因分析

  • 分支分隔符缺失:Case语句中,除最后一个分支(else分支)外,每个分支末尾必须用分号;分隔。你的第一个分支1..2结束后未加分号,这是触发报错的直接原因。
  • 输出语句语法错误:第4个分支里的writeln:=(factor);是错误写法,writeln是输出过程,不能使用赋值符号:=,正确写法为writeln(factor);。
  • 程序结束符错误:Pascal程序的顶层begin...end块结束后,必须用点号.而非分号,原代码末尾的end;不符合语法规范。

修复后的完整代码

program Mss; 
var
   rate,factor:integer;
begin
  readln(rate);
  case rate of
  1..2:begin
         factor:=(2*rate)-1;
         writeln(factor);
       end;
  3:begin                             
      factor:=(3*rate)-1;
      writeln(factor);
    end;
  4:begin
      factor:=(4*rate)-1;
      writeln(factor);
    end;
  5:begin
      factor:=(3*rate)-1;
      writeln(factor);
    end;
  6..8:begin
         factor:=rate-2;
         writeln(factor);
        end;
   else begin        
          writeln(rate);
        end  
end.

内容的提问来源于stack exchange,提问作者Sritharni Natarajan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 17:25:28