एक स्ट्रिंग str[] को देखते हुए, कार्य यह जांचना है कि क्या स्ट्रिंग में कोई विशेष वर्ण है और यदि स्ट्रिंग में एक विशेष वर्ण है तो "स्ट्रिंग स्वीकार नहीं किया जाता है" प्रिंट करें अन्यथा प्रिंट करें " स्ट्रिंग स्वीकार कर ली गई है"।
विशेष वर्ण वे वर्ण होते हैं जो न तो संख्यात्मक होते हैं और न ही वर्णानुक्रमिक अर्थात - !@#$%^&*()+=-\][';/.,{}|:"<>?`~
तो सी प्रोग्रामिंग भाषा में हम समस्या को हल करने के लिए if-else दृष्टिकोण का उपयोग करेंगे।
इनपुट - str[] ={"ट्यूटोरियल-पॉइंट"}
आउटपुट - स्ट्रिंग स्वीकार नहीं की जाती है
इनपुट - str[] ={"ट्यूटोरियल पॉइंट"}
आउटपुट - स्ट्रिंग स्वीकार की जाती है
समस्या को हल करने के लिए नीचे इस्तेमाल किया गया तरीका इस प्रकार है -
-
पूरी स्ट्रिंग को ट्रैवर्स करें।
-
विशेष वर्ण की तलाश करेंगे, यदि विशेष वर्ण स्ट्रिंग में मौजूद है, तो "स्ट्रिंग स्वीकार नहीं किया गया है और तोड़ें" प्रिंट करें। अन्यथा, स्ट्रिंग को प्रिंट करना स्वीकार किया जाता है।
अन्य दृष्टिकोण
यदि हम जावा या किसी अन्य भाषा में कोडिंग कर रहे हैं जो रेगुलर एक्सप्रेशन की अवधारणा का समर्थन करता है, तो if-else अप्रोच के बजाय हम यह जांचने के लिए रेगुलर एक्सप्रेशन का उपयोग करेंगे कि वे दिए गए स्ट्रिंग में मौजूद हैं या नहीं। यह न केवल एक आसान तरीका है बल्कि तेज़ भी है।
एल्गोरिदम
Start In function int special_character(char str[], int n) Step 1→ initialize i and flag and set flag as 0 Step 2→ Loop For i = 0 and i < n and ++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] == '`' then Print "String is not allowed” Set flag as 1 break Step 3→ If flag == 0 then, Print "string is accepted” In function int main(int argc, char const *argv[]) Step 1→ Declare and set str[] as {"Tutorials-point"} Step 2→ set n as strlen(str) Step 3→ special_character(str, n) Stop
उदाहरण
#include <stdio.h> #include <string.h> int special_character(char str[], int n){ int i, flag = 0; for (i = 0; i < n; ++i){ //checking each character of the string for special character. 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("String is not allowed\n"); flag = 1; break; } } //if there is no special charcter if (flag == 0){ printf("string is accepted\n"); } return 0; } int main(int argc, char const *argv[]){ char str[] = {"Tutorials-point"}; int n = strlen(str); special_character(str, n); return 0; }
आउटपुट
यदि उपरोक्त कोड चलाया जाता है तो यह निम्न आउटपुट उत्पन्न करेगा -
String is not allowed