यहां हम देखेंगे कि C का उपयोग करके हॉलो पिरामिड और डायमंड पैटर्न कैसे जनरेट करें। हम सॉलिड पिरामिड पैटर्न बहुत आसानी से जनरेट कर सकते हैं। इसे हॉलो बनाने के लिए, हमें कुछ ट्रिक्स जोड़ने होंगे।
हॉलो पिरामिड (Hollow Pyramid)
पिरामिड के लिए पहली लाइन पर यह एक स्टार प्रिंट करेगा, और अंतिम लाइन पर यह n संख्या में स्टार्स प्रिंट करेगा। अन्य लाइन्स के लिए यह लाइन के शुरू और अंत में ठीक दो स्टार्स प्रिंट करेगा, और इन दो स्टार्स के बीच कुछ ब्लैंक स्पेस होंगे।
उदाहरण कोड
#include <stdio.h>
int main() {
int n, i, j;
printf("Enter number of lines: ");
scanf("%d", &n);
for(i = 1; i <= n; i++) {
for(j = 1; j <= (n-i); j++) { // स्टार से पहले ब्लैंक स्पेस प्रिंट करें
printf(" ");
}
if(i == 1 || i == n) { // पहली और आखिरी लाइन के लिए, स्टार्स लगातार प्रिंट करें
for(j = 1; j <= i; j++) {
printf("* ");
}
} else {
printf("*"); // प्रत्येक लाइन में शुरू और अंत में स्टार
for(j = 1; j <= 2*i-3; j++) { // हॉलो बनाने के लिए स्पेस प्रिंट करें
printf(" ");
}
printf("*");
}
printf("\n");
}
}
आउटपुट
Enter number of lines: 20
*
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* * * * * * * * * * * * * * * * * * * *
हॉलो डायमंड (Hollow Diamond)
डायमंड के लिए पहली लाइन और आखिरी लाइन पर यह एक स्टार प्रिंट करेगा। अन्य लाइन्स के लिए यह लाइन के शुरू और अंत में ठीक दो स्टार्स प्रिंट करेगा, और इन दो स्टार्स के बीच कुछ ब्लैंक स्पेस होंगे। डायमंड के दो भाग होते हैं। ऊपरी आधा और निचला आधा। ऊपरी आधे में हमें स्पेस काउंट बढ़ाना होता है, और निचले आधे के लिए, हमें स्पेस काउंट घटाना होता है। यहां लाइन नंबरों को मिड नामक एक अन्य वेरिएबल का उपयोग करके दो भागों में विभाजित किया जा सकता है।
उदाहरण कोड
#include <stdio.h>
int main() {
int n, i, j, mid;
printf("Enter number of lines: ");
scanf("%d", &n);
if(n % 2 == 1) { // जब n विषम है, तो इसे 1 से बढ़ाकर सम बनाएं
n++;
}
mid = (n/2);
for(i = 1; i <= mid; i++) {
for(j = 1; j <= (mid-i); j++) { // स्टार से पहले ब्लैंक स्पेस प्रिंट करें
printf(" ");
}
if(i == 1) {
printf("*");
} else {
printf("*"); // प्रत्येक लाइन में शुरू और अंत में स्टार
for(j = 1; j <= 2*i-3; j++) { // हॉलो बनाने के लिए स्पेस प्रिंट करें
printf(" ");
}
printf("*");
}
printf("\n");
}
for(i = mid+1; i < n; i++) {
for(j = 1; j <= i-mid; j++) { // स्टार से पहले ब्लैंक स्पेस प्रिंट करें
printf(" ");
}
if(i == n-1) {
printf("*");
} else {
printf("*"); // प्रत्येक लाइन में शुरू और अंत में स्टार
for(j = 1; j <= 2*(n - i)-3; j++) { // हॉलो बनाने के लिए स्पेस प्रिंट करें
printf(" ");
}
printf("*");
}
printf("\n");
}
}
आउटपुट
Enter number of lines: 15
*
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
*