Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.09 KB | None | 0 0
  1. package persistentNumber;
  2.  
  3.  
  4.  
  5. public class application {
  6.    
  7.     public static int LiczbaCyfr( long x )
  8.     {
  9.         int digits = 0;
  10.  
  11.         do
  12.             digits++;
  13.         while((x /= 10) != 0);
  14.  
  15.         return digits;
  16.     }
  17.    
  18.     public static long mnożenieCyfr (long y) {
  19.        
  20.         long wynik = 1;
  21.         while (y >0 ) {
  22.             wynik = wynik * (y%10);
  23.             y /= 10;
  24.         }
  25.         return wynik;
  26.        
  27.     }
  28.    
  29.  
  30.     public static void main(String[] args) {
  31.         // TODO Auto-generated method stub
  32.  
  33.         int krok=0, najwiekszyKrok = 0;
  34.         long liczba = 277777888, liczba1, x, najwiekszaLiczba = 0, c = 2777777888888899L;      
  35.        
  36.         do {
  37.            
  38.             liczba1 = liczba;
  39.             while (LiczbaCyfr(liczba1)>1) {
  40.                 x = mnożenieCyfr(liczba1);
  41.                 krok++;
  42.                 liczba1 = x;
  43.                
  44.             }
  45.             if (najwiekszyKrok < krok) {
  46.                 najwiekszyKrok = krok;
  47.                 najwiekszaLiczba = liczba;
  48.             }
  49.             krok = 0;
  50.             liczba++;
  51.            
  52.                
  53.             }
  54.         while (liczba < c);
  55.     //  while (liczba < 9223372036854775807L);
  56.         System.out.println("W przedziale liczb od 1 do "+c+" najbardziej persistant liczbą jest "+najwiekszaLiczba+" z liczbą kroków "+najwiekszyKrok);
  57.        
  58.     }
  59.  
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement