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

अग्ली नंबर्स

अग्ली नंबर वे संख्याएं हैं जिनके अभाज्य गुणनखंड 2, 3 या 5 होते हैं। 1 से 15 तक, 11 अग्ली नंबर हैं: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15। संख्याएं 7, 11, 13 अग्ली नहीं हैं क्योंकि वे अभाज्य हैं। संख्या 14 अग्ली नहीं है क्योंकि इसके अभाज्य गुणनखंड में 7 आएगा।

इस प्रोग्राम में, हम nth अग्ली नंबर ढूंढने का प्रयास करेंगे।

इनपुट और आउटपुट

इनपुट: टर्म नंबर लें। मान लें यह 10 है
आउटपुट: 10वां अग्ली नंबर 12 है

एल्गोरिदम

getUglyNumbers(n)

इनपुट: टर्म्स की संख्या
आउटपुट: nth अग्ली नंबर ढूंढें

शुरुआत
    uglyNum नामक ऐरे को आकार n का परिभाषित करें
    i2 := 0, i3 := 0, i5 := 0
    next2mul := 2, next3mul := 3, next5Mul := 5
    next := 1
    uglyNum[0] := 1
    i := 1 से n तक, करें
        next := next2Mul, next3Mul और next5Mul का न्यूनतम
        uglyNum[i] := next
        यदि next = next2Mul, तो
            i2 := i2 + 1
            next2mul := uglyNum[i2] * 2
        यदि next = next3Mul, तो
            i3 := i3 + 1
            next3mul := uglyNum[i3] * 3
        यदि next = next5Mul, तो
            i5 := i5 + 1
            next5mul := uglyNum[i5] * 5
    पूर्ण
    वापस next
अंत

उदाहरण (C++ कोड)

#include <iostream>
using namespace std;

int min(int x, int y, int z) {
    if(x < y) {
        if(x < z) return x;
        else return z;
    } else {
        if(y < z) return y;
        else return z;
    }
}

int getUglyNum(int n) {
    int uglyNum[n];
    int i2 = 0, i3 = 0, i5 = 0;
    int next2mul = 2;
    int next3mul = 3;
    int next5mul = 5;
    int next = 1;
    
    uglyNum[0] = 1;
    for (int i = 1; i < n; i++) {
        next = min(next2mul, next3mul, next5mul);
        uglyNum[i] = next;
        
        if (next == next2mul) {
            i2++;
            next2mul = uglyNum[i2] * 2;
        }
        if (next == next3mul) {
            i3++;
            next3mul = uglyNum[i3] * 3;
        }
        if (next == next5mul) {
            i5++;
            next5mul = uglyNum[i5] * 5;
        }
    }
    return next;
}

int main() {
    int n;
    cout << "Enter term: "; cin >> n;
    cout << n << "th Ugly number is: " << getUglyNum(n) << endl;
}

आउटपुट

Enter term: 10
10th Ugly number is: 12
  1. - Java में संख्याओं की सरणी का LCM (लघुत्तम समापवर्त्य)

    L.C.M. या दो मानों का लघुत्तम समापवर्त्य, वह सबसे छोटा धनात्मक मान है जो दोनों मानों का गुणक है। उदाहरण के लिए 3 और 4 के गुणक हैं: 3 → 3, 6, 9, 12, 15 ... 4 → 4, 8, 12, 16, 20 ... दोनों का सबसे छोटा सामान्य गुणक 12 है, इसलिए 3 और 4 का LCM 12 है। प्रोग्राम निम्न उदाहरण संख्याओं की सरणी का LCM गणना कर

  1. JavaScript नंबर्स उदाहरण JavaScript नंबर्स उदाहरण

    JavaScript में नंबर्स के लिए एक उदाहरण निम्न है -उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> &

  1. - पायथन में कॉम्प्लेक्स नंबर्स

    पायथन में कॉम्प्लेक्स नंबर्स बिल्ट-इन टाइप हैं, जिन्हें डायरेक्ट असाइनमेंट या complex() फ़ंक्शन से बनाया जा सकता है। बनाना और बुनियादी गुण >>> c = 3 + 6j >>> type(c) >>> c1 = complex(3, 6) >>> c1 (3+6j) एट्रिब्यूट्स >>> c = 3 + 6j >>> c.real