scanf_example2.pas 400 B

123456789101112131415161718192021
  1. program scanf_example2;
  2. {$mode objfpc}{$H+}
  3. uses
  4. sysutils, gmp;
  5. var
  6. n, sqr: MPInteger;
  7. s: string;
  8. begin
  9. write('Please enter an integer of any length: ');
  10. readln(s);
  11. z_init(n);
  12. if mp_sscanf(pchar(s), '%Zd', n.ptr) = 1 then begin
  13. sqr := n ** 2;
  14. writeln(format('%s^2 = %s', [string(n), string(sqr)]));
  15. end else
  16. writeln('Failed to parse an integer from your input');
  17. end.