Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- procedure readNum(var inp: longint);
- begin
- read(inp); //read num
- end;
- procedure CompWth1Num(inp, divis: longint; var res: boolean);
- begin
- while inp <> 0 do //repeat cycle while inputted value not eq 0
- begin
- if inp mod 10 = divis then //if last discharge of inputted num eq divisor then
- res := true; //result is true
- inp := inp div 10; //cut last discharge in inputted num
- end;
- end;
- procedure CompWthAllNum(inp: longint; var res: boolean);
- var
- divis: longint;
- begin
- res := false; //firstly result value is 0
- while inp <> 0 do //repeat cycle while inputted value not eq 0
- begin
- divis := inp mod 10; //assign to the divisor variable last discharge of inputted value
- inp := inp div 10; //cut the last discharge of inputted value
- CompWth1Num(inp, divis, res); //compare inputted value with divisor
- end;
- end;
- procedure output(res: boolean);
- begin
- if res then //if result value is true then
- writeln('YES') //write YES
- else //else
- writeln('NO'); //write NO
- end;
- var
- inp: longint;
- res: boolean;
- begin
- readNum(inp); //read num
- CompWthAllNum(inp, res); //compare inputted value with every discharge from inputted value
- output(res); //reite result
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement