Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function CountDschargs(inpt: integer): integer;
- var
- res: integer;
- begin
- repeat //loop cycle until input eq 0
- res := res + 1; //result var eq itself+1
- inpt := inpt div 10; //inputed valie eq it divide 10 and get rem
- until inpt = 0; //end of the cycle
- CountDschargs := res; //assign to the func value res
- end;
- function FindPresDscharge(inpt: integer): integer;
- begin
- FindPresDscharge := inpt mod 10; //func value eq inputed divide 10 and get rem
- end;
- procedure WriteYN(num: integer);
- var
- FutDsch, i, res: integer;
- begin
- for i := 1 to CountDschargs(num) do //loop cycle intil input num equal 0
- begin
- FutDsch := FindPresDscharge(num); //assign to the future discharge value last discharge
- num := num div 10; //cut the last discharge
- if FindPresDscharge(num) = FutDsch then //if present discharge equal future then
- res:=res+1; //add to checking valiable 1
- end;
- if res>0 then //if checking var >0 then
- Writeln('YES') //write YES
- else //else
- writeln('NO'); //write NO
- end;
- var
- inpt: integer;
- begin
- read(inpt); //read num
- WriteYN(inpt); //write yes if there're 2 same nums near
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement