Heim  >  Artikel  >  Backend-Entwicklung  >  Palindrom in C#

Palindrom in C#

王林
王林Original
2024-09-03 15:34:21965Durchsuche

Jede Hochschule oder Universität neigt dazu, ihren Studenten etwas Bewegung zu bieten. Um Spaß zu machen, werden den Schülern Programme wie Palindrome gegeben. Jede Programmiersprache hat ihre eigene Art, ein Programm für Palindrome zu schreiben. Viele Menschen sind mit diesem Konzept vielleicht vertraut oder auch nicht. Machen Sie sich deswegen keine Sorgen. Im kommenden Artikel „Palindrom in c#“ erfahren Sie, was Palindrom genau ist und wie wir es programmgesteuert implementieren können.

Lassen Sie uns darüber sprechen, was Palindrom genau bedeutet. Jede Zahl, die gleich bleibt, auch wenn wir sie umkehren.

Beispiel: 1234321 => Diese Nummer ergibt, auch wenn Sie versuchen, in umgekehrter Reihenfolge zu schreiben, dieselbe Nummer.
Weitere Beispiele sind 565.757, 99899, ​​52125 usw.

Schauen wir uns nun die genaue Methode zur Berechnung an.

Angenommen, wir haben eine Nr. 434.
Jetzt kehren wir es um und wir erhalten nur 434.

Das Lustigste an Palindromen ist, dass wir, wenn wir sie hinzufügen, eine neue Palindrom-Nr. erhalten.

Beispiel: 214 + 412 = 626 (626 ist nichts anderes als die Palindrom-Nr.)
Das bedeutet einfach, wenn wir Nr. vorwärts und rückwärts durchlaufen, erhalten wir auch die gleiche Nr.
Es gibt bestimmte Möglichkeiten, Palindrome in verschiedenen Sprachen zu überprüfen. Hier werden wir es mit C# überprüfen.

Die Logik hinter Palindrom in C#

Die hier verwendete einfache Logik durchläuft die Reihe der Eingaben vorwärts und rückwärts, und die gegebene Zahl oder eine Zeichenfolge ist mit dem Anfangsbuchstaben identisch mit der entsprechenden Ausgabe, die als Palindrom bezeichnet wird.

Schauen Sie sich das folgende Programm genau an, das die Eingaben des Benutzers entgegennimmt und prüft, ob es sich um ein Palindrom handelt oder nicht. Dies ist sehr einfach zu erkennen, wenn Sie das Konzept eines Palindroms kennen.

Code:

using System;
public class IsPalindrome
{
public static void Main(string[] args)
{
int no,total=0,t,rev;
Console.Write("Please provide the no: ");
no = int.Parse(Console.ReadLine());
t=no;
while(no>0)
{
rev=no%10;
total=(total*10)+rev;
no=no/10;
}
if(t==total)
Console.Write("The given number is Palindrome.");
else
Console.Write("The given number is not Palindrome");
}
}

Ausgabe:

Die Ausgabe, die den Benutzer auffordert, eine beliebige Nummer einzugeben.

Nach der Eingabe von „Nein“ wird nun angezeigt, ob es sich bei „Nein“ um ein Palindrom handelt oder nicht.

Palindrom in C#

Im obigen Programm haben wir Eingaben vom Benutzer entgegengenommen. Wir haben diese Eingabe mit der Parse-Methode in eine Ganzzahl umgewandelt. Mit Hilfe einer While-Schleife haben wir die Nr. umgekehrt und mit der Original-Nr. verglichen.

Wenn das vom Benutzer bereitgestellte Nein und das von uns umgedrehte Nein identisch sind, handelt es sich bei diesem Nein um ein Palindrom. Hier in unserem Fall haben wir 212 genommen. Und die Ausgabe, die wir als gegebene Zahl erhalten haben, ist ein Palindrom.

Wie überprüfe ich Palindrome in C# mit verschiedenen Methoden?

Bisher haben wir nur Zahlen überprüft, die ein Palindrom sind. Aber lassen Sie mich Ihnen sagen, dass wir dies auch mit String überprüfen können. Aufgrund einer bestimmten Saitenkombination ähnelt es auch einem Palindrom.

Beispiel #1 – Frau

