强制用户键入特定的数值(帕斯卡)

时间:2019-03-25 22:36:06

标签: string pascal numeric

我正在尝试制作一个读取二进制代码的程序,但是如果用户键入0或1以外的任何数字,我就想不出什么来结束该程序。 我已经尝试过“ Pos”命令,但是如果用户写的像“ 10012”一样,它仍然可以正常工作,但是我希望它在特定情况下不起作用

编辑:发布代码。

Program Binario2 ;
var
    bin, size, expo : Integer;
    temp, result : Real;
    binI : String;
Begin

 writeLn('CONVERSOR DE NÚMERO BINÁRIO PARA DECIMAL');
    write('Digite o número que quer converter: ');
    read(bin);

  str(bin, binI);
  size := length(binI);
  expo := 0;

    while size <> 0 do
    begin
    if binI[size] <> '0' then
    begin
      temp := exp(expo * ln(2));
      result := result + temp;
    end;  
    expo := expo + 1;
    size := size - 1;
  end;
  write('O número ', bin, ' em decimal é: ', Round(result));
  ReadLn();
End.

0 个答案:

没有答案