में वर्णों की तुलना करने की कोशिश कर रहा हूं मैं सी # के लिए नया हूं। मैंने इसे प्रोग्रामिंग भाषाओं को अपने निपटान में विस्तारित करना सीखना शुरू कर दिया है, लेकिन मैंने एक छोटी सी समस्या में भाग लिया है जिसे मैंने न तो सी और न ही जावा में सामना किया था।सी #
मैं कीबोर्ड से उपयोगकर्ता प्रतिक्रिया प्राप्त करने की कोशिश कर रहा हूं और फिर इसे संभावित मामलों से तुलना कर रहा हूं और यदि इनमें से कोई भी मामला मेल नहीं खाता है तो मैं चाहता हूं कि उपयोगकर्ता को सही मान में प्रवेश करने तक प्रक्रिया को दोहराना पड़े।
String input = Console.ReadLine();
while ((input[0] != 'N') || (input[0] != 'Y'))
{
input = Console.ReadLine();
}
if (input[0] == 'N')
{
Console.WriteLine("NO");
Console.ReadKey();
}
else if (input[0] == 'Y')
{
Console.WriteLine("YES");
Console.ReadKey();
}
यह सबसे कारगर तरीका मैं कोशिश की है दूर नहीं कर रहा है, मैं भी एक करते करते हुए पाश और कई अन्य वेरिएंट की कोशिश की।
मुझे जिस समस्या का सामना करना पड़ता है वह यह है कि जब लूप लूप सक्रिय नहीं होता है, तब सबकुछ ठीक काम करता है, लेकिन जब मैं इसे जोड़ता हूं, तो इनपुट हमेशा एन या वाई होने पर भी लूप में प्रवेश करता है और फिर भी लूप को कभी नहीं छोड़ सकता यह स्पष्ट है कि यह गलत है।
कृपया अगर कोई मुझे कुछ अंतर्दृष्टि दे सकता है कि यह क्यों हो रहा है या कोई ऐसा करने का बेहतर तरीका प्रस्तावित कर सकता है तो इसकी सराहना की जाएगी। धन्यवाद।
करीम
बदलें || के साथ & –
स्विच और ब्रेक करने का प्रयास करें .. – sajanyamaha
मुझे लगता है कि आपको ऐसा कुछ करना चाहिए: जबकि (! (इनपुट [0] == 'वाई' || इनपुट [0] == 'एन')) –