چگونه می توان متقارن بودن مدار را بررسی کرد


گفته می شود که یک زنجیره متقارن است اگر توالی اصلی و مخالف آن یکسان باشد. در این مقاله ، با الگوریتم تعیین یکسان بودن یا نبودن یک رشته آشنا خواهید شد. همچنین نحوه پیاده سازی این الگوریتم را در محبوب ترین زبان های برنامه نویسی مانند C ++ ، Python ، C و JavaScript فرا خواهید گرفت.

نمونه هایی از سری Palindrome

در اینجا چند نمونه از مدارهای متقارن و نامتقارن آورده شده است:

الگوریتم تعیین متقارن بودن یا نبودن یک رشته

الگوریتم ها به سادگی مجموعه ای از دستورالعمل ها هستند که مرحله به مرحله برای انجام کار مفید یا حل یک مسئله دنبال می شوند. با استفاده از الگوریتم زیر می توانید مسئله تقارن سری را حل کنید:

  1. تابعی را تعریف کنید که رشته مشخص شده را به عنوان آرگومان بگیرد.
  2. یک متغیر Boolean ایجاد کنید و آن را روی Integer تنظیم کنید. اجازه دهید متغیر باشد علوم پایه .
  3. طول زنجیره داده شده را پیدا کنید. اجازه دهید طول باشد n .
  4. رشته مقایسه شده را به کوچک تبدیل کنید تا کاراکترهای غیر حروف را مقایسه کنید.
  5. متغیر را با معیار کم مانند مقداردهی اولیه کم و آن را روی 0 قرار دهید.
  6. متغیر فوق را به صورت اولیه شروع کنید بالا و آن را روی n-1 تنظیم کنید.
  7. موارد زیر را انجام دهید تا مقدار کم کمتر از مقدار بالا باشد:
    • نویسه های کم و زیاد را مقایسه کنید.
    • اگر حروف مطابقت ندارند ، پرچم را اشتباه تنظیم کنید و حلقه را ببرید.
    • پایین را 1 افزایش دهید و بالا را 1 کاهش دهید.
  8. اگر پرچم در انتهای عملکرد صحیح باشد ، به این معنی است که زنجیره مشخص شده متقارن است.
  9. اگر علامت در انتهای تابع نادرست باشد ، به این معنی است که مدار مشخص شده متقارن نیست.

برنامه C ++ برای بررسی متقارن بودن یا نبودن یک رشته

موارد زیر اجرای C ++ برای تعیین متقارن بودن یا نبودن یک رشته است:

 // Including libraries
#include <bits/stdc++.h>
using namespace std;
// Function to check string palindrome
void checkPalindrome(string str)
{
// Flag to check if the given string is a palindrome
bool flag = true;

// Finding the length of the string
int n = str.length();

// Converting the string to lowercase
for(int i = 0; i < n; i++)
{
str[i] = tolower(str[i]);
}

// Initializing low index variable
int low = 0;

// Initializing high index variable
int high = n-1;

// Running the loop until high is greater than low
while (high > low)
{
// If the characters are not same, set the flag to false
// and break from the loop
if(str[high] != str[low])
{
flag = false;
break;
}

// Increment the low index variable
low++;

// Decrement the high index variable
high--;
}

// Check if flag is true or false
if (flag)
{
cout << "Yes, the given string is a palindrome" << endl;
}
else
{
cout << "No, the given string is not a palindrome" << endl;
}

return;

}
int main()
{
// Test case: 1
string str1 = "MUO";
checkPalindrome(str1);

// Test case: 2
string str2 = "madam";
checkPalindrome(str2);

// Test case: 3
string str3 = "MAKEUSEOF";
checkPalindrome(str3);

// Test case: 4
string str4 = "racecar";
checkPalindrome(str4);

// Test case: 5
string str5 = "mom";
checkPalindrome(str5);

return 0;
}

محصولات:

 No, the given string is not a palindrome
Yes, the given string is a palindrome
No, the given string is not a palindrome
Yes, the given string is a palindrome
Yes, the given string is a palindrome

برنامه پایتون برای بررسی متقارن بودن یا نبودن یک رشته

در زیر یک برنامه Python برای تعیین متقارن بودن یک رشته وجود دارد:

 # Function to check string palindrome
