ここに初めて投稿するので、私はそれを正しくしようとします。パスカルランタイムエラー106宿題に
IDを与えられたクラスの生徒のパーセンテージ、最後に&ファーストネーム、および変換する必要のある割り当てスコアを出力する私の最初のプログラムに取り組んでいます。私はassign_scoreとassignment_percentageが初期化されていないという警告を2回出してコンパイルすることができました。
read_record、initialize、およびmainモジュール(私はそれが用語だと思います)でランタイムエラー106(数値以外の値が読み込まれる場合)が発生します。
これはデータファイル内のスペースと関係がありますが、これは私の最初のプログラムであるため、可能性のあるヘルプを探しています。
Read_Record:
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 }
マイプロセス&私は私が書いているところである使用されるプロセスのために呼び出したときに(私はライン100でエラーが出ますFileOut)
procedure process;
begin
{Line check for print header}
if line_count > 57 then
print_header;
Inc(line_count);
{ Converts score to percentage }
compute_grade;
{Report Percentage}
writeln(FileOut, student_id, space(2), last_name, space(1), first_name, space(2), assignment_percentage:5:1);
{ Next Runner Data }
read_record
end; { process }
{WRAP UP -- No summary so just the files are being closed }
procedure wrapup;
begin
close(FileOut);
close(FileIn)
end; { wrapup }
begin { main }
initialize;
while more_students do
process;
wrapup
end.
最後に、ここに私のデータファイルです:
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
エラーが発生する「ライン100」はどれですか? – MartynA
行99:more_students do 行100:プロセス; –
最初の繰り返しか最後に起こりますか?なぜデバッグをオンにして手順を実行しないのですか? – juus