Redaksiya
Alqoritm Analizi
Giriş rəqəmini s
simvol massivinə bir sətir kimi oxuyun. len
dəyişənini s
sətirinin uzunluğu kimi götürün, bundan 1 çıxarın (rəqəmin son rəqəminin yerləşdiyi simvol massivindəki hücrənin indeksi). Sətir palindromdur əgər bütün üçün doğrudursa.
Məsələn, 4570754 rəqəmini 7 uzunluğunda götürək. Onda len = 7 – 1 = 6
olur. Aşağıdakı bərabərliklər doğrudur:
s[0] = s[6 - 0] = s[6] = ‘4’;
s[1] = s[6 - 1] = s[5] = ‘5’;
s[2] = s[6 - 2] = s[4] = ‘7’;
Alqoritm Tətbiqi
Giriş rəqəmini s
simvol massivinə oxuyun.
char s[50];
Giriş rəqəmini bir sətir kimi oxuyun. len
-i son rəqəmin indeksi kimi təyin edin.
gets(s); len = strlen(s) - 1; flag = 0;
flag = 0
təyin edin, bu rəqəmin palindrom olduğunu göstərir. Əgər bərabərliyi bəzi i
üçün pozulursa, rəqəm palindrom deyil, flag = 1
təyin edin.
for(i = 0; i < len - i; i++) if (s[i] != s[len - i]) flag = 1;
flag
dəyərinə əsasən nəticəni çap edin.
if (flag == 0) printf("Yes\n"); else printf("No\n");
Tətbiq – IsPalindrome Funksiyası
#include <stdio.h> #include <string.h> char s[50]; int flag; int IsPalindrome(char *s) { int i = 0, j = strlen(s) - 1; while(i < j) { if (s[i] != s[j]) return 0; i++; j--; } return 1; } int main(void) { gets(s); flag = IsPalindrome(s); if (flag == 1) printf("Yes\n"); else printf("No\n"); return 0; }
Tətbiq – STL reverse
#include <cstdio> #include <iostream> #include <string> #include <algorithm> using namespace std; string p, q; int main(void) { cin >> p; q = p; reverse(q.begin(),q.end()); if (p == q) printf("Yes\n"); else printf("No\n"); return 0; }
Java Tətbiqi
import java.util.*; public class Main { public static void main(String[] args) { Scanner con = new Scanner(System.in); char[] s = con.nextLine().toCharArray(); int flag = 0, len = s.length - 1; for(int i = 0; i < len - i; i++) if (s[i] != s[len - i]) flag = 1; if (flag == 0) System.out.println("Yes"); else System.out.println("No"); con.close(); } }
Java Tətbiqi – IsPalindrome Funksiyası
import java.util.*; public class Main { public static int IsPalindrome(String s) { int i = 0, j = s.length() - 1; while(i < j) { if (s.charAt(i) != s.charAt(j)) return 0; i++; j--; } return 1; } public static void main(String[] args) { Scanner con = new Scanner(System.in); String s = con.next(); int flag = IsPalindrome(s); if (flag == 1) System.out.println("Yes"); else System.out.println("No"); con.close(); } }
Python Tətbiqi
a = input() if a == a[::-1]: print("Yes") else: print("No")