इसलिए मैं एक डेटाबेस से दो लोगों के आधार पर एक अभिवादन लाइन बनाने की विधि बना रहा हूं।
चार पैरामीटर हैं: दो नाम ( name1
और name2
) और दो लिंग ( gender
और gender2
)।
प्रत्येक लिंग संयोजन के लिए, मेरे पास एक अलग आउटपुट है।
उदाहरण के लिए: यदि लिंग 1 है M
(पुरुष) और लिंग 2 भी है M
, तो आउटपुट कुछ इस तरह होना चाहिए:
Dear Sir name1 and Sir name2,
इस समय, मेरा स्विच इस तरह दिखता है:
switch(gender1){
case 'M':
switch(gender2){
case 'M': printf("Dear Sir %s and Sir %s", name1, name2); break;
case 'W': printf("Dear Sir %s and Madame %s", name1, name2); break;
case 'R': ...
}
break;
case 'W':
switch(gender2){
case 'M': printf("Dear Madame %s and Sir %s", name1, name2); break
case 'W': printf("Dear Madame %s and Madame %s", name1, name2); break;
case 'R': ...
}
break;
case ...etc.
}
ध्यान दें कि मैं कई लिंग विकल्प हैं, जैसे 'R'
के लिए "Dear Relation"
और कुछ और है कि मैं समय का अनुवाद करने की जरूरत नहीं है।
मैं इस डबल स्विच स्टेटमेंट को कैसे कम कर सकता हूं?
एक विधि में दूसरा स्विच डालना एक विकल्प नहीं है क्योंकि एक ऐसा मामला भी है जहां दोनों के नाम समान हैं और फिर आउटपुट को इस तरह संयोजित किया जाना चाहिए: "Dear Sir and Madame name1,"
gender1+gender2
।
Madam
, नहीं Madame
। Madame
फ्रांसीसी रूप है।