For loop 在Pascal中将循环中的实数转换为整数

For loop 在Pascal中将循环中的实数转换为整数,for-loop,pascal,For Loop,Pascal,我是Pascal新手,不知道如何修复此错误: 不兼容类型:获得“S80REAL”预期为“LONGINT” 我的代码是: Var number1:Integer; a,b:Integer; a,i:Integer; procedure number(number1: Integer); begin a:=1; b:=number1+(number1-1); for a:=1 to number1 do begin for i:=1 to ((b-a)/2) do begi

我是Pascal新手,不知道如何修复此错误: 不兼容类型:获得“S80REAL”预期为“LONGINT”

我的代码是:

Var
number1:Integer;
a,b:Integer;
a,i:Integer;

procedure number(number1: Integer);
begin
a:=1;
b:=number1+(number1-1);
  for a:=1 to number1 do
  begin
    for i:=1 to ((b-a)/2) do
    begin
    write('#');
    end;
  end;
end;
错误在这里:
对于i:=1到((b-a)/2)do

谢谢你的帮助

将“/”((b-a)/2)替换为“div”

“/”是Pascal中的实除法,“div”是整数除法

procedure number(number1: Integer);
begin
 a:=1;
 b:=number1 + number1 - 1;
 for a:=1 to number1 do
  begin
   for i:=1 to ((b-a) div 2) do
    begin
     write('#');
    end;
  end;
end;
将“/”((b-a)/2)替换为“div”

“/”是Pascal中的实除法,“div”是整数除法

procedure number(number1: Integer);
begin
 a:=1;
 b:=number1 + number1 - 1;
 for a:=1 to number1 do
  begin
   for i:=1 to ((b-a) div 2) do
    begin
     write('#');
    end;
  end;
end;
将“/”((b-a)/2)替换为“div”

“/”是Pascal中的实除法,“div”是整数除法

procedure number(number1: Integer);
begin
 a:=1;
 b:=number1 + number1 - 1;
 for a:=1 to number1 do
  begin
   for i:=1 to ((b-a) div 2) do
    begin
     write('#');
    end;
  end;
end;
将“/”((b-a)/2)替换为“div”

“/”是Pascal中的实除法,“div”是整数除法

procedure number(number1: Integer);
begin
 a:=1;
 b:=number1 + number1 - 1;
 for a:=1 to number1 do
  begin
   for i:=1 to ((b-a) div 2) do
    begin
     write('#');
    end;
  end;
end;

+1如果您想对取整进行更多控制,请查看trunc/round。@NejcGalof:如果您觉得我的答案有用,请“接受”。+1如果您想对取整进行更多控制,请查看trunc/round。@NejcGalof:如果您觉得我的答案有用,请“接受”。+1如果您想对取整进行更多控制,请查看trunc/round舍入。@NejcGalof:如果您觉得我的答案有用,请“接受”。+1如果您想对舍入进行更多控制,请查看trunc/round。@NejcGalof:如果您觉得我的答案有用,请“接受”。