F
fireyoutz
Hi Leute...
Also wir haben heut folgende Aufgabe gestellt bekommen:
Ein Palindrom ist ein Wort oder Satz, das bzw. der von vorn und von hinten gelesen den gleichen Wortlaut besitzt, z.B.:
OTTO
REITTIER
LAGERREGAL
RELIEFPFEILER
EIN NEGER MIT GAZELLE ZAGT IM REGEN NIE
NEUER DIENST MAG AMTSEID REUEN
DIE LIEBE TOTE! BEILEID!
Das Programm soll testen, ob eine eingegebene Zeichenkette ein Palindrom ist oder nicht!
Beachten Sie, dass bei Sätzen keine Satzzeichen eingegeben werden dürfen und die Leerzeichen zwischen den Wörtern zu ignorieren sind!
Hier ist der Code:
#include
#include
#include
#include
#include
#include
void main()
{
char text[201];
unsigned int i, j;
bool palindrom = true;
cout
cout cin.getline(text, 200);
for (i=0, j=strlen(text)-1;i {
while (text == ' ')
i++;
while (text[j] == ' ')
j--;
if (text != text[j])
{
palindrom = false;
break;
}
}
if (palindrom == true)
cout else
cout
getchar();
}
Meine Frage:
Kann mir jemand genau erklären wie die FOR schleife arbeitet, also warum
j=strlen(text)-1;iund wie ist das zu verstehen??:
while (text == ' ')
Außerdem bin ich der Meinung dass in diesem Lösungsbeispiel unötige Headerdatein eingebunden sind...
Wäre über eure Hilfe sehr froh!
Greetz fireyoutz
Also wir haben heut folgende Aufgabe gestellt bekommen:
Ein Palindrom ist ein Wort oder Satz, das bzw. der von vorn und von hinten gelesen den gleichen Wortlaut besitzt, z.B.:
OTTO
REITTIER
LAGERREGAL
RELIEFPFEILER
EIN NEGER MIT GAZELLE ZAGT IM REGEN NIE
NEUER DIENST MAG AMTSEID REUEN
DIE LIEBE TOTE! BEILEID!
Das Programm soll testen, ob eine eingegebene Zeichenkette ein Palindrom ist oder nicht!
Beachten Sie, dass bei Sätzen keine Satzzeichen eingegeben werden dürfen und die Leerzeichen zwischen den Wörtern zu ignorieren sind!
Hier ist der Code:
#include
#include
#include
#include
#include
#include
void main()
{
char text[201];
unsigned int i, j;
bool palindrom = true;
cout
cout cin.getline(text, 200);
for (i=0, j=strlen(text)-1;i {
while (text == ' ')
i++;
while (text[j] == ' ')
j--;
if (text != text[j])
{
palindrom = false;
break;
}
}
if (palindrom == true)
cout else
cout
getchar();
}
Meine Frage:
Kann mir jemand genau erklären wie die FOR schleife arbeitet, also warum
j=strlen(text)-1;iund wie ist das zu verstehen??:
while (text == ' ')
Außerdem bin ich der Meinung dass in diesem Lösungsbeispiel unötige Headerdatein eingebunden sind...
Wäre über eure Hilfe sehr froh!
Greetz fireyoutz
/tutorial.schornboeck.net/schleifen.htm