Nehmen wir diese Zeichenfolge, meine Dame, und kehren Sie sie um, und wir werden dieselbe Zeichenfolge finden.
Es wird gut sein, programmatisch vorbeizuschauen.

Code:

using System;
public class Palindrome {
public static void Main(string[] args) {
string inputStr, r;
inputStr = "Madam";
char[] letter = inputStr.ToCharArray();
Array.Reverse(letter);
r = new string(letter);
bool bool1 = inputStr.Equals(r, StringComparison.OrdinalIgnoreCase);
if (bool1 == true) {
Console.WriteLine("This string " + inputStr + " is a Palindrome!");
} else {
Console.WriteLine("This string " + inputStr + " is not a Palindrome!");
}
Console.ReadLine();
}
}

Ausgabe:

Palindrom in C#

Lassen Sie uns nun über das oben genannte Programm sprechen. Was wir hier eigentlich gemacht haben.

Wir haben hier eine Saite genommen, die nichts anderes als „Madam“ ist. Dann haben wir diese Zeichenfolge in ein Zeichenarray umgewandelt. Wir haben die Methode ToCharArray() verwendet, um ein Zeichenarray zu erstellen. Nachdem wir ein Zeichenarray erstellt haben, haben wir die Umkehrmethode für dieses Array verwendet, um es umzukehren. Dann verglichen wir sowohl die gegebene als auch die umgekehrte Zeichenfolge mit Hilfe der Equals()-Methoden. Wir haben die Ausgabe dieser Methode in einer Variablen namens bool1 gespeichert, die vom Typ Boolean ist.

Zuletzt haben wir mit Hilfe der if-else-Bedingung überprüft, ob die Variable bool1 gleich true oder false ist. In unserem Programm wird die if-Bedingung ausgeführt. Daher lautet die Ausgabe „Die Zeichenfolge Madam ist ein Palindrom.“

Es gibt keine Einschränkung beim Finden der Wörter oder Zahlen.

Man kann daraus Rätsel machen. Es gibt viele Bedingungen, beispielsweise wenn Sie einen ganzen Absatz haben und jemand Sie bittet, zu überprüfen, ob es eine Zeichenfolge gibt, die ein Palindrom ist oder nicht.

Manche Beispiele wirken so, als hätten sie einen Absatz, aber der ganze Satz selbst ist ein Palindrom.

Beispiel Nr. 2 – War es ein Auto oder eine Katze, die ich gesehen habe?

Wenn wir den obigen Satz umkehren, erhalten wir wieder denselben Satz.

Nehmen wir ein Beispiel; Bitte schauen Sie sich den folgenden Code an.

Code:

using System;
public class Palindrome
{
public static bool IsPalindrome(string value)
{
int x = 0;
int y = value.Length - 1;
while (true)
{
if (x > y)
{
return true;
}
char i = value[x];
char j = value[y];
// Scan forward for a while invalid.
while (!char.IsLetterOrDigit(i))
{
x++;
if (x > y)
{
return true;
}
i = value[x];
}
while (!char.IsLetterOrDigit(j))
{
y--;
if (x > y)
{
return true;
}
j = value[y];
}
if (char.ToLower(i) != char.ToLower(j))
{
return false;
}
x++;
y--;
}
}
public static void Main()
{
string[] ary =
{
"Was it a car or a cat I saw?"
};
foreach (string value in ary)
{
Console.WriteLine("{0} = {1}", value, IsPalindrome(value));
}
}
}

Ausgabe:

Palindrom in C#

Daher ist der ganze Satz selbst, wie wir bereits besprochen haben, ein Palindrom. Wenn Sie es auch umkehren, erhalten Sie denselben Satz.

Im obigen Programm durchlaufen wir den Satz bis zum letzten. Dann haben wir es in Kleinbuchstaben umgewandelt und mit dem vorgegebenen Satz verglichen. Probieren Sie dieses Programm aus, indem Sie es selbst programmieren. Nur dann können Sie den tatsächlichen Ablauf dieser Programme verstehen.

Fazit

Es gibt viele Tricks wie ein Palindrom. Wir haben den Stich und die Zahl gesehen, die palindromischer Natur sind. Wie einfach, mit ein paar Schritten, haben wir es geschafft.

Das obige ist der detaillierte Inhalt vonPalindrom in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Muster in C#Nächster Artikel:Muster in C#