Palindromlar müəyyən diapazonda

Verilən rəqəmlər aralığında bütün palindromları çap edin.

misal

Giriş: {100, 200}
Çıxış: 101, 111, 121, 131, 141, 151, 161,
171, 181, 191

Zamanın mürəkkəbliyi: O (n)

Alqoritm

Aralıqdakı bütün nömrələr üçün nömrənin palindrom olub olmadığını yoxlayın.

a. Palindrom yazdırsa. Sayı 1 artırın

b. Başqa, nömrəni 1 artırın.

c. Sayı aralığa qədər bunu edin.

#include <bits/stdc++.h>

using namespace std;

//check if number is palindrome or not
bool isPalindrome(int n)
{
    // Find reverse of n
    int reverse = 0;
    for (int i = n; i > 0; i /= 10)
    {
        reverse = reverse*10 + i;
    }
    if (n == reverse)
    {
        return true;
    }
    else
    {
        return false;
    }
}
 
// prints palindrome between min and max
void PrintPalindromes(int min, int max)
{
    for (int i = min; i <= max; i++)
    {
        if (isPalindrome(i))
        {
          cout << i << " ";
        }
    }
}
 
//Main function
int main()
{
    PrintPalindromes(1, 600);
    return 0;
}

Yoxla

 

Şərh yaz

Translate »