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

C++ में विशेष परिवार में पेशा ज्ञात करें


मान लीजिए डॉक्टरों और इंजीनियरों का एक विशेष परिवार है। कुछ नियम हैं, जो नीचे दिए गए हैं:

  • हर किसी के दो बच्चे हैं
  • इंजीनियर का पहला बच्चा इंजीनियर है, दूसरा बच्चा डॉक्टर है
  • डॉक्टर का पहला बच्चा डॉक्टर है, दूसरा बच्चा इंजीनियर है
  • डॉक्टरों और इंजीनियरों की सभी पीढ़ियां इंजीनियर से शुरू होती हैं

इसलिए यदि हम स्तर 4 और स्थिति 2 के लिए परिणाम चाहते हैं, तो परिणाम डॉक्टर होगा।

विचार सरल है। किसी व्यक्ति का पेशा निम्न दो बातों पर निर्भर करता है।

  • पैरेंट का पेशा।
  • नोड की स्थिति: जब नोड की स्थिति विषम होती है, तो उसका पेशा उसके पैरेंट के समान होता है। अन्यथा पेशा उसके पैरेंट से अलग होता है।

हम पैरेंट के पेशे को पुनरावर्ती रूप से ढूंढते हैं, फिर ऊपर दिए गए बिंदु 2 का उपयोग करके वर्तमान नोड का पेशा ढूंढते हैं।

उदाहरण

#include<iostream> using namespace std; char getProfession(int level, int pos) { if (level == 1) return 'E'; if (getProfession(level-1, (pos+1)/2) == 'D') return (pos%2)? 'D' : 'E'; return (pos%2)? 'E' : 'D'; } int main(void) { int level = 4, pos = 2; cout << "The profession is: "; if(getProfession(level, pos) == 'E'){ cout << "Engineer"; } else { cout << "Doctor" ; } }

आउटपुट

The profession is: Doctor

  1. C++ में त्रिभुज का परिमाप खोजें C++ में त्रिभुज का परिमाप खोजें

    इस समस्या में, हम त्रिभुज का परिमाप, विभिन्न प्रकार के त्रिभुजों के परिमाप का सूत्र और उन्हें खोजने के लिए प्रोग्राम देखेंगे।परिमाप को आकृति के चारों ओर की कुल दूरी के रूप में परिभाषित किया गया है। मूल रूप से, यह दी गई आकृति की सभी भुजाओं का योग है।त्रिभुज का परिमापत्रिभुज का परिमाप इसकी सभी तीन भुज

  1. C++ में डुप्लिकेट उपट्री ढूंढना C++ में डुप्लिकेट उपट्री ढूंढना

    मान लीजिए हमारे पास एक बाइनरी ट्री है। हमें सभी डुप्लिकेट उपट्री ढूंढने हैं। इसलिए प्रत्येक प्रकार के डुप्लिकेट उपट्री के लिए, हमें उनमें से किसी एक का रूट नोड लौटाना है। मान लीजिए हमारे पास ऐसा ट्री है: डुप्लिकेट उपट्री हैं: हल का दृष्टिकोण इसे हल करने के लिए हम निम्नलिखित चरणों का पालन करेंगे:

  1. - C++ प्रोग्राम: GCD (महत्तम समापवर्तक) खोजें

    परिचयदो संख्याओं का महत्तम समापवर्तक (GCD) वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है। उदाहरण के लिए: मान लें हमारे पास दो संख्याएं हैं 45 और 27। 45 = 5 * 3 * 3 27 = 3 * 3 * 3 इसलिए, 45 और 27 का GCD 9 है। उदाहरण 1 (यूक्लिडियन एल्गोरिदम)#include <iostream> using namespace std; int gcd(