C दो अंतरालों के बीच प्राइम नंबर प्रदर्शित करने का कार्यक्रम

इस उदाहरण में, आप उपयोगकर्ता द्वारा दर्ज किए गए दो नंबरों के बीच सभी प्राइम नंबरों को प्रिंट करना सीखेंगे।

इस उदाहरण को समझने के लिए, आपको निम्नलिखित सी प्रोग्रामिंग विषयों का ज्ञान होना चाहिए:

  • C यदि … और कथन
  • लूप के लिए सी
  • सी ब्रेक और जारी है

दो अंतरालों के बीच प्रमुख संख्याएँ प्रदर्शित करें

 #include int main() ( int low, high, i, flag; printf("Enter two numbers(intervals): "); scanf("%d %d", &low, &high); printf("Prime numbers between %d and %d are: ", low, high); // iteration until low is not equal to high while (low < high) ( flag = 0; // ignore numbers less than 2 if (low <= 1) ( ++low; continue; ) // if low is a non-prime number, flag will be 1 for (i = 2; i <= low / 2; ++i) ( if (low % i == 0) ( flag = 1; break; ) ) if (flag == 0) printf("%d ", low); // to check prime for the next number // increase low by 1 ++low; ) return 0; )

आउटपुट

 दो संख्याएँ (अंतराल) दर्ज करें: 20 50 से 20 के बीच 50 संख्याएँ हैं: 23 29 31 37 41 43 47 

इस कार्यक्रम में, whileलूप को पुनरावृत्त ( high-low-1) बार किया जाता है।

प्रत्येक पुनरावृत्ति में, lowएक अभाज्य संख्या है या नहीं की जाँच की जाती है, और तब तक मूल्य lowवृद्धि की जाती है 1जब तक lowकि इसके बराबर न हो high

यह जानने के लिए कि कोई नंबर प्राइम है या नहीं, यह जानने के लिए इस पृष्ठ पर जाएं।

यदि उपयोगकर्ता पहले बड़ी संख्या में प्रवेश करता है, तो उपरोक्त कार्यक्रम उद्देश्य के अनुसार काम नहीं करता है। आप संख्याओं को स्वैप करके इस समस्या को हल कर सकते हैं।

जब बड़ी संख्या पहले दर्ज की जाती है तो प्राइम नंबर प्रदर्शित करें

 #include int main() ( int low, high, i, flag, temp; printf("Enter two numbers(intervals): "); scanf("%d %d", &low, &high); // swap numbers if low is greather than high if (low> high) ( temp = low; low = high; high = temp; ) printf("Prime numbers between %d and %d are: ", low, high); while (low < high) ( flag = 0; // ignore numbers less than 2 if (low <= 1) ( ++low; continue; ) for (i = 2; i <= low / 2; ++i) ( if (low % i == 0) ( flag = 1; break; ) ) if (flag == 0) printf("%d ", low); ++low; ) return 0; )

उपयोगकर्ता-परिभाषित फ़ंक्शन बनाकर आप दो अंतराल के बीच सभी प्रमुख संख्याओं को कैसे प्रदर्शित कर सकते हैं, यह जानने के लिए इस पृष्ठ पर जाएं

दिलचस्प लेख...