Trailing_zeros_in_factorial

 




Method 1:

public class j05_trailing_zeros_in_factorial {

    static int countTrailingZeros(int n){
        int ans = 0;
        for (int i = 5; i < n; i=i*5) {
            ans = ans+n/i;
        }
        return ans;
    }

    public static void main(String[] args) {
        int number = 251;
        System.out.println(countTrailingZeros(number));
    }
}


Method 2:

public class j05_trailing_zeros_in_factorial {

    static int countTrailingZeros(int n){
        int ans = 0;
        for (int i = 5; i < n; i=i*5) {
            ans = ans+n/i;
        }
        return ans;
    }

    static int fact(int n){
        int fact = 1;
        for (int i = 2; i <= n; i++) {
            fact = fact*i;
        }
        return fact;
    }

    static int countTrailingZeros(int n){
        int ans=0;
        long fact = fact(n);
        while(fact%10==0){
            ans++;
            fact=fact/10;
        }
        return ans;
    }

    public static void main(String[] args) {
        int number = 251;
        System.out.println(countTrailingZeros(number));
    }
}


Comments

Popular Post

Create a base class called shape .Use this class to store two double type values that could be used to compute the area of figures, Derive two specific classes called triangle and rectangle from the base shape .Add to the base class, a member function get_data() to initialise base class data members and another member function display_area() to compute and display the area of figures. Make display_area () as a virtual function and redefine this function in the derived class to suit their requirements. Using these three classes, design a program that will accept dimensions of a triangle or a rectangle interactively and display the area. Area of rectangle = x*y Area of triangle = ½*x*y

Write the definition for a class called Rectangle that has floating point data members length and width. The class has the following member functions: void setlength(float) to set the length data member void setwidth(float) to set the width data member float perimeter() to calculate and return the perimeter of the rectangle float area() to calculate and return the area of the rectangle void show() to display the length and width of the rectangle int sameArea(Rectangle) that has one parameter of type Rectangle. sameArea returns 1 if the two Rectangles have the same area, and returns 0 if they don't. 1. Write the definitions for each of the above member functions. 2. Write main function to create two rectangle objects. Set the length and width of the first rectangle to 5 and 2.5. Set the length and width of the second rectangle to 5 and 18.9. Display each rectangle and its area and perimeter. 3. Check whether the two Rectangles have the same area and print a message indicating the result. Set the length and width of the first rectangle to 15 and 6.3. Display each Rectangle and its area and perimeter again. Again, check whether the two Rectangles have the same area and print a message indicating the result.