Gandalf-biały [ Mithrandir ]
Zadanie w Pascalu.
Dany napis jest palindromem, jeżeli czytany od przodu i od tyłu jest taki sam, np. "kajak" jest palindromem, natomiast "kojak" nie jest. Napisz funkcję określającą, czy napis wprowadzony przez użytkownika jest palindromem. Wykorzystaj tą funkcję w prostym programie demonstracyjnym.
jesli ktos moze pomoc to niech zrobi to zadanie :)
Esqualante [ Jyhad Baghadyr ]
function palin (wyraz : string, n : integer) : integer;
var j,k : integer
begin
palin := 1;
k := n;
for j = 1 to n / 2 do
begin
if wyraz[j] != wyraz[k] then palin := 0;
k -= 1;
end;
end;
... chociaz, to bardziej psuedopascal niz Pascal...
więc nic nie obiecuję... taka jest zasada sprawdzania palindromu, a reszty mi się nie chce pisać...
wangor [ Centurion ]
Pisane uzywajac tp7
-------------------------------------------------------------
Program SprPalin;
Uses
Crt;
Var
wyraz, wyrazodtylu : string;
c : char;
cnt : byte;
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Procedure OdwrocWyraz;
Begin
cnt:=length(wyraz)+1;
Repeat
cnt:=Pred(cnt);
c:=wyraz[cnt];
wyrazodtylu:=wyrazodtylu+c;
Until cnt=1;
End;OdwrocWyraz
Procedure SprawdzczyPalindrom;
Begin
If wyraz <> wyrazodtylu then
Begin
Write('Palindrom od podanego wyrazu to : ',wyrazodtylu);
End
else
Write('Podany wyraz jest PALINDROMEM');
End;
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Begin
ClrScr;
Write('Podaj dowolny wyraz (dlugosc od 1 do 255 znakow) : ');
Read(wyraz);
OdwrocWyraz;
SprawdzczyPalindrom;
Repeat until keypressed
End.SprPalin
-----------------------------------------------------------------------------------------
wangor [ Centurion ]
niech zyje lenistwo - przeczytalem tylko pierwsze 2 zdania ;) ale przerobić to na funkcje to banał
PROSZATAN [ Apokalipsa ]
wanger :) dzieki
a czy chcialoby ci sie jeszcze przerobic to na funckje :)
kastore [ Troll Slayer ]
uses Crt;
var Str : String;
function PalinOK(StrData : String) : Boolean;
var i:Word;
....TmpStr : String;
begin
....PalinOK:=True;
....for i:=1 to Length(StrData) do begin
.........if StrData[i ]<>StrData[Length(StrData)-i+1] then PalinOK:=False;
....end;
end;
begin
.....ClrScr;
.....WriteLn('Program do sprawdzania czy slowo jest palindromem');
.....WriteLn('Wprowadz slowo i zatwierdz <Enterem>');
.....WriteLn('Wpisanie exit zakonczy program');
.....repeat
..........ReadLn(Str);
..........if Str<>'exit' then begin
...............if PalinOK(Str) then WriteLn('palindrom') else WriteLn('zwykle slowo');
..........end;
.....until Str='exit';
end.
tylko jak ktoś będzie to kopiował trzeba skasować kropki po kopiowaniu