Johdanto Palindromiin C ++: ssa

Palindromi on numero, sekvenssi tai sana, joka lukee saman taaksepäin kuin eteenpäin. Rouva Edenissä, minä olen Adam, yksi parhaimmista esimerkeistä palindromasanoista, joka kuulostaa samalla tavalla peruuttamisen jälkeen. Tässä palindromi tekee asioista mielenkiintoisia ja ne toimivat peileinä. Nimi 'palindrome' tarkoittaa oikeastaan ​​juoksemista takaisin Kreikan etymologian mukaan. C ++: ssa palindromiluku on numero, joka pysyy samana taaksepäin. Mutta miten tämä on mahdollista? Kuinka tarkistamme, onko numero liian iso ja monimutkainen? Pidä aina mielessä tämä pieni algoritmi tarkistaaksesi, onko numero palindromi vai ei.

  1. Hanki syötteen numero käyttäjältä.
  2. Pidä sitä väliaikaisessa muuttujassa.
  3. Käännä numero.
  4. Peruuttamisen jälkeen vertaa sitä väliaikaiseen muuttujaan.
  5. Jos sama, niin numero on palindromi.

Älä huoli, tässä on esimerkki siitä, että meidän on tulostettava palindromeja annetun lukualueen väliin. Esimerkiksi alue on (10122), sitten ulostulon tulisi olla (11, 22, 33, 44, 55, 66, 77, 88, 99, 101, 111, 121)

C ++ -ohjelma Palindromen toteuttamiseen

#include
using namespace std;
// Function to check if a number is a palindrome or not.
int Palindrome(int n)
(
// Find reverse of n
int reverse = 0;
for (int i = n; i > 0; i /= 10)
reverse = reverse*10 + i%10;
// To check if they are same
return (n==reverse);
)
//function to prints palindrome between a minimum and maximum number
void countPalindrome(int minimum, int maximum)
(
for (int i = minimum ; i <= maximum; i++)
if (Palindrome(i))
cout << i << " ";
)
// program to test above functionality
int main()
(
countPalindrome(100, 2000);
return 0;
)

lähtö:

Otetaan vielä yksi esimerkki erityisesti käyttämällä jonkin aikaa silmukkaa, joka selittää myös johdannossa käsitellyn algoritmin. Otamme numeron käyttäjän syötteenä ja tarkistamme, onko kyse palindromista vai ei.

C ++ -ohjelma tarkistaaksesi onko numero palindromi vai ei

#include
using namespace std;
int main()
(
int n, sum=0, temp, reverse;
cout<<"Please enter the Number=";
cin>>n;
temp=n;
while(n>0)
(
reverse=n%10;
sum=(sum*10)+reverse;
n=n/10;
)
if(temp==sum)
cout<<"The number is Palindrome.";
else
cout<<"The number is not Palindrome.";
return 0;
)

lähtö:

Yllä oleva koodi vie numeron käyttäjän syötteenä ja laittaa sen väliaikaiseen muuttujaan, koska voit nähdä, että summa on jo 0. Se käyttää jonkin aikaa silmukkaa, kunnes numeroksi tulee 0 ja koodin kirjoittamisen jälkeen se suorittaa toiminta kuten silmukan jälkeen kirjoitettu. Jos lukumääräksi tulee 0, se tarkistaa onko väliaikainen muuttuja yhtä suuri kuin summa. Jos ehto täyttyy, se tulostaa, että numero on palindromi, muuten, jos ehto epäonnistuu, se menee toiseen osaan ja tulostaa, että numero ei ole palindromi.

Vielä yksi esimerkki do-while-silmukasta, joka selittää myös johdannossa käsitellyn algoritmin. Otamme numeron käyttäjän syötteenä ja tarkistamme, onko kyse palindromista vai ei.

C ++ -ohjelma tarkistaaksesi onko numero palindromi vai ei

#include
using namespace std;
int main()
(
int x, number, reverse = 0, temp ;
cout << "Please enter a number here: ";
cin >> number;
x = number;
do
(
temp = number % 10;
reverse = (reverse * 10) + temp;
number = number / 10;
) while (number != 0);
cout << " The reverse of the number is: " << reverse << endl;
if (x == reverse)
cout << " Entered number is a Palindrome.";
else
cout << " Entered number is not a Palindrome.";
return 0;
)

lähtö:

edut

  • Oletetaan, että projektissasi haluat yhdistää ensimmäisen merkkijono / elementin viimeisen, sitten toisen elementin / merkkijonon toiseen viimeiseen ja niin edelleen, ja merkkijono on palindromi, jos saavutat keskelle. Käyttämällä vain silmukkaa voit suorittaa kaikki toiminnot ja se säästää paljon aikaa ja tilaa ohjelmoinnissa, koska tässä tapauksessa sinun ei tarvitse muokata olemassa olevaa merkkijonoa eikä kirjoittaa toista muuttujaa muistiin. Myös tarvittavat ottelut ovat täysin yhtä suuret kuin puolet merkkijonon pituudesta.
  • Jos työskentelet ohjelmointikielen kanssa, jossa merkkijonon kääntäminen on helppoa, mutta se vaatii ylimääräisen tilan tallentaaksesi käänteisen merkkijonon toisella tavalla, kuten rekursio, vaatii enemmän pinokehystä. On olemassa vielä yksi tapa kuin rekursiointi, ja se on silmukan kirjoittaminen merkkijonon keskelle tarkistaaksesi, vastaava kirjain molemmissa päissä on sama vai ei. Jos epätasa-arvoinen, katkaise pari aikaisin ja julista merkkijono ei ole palindromi.
  • Edellä esitetyllä lähestymistavalla on etuna se, että se ei tuhlaa mitään laskennallisia resursseja, kuten rekursio, tarvitsematta ylimääräisiä pinokehyksiä, mutta se ei myöskään ole yksinkertainen, koska vain käännetään merkkijono ja tarkistetaan niiden välinen tasa-arvo. Se vaatii vaivaa, mutta se on aina vähemmän kuin muut algoritmit, koska se on yksinkertaisin tapa löytää palindromi.
  • Jokaisella tekniikalla on etuja ohjelmoinnissa ja on tuhansia muita tapoja suorittaa sama tehtävä, mutta tehokkaasti. Se riippuu täysin nykyisestä projektistasi. Sinun on vain päätettävä tilanteen mukaan, mikä tekniikka auttaa sinua tarjoamaan parhaat edut riippumatta haitoista.
  • Oikeassa projektissa sinun on suoritettava n lukumäärää palindromitarkastuksia säännöllisesti lyhyessä ajassa. Tämän jälkeen sinun tulisi toteuttaa yllä oleva algoritmi ensin, kunnes ja ellet vaadi optimistisempaa ratkaisua nykyisiin teknisiin rajoituksiin.

johtopäätös

Käyttämällä palindromi-algoritmia voit tehdä hausta tehokkaampaa ja nopeampaa palindromien löytämisessä riippumatta tietotyypeistä, kuten merkkijono tai kokonaisluku. Projekteissa, joilla on useita tietoja eri järjestelmissä, näitä algoritmeja voidaan käyttää yleisen suorituskyvyn parantamiseksi huomattavasti nopeammin.

Suositellut artikkelit

Tämä on opas Palindromeen C ++: ssa. Tässä keskustellaan C ++ -ohjelmasta Palindroman tarkistamiseksi ja toteuttamiseksi etujen avulla. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. Palindrome-ohjelma C ++: ssa
  2. Paras C ++ -kääntäjä
  3. Fibonacci-sarja C ++: ssa
  4. Ylikuormitus C ++: ssa
  5. Ylikuormitus Java-sovelluksessa
  6. C ++ -tyypit
  7. Pythonin ylikuormitus
  8. C ++: n 11 tärkeintä ominaisuutta ja hyötyä
  9. Fibonacci-sarja JavaScriptinä ja esimerkkejä