Advertisement
Infiniti_Inter

D11. Проверка степени

Feb 2nd, 2016
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.78 KB | None | 0 0
  1. Решите задачу одним циклом while, допускается применение условных операторов.
  2.  
  3. Задано два числа a и b. Необходимо проверить, является ли число a степенью числа b. Т.е. существует ли такое целое неотрицательное число c, что bc = a. Если ответ положительный, выведите c, иначе выведите -1.
  4. var
  5. a,b,c,i,j,z,x:longint;
  6. begin
  7. readln(a,b);
  8. c:=1;
  9. i:=0;
  10. z:=b;
  11. x:=0;
  12. while i<32168 do
  13. if b=a then begin
  14. x:=1;
  15. break;
  16. end
  17. else begin
  18. b:=b*z;
  19. c+=1;
  20. i+=1;
  21. end;
  22. if x=0 then c:=-1;
  23. if (a=1) then c:=0;
  24. writeln(c);
  25. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement