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

n से पहले वर्ग और अवर्ग संख्याओं की गणना करें C++ में


हमें एक संख्या N दी गई है। लक्ष्य धनात्मक संख्याओं के क्रमित जोड़े ढूंढना है जैसे कि उनके घनों का योग N हो।

सामान्य दृष्टिकोण

1 से N तक सभी संख्याओं को पार करें और जांचें कि क्या यह एक पूर्ण वर्ग है। यदि floor(sqrt(i)) == ceil(sqrt(i))।

तब संख्या एक पूर्ण वर्ग है।

कुशल दृष्टिकोण

N से कम पूर्ण वर्ग सूत्र का उपयोग करके पाए जा सकते हैं: floor(sqrt(N))।

उदाहरण से समझते हैं

इनपुट

N=20

आउटपुट

वर्ग संख्याओं की संख्या: 4 अवर्ग संख्याओं की संख्या: 16

व्याख्या

वर्ग संख्याएं हैं 1, 4, 9 और 16। बाकी सभी अवर्ग हैं और 20 से कम हैं।

इनपुट

N=40

आउटपुट

वर्ग संख्याओं की संख्या: 6 अवर्ग संख्याओं की संख्या: 34

व्याख्या

वर्ग संख्याएं हैं 1, 4, 9, 16, 25, 36। बाकी सभी अवर्ग हैं और 40 से कम हैं।

सामान्य दृष्टिकोण

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण

  • हम पूर्णांक N लेते हैं।

  • फ़ंक्शन squareNums(int n) n लेता है और n से कम उन संख्याओं की संख्या लौटाता है जो पूर्ण वर्ग या अवर्ग हैं।

  • प्रारंभिक चर count को 0 से आरंभ करें।

  • i=1 से i<=n तक फॉर लूप का उपयोग करके पार करें।

  • यदि floor(sqrt(i))==ceil(sqrt(i)), तो संख्या पूर्ण वर्ग है इसलिए काउंट बढ़ाएं।

  • सभी लूप के अंत में काउंट में कुल संख्या होगी जो पूर्ण वर्ग हैं।

  • N-वर्ग अवर्ग संख्याएं होंगी।

उदाहरण

#include <bits/stdc++.h> #include <math.h> using namespace std; int squareNums(int n){    int count = 0;    for (int i = 1; i <= n; i++){       if(floor(sqrt(i))==ceil(sqrt(i)))          { count++; }    }    return count; } int main(){    int N = 40;    int squares=squareNums(N);    cout <<endl<<"वर्ग संख्याओं की संख्या: "<<squares;    cout <<endl<<"अवर्ग संख्याओं की संख्या: "<<N-squares;    return 0; }

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा -

वर्ग संख्याओं की संख्या: 6 अवर्ग संख्याओं की संख्या: 34

कुशल दृष्टिकोण

नीचे दिए गए प्रोग्राम में उपयोग किया गया दृष्टिकोण

  • हम पूर्णांक N लेते हैं।

  • चर squares = floor(sqrt(N)) लें।

  • चर squares में N से कम पूर्ण वर्गों की संख्या होगी।

  • N-squares N से कम अवर्गों की संख्या होगी।

उदाहरण

#include <bits/stdc++.h> #include <math.h> using namespace std; int main(){    int N = 40;    int squares=floor(sqrt(N));    cout <<endl<<"वर्ग संख्याओं की संख्या: "<<squares;    cout <<endl<<"अवर्ग संख्याओं की संख्या: "<<N-squares;    return 0; }

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्नलिखित आउटपुट उत्पन्न करेगा -

वर्ग संख्याओं की संख्या: 6 अवर्ग संख्याओं की संख्या: 34

  1. - C++ में बिफोर एंड आफ्टर पजल

    मान लीजिए हमारे पास फ्रेज़ेज़ की एक लिस्ट है, बिफोर एंड आफ्टर पजल्स की एक लिस्ट जनरेट करें। यहां एक फ्रेज़ एक स्ट्रिंग है जिसमें केवल लोअरकेस लेटर्स और स्पेसेस होते हैं। शुरुआत और अंत में कोई स्पेस नहीं होगा। एक फ्रेज़ में कोई लगातार स्पेसेस नहीं होंगे। बिफोर एंड आफ्टर पजल्स वे फ्रेज़ेज़ हैं जो दो

  1. - C++ में अभाज्य संख्याएं और फिबोनाची संख्याएं

    इस समस्या में, हमें एक संख्या n दी गई है। हमारा कार्य n से कम या बराबर सभी अभाज्य और फिबोनाची संख्याओं को प्रिंट करना है। आइए एक उदाहरण से समझते हैं: इनपुट: n = 30 आउटपुट: 2 3 5 13 व्याख्या 30 से कम फिबोनाची संख्याएं हैं: 1, 1, 2, 3, 5, 8, 13, 21। इनमें से अभाज्य संख्याएं हैं: 2, 3, 5, 13। इस समस्य

  1. - C++ में वर्ग मैट्रिक्स में अधिकतम और न्यूनतम

    समस्या कथन n*n क्रम का एक वर्ग मैट्रिक्स दिया गया है, मैट्रिक्स से अधिकतम और न्यूनतम ढूंढें। उदाहरण यदि दिया गया मैट्रिक्स है: {{15, 17, 19}, {5, 1, 7}, {14, 5, 16}} तब न्यूनतम संख्या 1 है और अधिकतम संख्या 19 है। एल्गोरिदम मैट्रिक्स की एक पंक्ति की शुरुआत से एक तत्व और उसी पंक्ति के अंत से दूसरा