Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में वां बदसूरत नंबर खोजें

वह संख्या जिसका अभाज्य गुणनखंड 2, 3 या 5 हो, कुरूप संख्या कहलाती है। कुछ कुरूप संख्याएँ हैं:1, 2, 3, 4, 5, 6, 8, 10, 12, 15, आदि।

हमारे पास एक नंबर है N और कार्य बदसूरत संख्याओं के क्रम में Nth अग्ली नंबर को खोजना है।

उदाहरण के लिए:

इनपुट-1:

N = 5

आउटपुट:

5

स्पष्टीकरण:

कुरूप संख्याओं [1, 2, 3, 4, 5, 6, 8, 10, 12, 15] के क्रम में 5वीं कुरूप संख्या 5 है।

इनपुट-2:

N = 7

आउटपुट:

8

स्पष्टीकरण:

कुरूप संख्याओं [1, 2, 3, 4, 5, 6, 8, 10, 12, 15] के क्रम में सातवीं कुरूप संख्या 8 है।

इस समस्या को हल करने का तरीका

इस समस्या को हल करने का एक सरल तरीका यह है कि दी गई संख्या 2 या 3 या 5 से विभाज्य है या नहीं और दी गई संख्या तक अनुक्रम का ट्रैक रखें। अब पता लगाएं कि क्या संख्या एक बदसूरत संख्या की सभी शर्तों को पूरा करती है, फिर संख्या को आउटपुट के रूप में वापस कर दें।

  • Nth अग्ली नंबर खोजने के लिए एक नंबर N का इनपुट लें।
  • एक बूलियन फ़ंक्शन isUgly(int n) इनपुट के रूप में एक संख्या 'n' लेता है और अगर यह एक बदसूरत संख्या है, तो सही है, अन्यथा गलत है।
  • एक पूर्णांक फ़ंक्शन findNthUgly(int n) इनपुट के रूप में 'n' नंबर लेता है और n लौटाता है आउटपुट के रूप में वें बदसूरत संख्या।

उदाहरण

public class UglyN {
   public static boolean isUglyNumber(int num) {
      boolean x = true;
      while (num != 1) {
         if (num % 5 == 0) {
            num /= 5;
         }
         else if (num % 3 == 0) {
            num /= 3;
         }
         // To check if number is divisible by 2 or not
         else if (num % 2 == 0) {
            num /= 2;
         }
         else {
            x = false;
            break;
         }
      }
      return x;
   }
   public static int nthUglyNumber(int n) {
      int i = 1;
      int count = 1;
      while (n > count) {
         i++;
         if (isUglyNumber(i)) {
            count++;
         }
      }
      return i;
   }
   public static void main(String[] args) {
      int number = 100;
      int no = nthUglyNumber(number);
      System.out.println("The Ugly no. at position " + number + " is " + no);
   }
}

आउटपुट

The Ugly no. at position 100 is 1536.

  1. जावा प्रोग्राम एक वृत्त की परिधि का पता लगाने के लिए

    इस लेख में, हम समझेंगे कि किसी वृत्त की परिधि कैसे ज्ञात की जाती है। परिधि एक वृत्त की परिधि है। यह एक वृत्त के चारों ओर की दूरी है। परिधि सूत्र C =2𝜋\pi r द्वारा दी गई है, जहां \pi𝜋 =3.14 और r वृत्त की त्रिज्या है - नीचे उसी का एक प्रदर्शन है - इनपुट मान लीजिए हमारा इनपुट है - वृत्त की त्र

  1. एक समलंब का क्षेत्रफल ज्ञात करने के लिए जावा प्रोग्राम

    इस लेख में हम समझेंगे कि समलम्ब चतुर्भुज का क्षेत्रफल कैसे ज्ञात किया जाता है। ट्रेपेज़ियम एक प्रकार का चतुर्भुज है जिसमें कम से कम एक जोड़ी पक्ष एक दूसरे के समानांतर होता है। समलम्ब चतुर्भुज की समानांतर भुजाओं को आधार कहा जाता है और समलंब की गैर-समानांतर भुजाओं को पाद कहा जाता है। इसे समलम्बाकार भी

  1. एक आयत का परिमाप ज्ञात करने के लिए जावा प्रोग्राम

    इस लेख में, हम समझेंगे कि एक आयत का परिमाप कैसे ज्ञात करें। आयत के परिमाप की गणना आयत की सभी भुजाओं की लंबाई जोड़कर की जाती है। नीचे एक आयत का प्रदर्शन है। एक आयत का परिमाप आयत की दो लंबाई और दो चौड़ाई की कुल लंबाई है - इनपुट मान लीजिए हमारा इनपुट है - The length of the sides of a rectangle ar