Advertisement
CrazyDiver

2 Equal Nums

Dec 12th, 2017
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.26 KB | None | 0 0
  1. procedure readNum(var inp: longint);
  2. begin
  3.   read(inp);  //read num
  4. end;
  5.  
  6. procedure CompWth1Num(inp, divis: longint; var res: boolean);
  7. begin
  8.   while inp <> 0 do  //repeat cycle while inputted value not eq 0
  9.     begin
  10.       if inp mod 10 = divis then  //if last discharge of inputted num eq divisor then
  11.         res := true;  //result is true
  12.       inp := inp div 10;  //cut last discharge in inputted num
  13.     end;
  14. end;
  15.  
  16. procedure CompWthAllNum(inp: longint; var res: boolean);
  17. var
  18.   divis: longint;
  19. begin
  20.   res := false;  //firstly result value is 0
  21.   while inp <> 0 do  //repeat cycle while inputted value not eq 0
  22.     begin
  23.       divis := inp mod 10;  //assign to the divisor variable last discharge of inputted value
  24.       inp := inp div 10;  //cut the last discharge of inputted value
  25.       CompWth1Num(inp, divis, res);  //compare inputted value with divisor
  26.     end;
  27. end;
  28.  
  29. procedure output(res: boolean);
  30. begin
  31.   if res then  //if result value is true then
  32.     writeln('YES')  //write YES
  33.   else  //else
  34.     writeln('NO');  //write NO
  35. end;
  36.  
  37. var
  38.   inp: longint;
  39.   res: boolean;
  40.  
  41. begin
  42.   readNum(inp);  //read num
  43.   CompWthAllNum(inp, res);  //compare inputted value with every discharge from inputted value
  44.   output(res);  //reite result
  45. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement