एक स्ट्रिंग str[] दी गई है, कार्य यह जांचना है कि स्ट्रिंग में कोई विशेष वर्ण है या नहीं और यदि स्ट्रिंग में विशेष वर्ण है तो "स्ट्रिंग स्वीकार नहीं की गई" प्रिंट करें अन्यथा "स्ट्रिंग स्वीकार की गई" प्रिंट करें।
विशेष वर्ण वे वर्ण हैं जो न तो संख्यात्मक हैं और न ही वर्णमाला के अर्थात - !@#$%^&*()+=-\][‘;/.,{}|:”<>?`~
तो C प्रोग्रामिंग भाषा में हम समस्या को हल करने के लिए if-else दृष्टिकोण का उपयोग करेंगे।
इनपुट
str[] = {"tutorials-point"} आउटपुट
स्ट्रिंग स्वीकार नहीं की गई
इनपुट
str[] = {"tutorialspoint"} आउटपुट
स्ट्रिंग स्वीकार की गई
समस्या हल करने के लिए उपयोग किया गया दृष्टिकोण
पूरी स्ट्रिंग को पार करें।
विशेष वर्ण की तलाश करें, यदि विशेष वर्ण स्ट्रिंग में मौजूद है तो, "स्ट्रिंग स्वीकार नहीं की गई और ब्रेक" प्रिंट करें। अन्यथा, स्ट्रिंग स्वीकार की गई प्रिंट करें।
अन्य दृष्टिकोण
यदि हम जावा या किसी अन्य भाषा में कोडिंग कर रहे हैं जो नियमित अभिव्यक्तियों की अवधारणा का समर्थन करती है, तो if-else दृष्टिकोण के बजाय हम नियमित अभिव्यक्तियों का उपयोग करके जांचेंगे कि क्या वे दी गई स्ट्रिंग में मौजूद हैं या नहीं। यह न केवल एक सरल दृष्टिकोण है बल्कि तेज भी है।
एल्गोरिदम
शुरू फ़ंक्शन int special_character(char str[], int n) में चरण 1 → i और flag प्रारंभ करें और flag को 0 सेट करें चरण 2 → लूप i = 0 से i < n और ++i के लिए यदि (str[i] == '!' || str[i] == '@' || str[i] == '#' || str[i] == '$' || str[i] == '%' || str[i] == '^' || str[i] == '&' || str[i] == '*' || str[i] == '(' || str[i] == ')' || str[i] == '-' || str[i] == '{' || str[i] == '}' || str[i] == '[' || str[i] == ']' || str[i] == ':' || str[i] == ';' || str[i] == '"' || str[i] == '\'' || str[i] == '<' || str[i] == '>' || str[i] == '.' || str[i] == '/' || str[i] == '?' || str[i] == '~' || str[i] == '`') तो "स्ट्रिंग अनुमत नहीं है" प्रिंट करें flag को 1 सेट करें break चरण 3 → यदि flag == 0 तो, "स्ट्रिंग स्वीकार की गई" प्रिंट करें फ़ंक्शन int main(int argc, char const *argv[]) में चरण 1 → str[] को {"Tutorials-point"} के रूप में घोषित और सेट करें चरण 2 → n को strlen(str) के रूप में सेट करें चरण 3 → special_character(str, n) कॉल करें रुकें उदाहरण
#include <stdio.h> #include <string.h> int special_character(char str[], int n){ int i, flag = 0; for (i = 0; i < n; ++i){ // स्ट्रिंग के प्रत्येक वर्ण की विशेष वर्ण के लिए जांच if(str[i] == '!' || str[i] == '@' || str[i] == '#' || str[i] == '$' || str[i] == '%' || str[i] == '^' || str[i] == '&' || str[i] == '*' || str[i] == '(' || str[i] == ')' || str[i] == '-' || str[i] == '{' || str[i] == '}' || str[i] == '[' || str[i] == ']' || str[i] == ':' || str[i] == ';' || str[i] == '"' || str[i] == '\'' || str[i] == '<' || str[i] == '>' || str[i] == '.' || str[i] == '/' || str[i] == '?' || str[i] == '~' || str[i] == '`'){ printf("स्ट्रिंग अनुमत नहीं है\n"); flag = 1; break; } } // यदि कोई विशेष वर्ण नहीं है if (flag == 0){ printf("स्ट्रिंग स्वीकार की गई\n"); } return 0; } int main(int argc, char const *argv[]){ char str[] = {"Tutorials-point"}; int n = strlen(str); special_character(str, n); return 0; } आउटपुट
उपरोक्त कोड चलाने पर निम्नलिखित आउटपुट उत्पन्न होगा:
स्ट्रिंग अनुमत नहीं है