Viết chương trình nhập vào xâu S từ bàn phím Thực hiện các yêu cầu sau: + Kiểm tra xâu S có phải là xâu palindrom? + Đếm số ký tự số có trong xâu S. + Xuất ra xâu S2 là xâu S sau khi xóa các dấu cách (Trong đó xâu palindrom là xâu đảo ngược của nó bằng chính nó)

2 câu trả lời

uses crt;

var S, S1 : string; d, i : byte;

begin

clrscr;

write('Nhap xau S : '); readln(S);

d := 0;

for i := length(S) downto 1 do

begin

if S[i] in ['0' .. '9'] then d := d + 1;

S1 := S1 + S[i];

end;

if S = S1 then writeln('Xau S la xau palindrom')

else writeln('Xau S khong la xau palindrom');

writeln('Xau S co ', d ,' ki tu la chu so');

i := 1;

while i <= length(S) do

if S[i] = ' ' then begin delete(S, i, 1); i := i; end else i := i + 1;

write('Xau S2 : ', S);

readln

end.

program baigiai;

uses crt;

var S:string;

 function palind(st:string):boolean;

var i:byte;

      s2:string;

begin

s2:='';

for i:=length(st) downto 1 do

 s2:=s2+st[i];

if s2=st then palind:=true else palind:=false;

end;

function dem(st:string):integer;

var i:byte;

begin

dem:=0;

for i:=1 to length(st) do

  if st[i] in ['0'..'9'] then dem:=dem+1;

end;

function xoa(st:string):string;

begin

xoa:=st;

while pos(' ',xoa)<>0 do delete(xoa,pos(' ',xoa),1);

end;

BEGIN
clrscr;

write('Nhap xau: ');   readln(s);

if palind(s) then writeln('Xau S la xau palindrom')

      else writeln('Xau S khong la xau palindrom');

writeln('Co ',dem(s),' ki tu so trong xau S');

writeln('Xau S2 la: ',xoa(s));

readln

end.

Câu hỏi trong lớp Xem thêm