def checkPalindrome(str):
# Flag to check if the given string is a palindrome
flag = True
# Finding the length of the string
n = len(str)
# Converting the string to lowercase
str = str.lower()
# Initializing low index variable
low = 0
# Initializing high index variable
high = n-1
# Running the loop until high is greater than low
while high > low:
# If the characters are not same, set the flag to false
# and break from the loop
if str[high] != str[low]:
flag = False
break
# Increment the low index variable
low = low + 1
# Decrement the high index variable
high = high - 1
# Check if flag is true or false
if flag:
print("Yes, the given string is a palindrome")
else:
print("No, the given string is not a palindrome")
# Test case: 1
str1 = "MUO"
checkPalindrome(str1)
# Test case: 2
str2 = "madam"
checkPalindrome(str2)
# Test case: 3
str3 = "MAKEUSEOF"
checkPalindrome(str3)
# Test case: 4
str4 = "racecar"
checkPalindrome(str4)
# Test case: 5
str5 = "mom"
checkPalindrome(str5)

محصولات:

 No, the given string is not a palindrome
Yes, the given string is a palindrome
No, the given string is not a palindrome
Yes, the given string is a palindrome
Yes, the given string is a palindrome

برنامه C برای بررسی اینکه یک رشته یکسان است یا خیر

موارد زیر کاربرد C برای تعیین متقارن بودن یا نبودن یک سری خاص است:

 // Including libraries
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdbool.h>
// Function to check string palindrome
void checkPalindrome(char str[])
{
// Flag to check if the given string is a palindrome
bool flag = true;
// Finding the length of the string
int n = strlen(str);
// Converting the string to lowercase
for(int i = 0; i < n; i++)
{
str[i] = tolower(str[i]);
}
// Initializing low index variable
int low = 0;
// Initializing high index variable
int high = n-1;
// Running the loop until high is greater than low
while (high > low)
{
// If the characters are not same, set the flag to false
// and break from the loop
if(str[high] != str[low])
{
flag = false;
break;
}
// Increment the low index variable
low++;
// Decrement the high index variable
high--;
}
// Check if flag is true or false
if (flag)
{
printf("Yes, the given string is a palindrome ⁠n");
}
else
{
printf("No, the given string is not a palindrome ⁠n");
}
return;
}
int main()
{
// Test case: 1
char str1[] = "MUO";
checkPalindrome(str1);
// Test case: 2
char str2[] = "madam";
checkPalindrome(str2);
// Test case: 3
char str3[] = "MAKEUSEOF";
checkPalindrome(str3);
// Test case: 4
char str4[] = "racecar";
checkPalindrome(str4);
// Test case: 5
char str5[] = "mom";
checkPalindrome(str5);
return 0;
}

محصولات:

 No, the given string is not a palindrome
Yes, the given string is a palindrome
No, the given string is not a palindrome
Yes, the given string is a palindrome
Yes, the given string is a palindrome

برنامه JavaScript برای بررسی اینکه آیا رشته داده شده Palindrome است یا خیر

در زیر یک برنامه جاوا اسکریپت برای تعیین اینکه یک رشته خاص یکسان است یا نه:

 // Function to check string palindrome
function checkPalindrome(str) {
// Flag to check if the given string is a palindrome
var flag = true;
// Finding the length of the string
var n = str.length;
// Converting the string to lowercase
str = str.toLowerCase();
// Initializing low index variable
var low = 0;
// Initializing high index variable
var high = n-1;
// Running the loop until high is greater than low
while (high > low) {
// If the characters are not same, set the flag to false
// and break from the loop
if(str[high] != str[low]) {
flag = false;
break;
}
// Increment the low index variable
low++;
// Decrement the high index variable
high--;
}
// Check if flag is true or false
if (flag) {
console.log("Yes, the given string is a palindrome");
} else {
console.log("No, the given string is not a palindrome");
}
}
// Test case: 1
var str1 = "MUO";
checkPalindrome(str1);
// Test case: 2
var str2 = "madam";
checkPalindrome(str2);
// Test case: 3
var str3 = "MAKEUSEOF";
checkPalindrome(str3);
// Test case: 4
var str4 = "racecar";
checkPalindrome(str4);
// Test case: 5
var str5 = "mom";
checkPalindrome(str5);

محصولات:

 No, the given string is not a palindrome
Yes, the given string is a palindrome
No, the given string is not a palindrome
Yes, the given string is a palindrome
Yes, the given string is a palindrome

کار با جملات را در برنامه نویسی بیاموزید

کار با رشته ها بخشی جدایی ناپذیر از برنامه نویسی است. شما باید بدانید که چگونه از رشته ها در تمام زبان های برنامه نویسی مانند پایتون ، جاوا اسکریپت ، ++ C و غیره استفاده کرده و آنها را دستکاری کنید.

اگر به دنبال زبانی برای شروع هستید ، پایتون یک انتخاب عالی است.



منبع

Author: terem

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *