मान लीजिए कि हमारे पास अंक नामक एक सरणी है, जहां कुछ अंक दिए गए हैं, यहां तक कि सभी सूचकांक अंक जैसे अंक [0], अंक [2] और इसी तरह लड़कों के अंक हैं और सभी अनुक्रमित अंक भी लड़कियों के लिए हैं। हमारे पास एक और इनपुट है जिसे जेंडर कहा जाता है। लिंग का मान या तो 'बी' या 'जी' है, जब यह 'बी' है तो हमें सभी लड़कों का योग वापस करना होगा, और जब यह 'जी' है तो सभी लड़कियों के लिए अंकों का योग वापस करना होगा। (सरणी का आकार N है)
इसलिए, यदि इनपुट एन =9 अंक =[8,5,2,6,7,5,9,9,7] लिंग ='जी' जैसा है, तो आउटपुट 25 होगा क्योंकि 5 + 6 + 5 + 9 =25.
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- g_sum :=0
- b_sum :=0
- इनिशियलाइज़ i :=0 के लिए, जब i
- अगर मैं मॉड 2 1 है, तो:
- g_sum :=g_sum + अंक[i]
- अन्यथा
- b_sum :=b_sum + अंक[i]
- अगर मैं मॉड 2 1 है, तो:
- b_sum लौटाएं
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
#include <stdio.h> #define N 9 int solve(int marks[], int n, char gender){ int g_sum = 0; int b_sum = 0; for(int i = 0; i < n; i++){ if(i % 2 != 0){ g_sum += marks[i]; }else{ b_sum += marks[i]; } } if(gender == 'b') return b_sum; return g_sum; } int main(){ int marks[N] = {8,5,2,6,7,5,9,9,7}; char gender = 'g'; int sum = solve(marks, N, gender); printf("%d", sum); }
इनपुट
{8,5,2,6,7,5,9,9,7}, 'g'
आउटपुट
25