main.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
// Java program to implement // the above approach import java.io.*; class GFG { // Function to find the count of // digits in N static int numberOfDigit(int N) { // Stores count of // digits in N int digit = 0; // Calculate the count // of digits in N while (N > 0) { // Update digit digit++; // Update N N /= 10; } return digit; } // Function to rotate the digits of N by K static void rotateNumberByK(int N, int K) { // Stores count of digits in N int X = numberOfDigit(N); // Update K so that only need to // handle left rotation K = ((K % X) + X) % X; // Stores first K digits of N int left_no = N / (int)(Math.pow(10, X - K)); // Remove first K digits of N N = N % (int)(Math.pow(10, X - K)); // Stores count of digits in left_no int left_digit = numberOfDigit(left_no); // Append left_no to the right of // digits of N N = (N * (int)(Math.pow(10, left_digit))) + left_no; System.out.println(N); } // Driver Code public static void main(String args[]) { int N = 12345, K = 7; // Function Call rotateNumberByK(N, K); } } |