错误:不兼容的类型:使用Dev-Pascal

时间:2015-12-26 13:06:57

标签: pascal

我正在创建一个将二进制数转换为十进制数的项目。这是代码:

program binerdesimal;
uses crt;
var
  p, d, i, l, pow, int:integer;
  x:real;
  y:integer;
  b:string;
begin
  readln(b);
  d:=0;

  for i:=1 to length(b) do
  begin
    l:=length(b);
    l:=l - 1;
    pow := power(2, l);
    int := val(b[i], x, y);
    d := d + (int * pow);
  end;

  writeln(d);
  readln;
end.

输入数字是b,b本身是一个字符串,因为我想访问二进制数的索引。示例:1011然后b [1] = 1; b [2] = 0; b [3] = 1; b [4] = 1. 1011的十进制数是(1 * 2 ^ 3)+(0 * 2 ^ 2)+(1 * 2 ^ 1)+(1 * 2 ^ 0)

如果我使用b作为整数,则不能。

我使用val将字符串转换为整数但出现错误: 错误:不兼容的类型:使用Dev-Pascal在Pascal中获得“VOID”预期的“LONGINT” 指着:

int := val(b[i], x, y);

我的代码出了什么问题?

0 个答案:

没有答案