Pascal运行时作业错误106

Pascal运行时作业错误106,pascal,Pascal,第一次张贴在这里,所以我会尝试做正确的 我正在做我的第一个程序,它打印一个班级的学生的百分比,给出id、姓氏和名字,以及必须转换的作业分数。我能够编译它,只有两个关于作业分数和作业百分比未初始化的警告 在我的read_记录、initialize和main模块(我想这就是术语)中,我得到了运行时错误106(在需要数值的地方读取非数值) 它与数据文件中的间距有关,但可能我在代码中做了一些错误的事情,因为这是我的第一个程序,我正在寻找任何可能的帮助 阅读记录: begin if EoF(FileI

第一次张贴在这里,所以我会尝试做正确的

我正在做我的第一个程序,它打印一个班级的学生的百分比,给出id、姓氏和名字,以及必须转换的作业分数。我能够编译它,只有两个关于作业分数和作业百分比未初始化的警告

在我的read_记录、initialize和main模块(我想这就是术语)中,我得到了运行时错误106(在需要数值的地方读取非数值)

它与数据文件中的间距有关,但可能我在代码中做了一些错误的事情,因为这是我的第一个程序,我正在寻找任何可能的帮助

阅读记录:

begin
  if EoF(FileIn) then
    more_students := False
  else
    readln(FileIn,student_id,last_name,first_name,assignment_score)
end; {read_record}
初始化:

Procedure initialize;
begin
  more_students:= True;

  {Assigns files to input and output and rewrites them for the code }
  Assign(FileIn, 'prg2a-150.dat');
  Reset(FileIn);
  Assign(Fileout, 'Prog2.txt');
  Rewrite(fileout);

  READ_RECORD;
  Print_Header
end; { initialize }
我的进程&main(当我调用要使用的进程时,我在第100行得到一个错误,这是我写文件的地方)

最后,这是我的数据文件:

032919631 BACH                AMANDA    14.1 

327777582 GUNDERSON           EMILY      9.9 

188941863 DARLING             CHRIS     14.7 

396501493 JACKSON             GUY        2.1 

552753315 MILKOVICH           LAURA 21.0 

553962171 ZADINS              WALLACE   28.9 

989570643 KLIPP               JOAN      33.3 

468497243 CARPENTER           BETTYANNE 6.0 

112324230 RIKER               NANCY     17.1 

720789066 UTHE               SHARON    12.7 

878468839 NULL                LIVAK      0.0 

606537736 ZUCKERMAN           YVONNE     1.0 

996498720 KINGSLIGHT         JERRIE    14.5 

453310627 GAUTHIER            DONALD     7.8 

289324008 HIRSH               GAYLENE   32.3 

361582495 KELLY               JEAN 0.1 

441892834 FACTOR              DANI      15.8 

255715006 MARKS               KIMBERLEE 8.9 

535282507 MORROW              LEONARD   29.8 

566318464 COSGROVE            CAROL     15.8 

158778873 MUDD                LES  29.1 

574450163 TIMMERMAN           ROY        2.9 

032731233 MUIZNIECE           LESLIE    14.3 

832142931 HARMAN              FRITZ     34.5

如果您的输入文件在每两个数据行之间确实有一个空行,ReadLn将在读取空行时立即抛出一个错误,因为您告诉它需要一个数值

以下内容将有所帮助。不要 *将字符串读入整数变量

  *HERE is an example output/error :-
纠正


你的“第100行”中哪一行是错误的?第99行:而更多的学生做第100行:过程;它发生在第一次迭代还是最后一次迭代?为什么不打开调试并逐步完成程序呢?你说:第一次在这里发帖,所以我会尽力做好。您已经开始做得很好,但仍然请访问以下链接:了解有关堆栈溢出的简要介绍。也。这里还有一个链接到。
  *HERE is an example output/error :-
   *--S P A C E --
    ? kk
    Runtime error 106 at $0804893A
      $0804893A
      $0806D76D*
*--S P A C E --
? 1
...
...
EXIT*
*Above NOT *kk* BUT *1*