私は Pascal を初めて使用し、単純なプログラムを作成しようとしていますが、関数間で値を渡すのに問題があります。これは私が持っているもののほんの一部です:
program numberConverter;
const
maxValue = 4999;
minValue = 1;
var num: integer;
function convertNumeral(number: integer):string;
var j: integer;
begin
if ((number < minValue) OR (number > maxValue)) then
begin
writeln(number);
writeln('The number you enter must be between 1 and 4999. Please try again:');
read(j);
convertNumeral := convertNumeral(j);
end
else
if (number >= 1000) then
convertNumeral := 'M' + convertNumeral(number -1000)
{more code here, left it out for space}
end;
begin
writeln;
writeln('Enter an integer between 1 and 4999 to be converted:');
read(num);
writeln;
writeln(num);
writeln(convertNumeral(num));
end.
私の問題は、 writeln(converNumeral(num)) からの値、主に 'num' が convertNumeral 関数に渡されず、パスカルがこれを行うかどうか疑問に思っていたことです。number を変数として宣言していないためだと思いますが、そうすると、2 番目の if ステートメントを完了できないというコンパイル エラーが発生します。御時間ありがとうございます。