Nhập 1 xâu kí tự. Kiểm tra tính đối xứng của xâu đó. Nếu xâu không đối xứng thì đảo xâu

2 câu trả lời

var str,s:string[100];

      n,i:integer;

procedure sx( var a,b:char);

var tam:char;

begin

 tam:=a;

 a:=b;

 b:=tam;

end;

procedure dao(n,i:integer);

 var j:integer;

begin

   for j:=i+1 to n do

  if str[i]=str[j] then

begin

   sx(str[j],str[n-i+1]);

     exit

        end;

            end;

begin

clrscr;

write('nhap xau:');readln(str);

  n:=length(str);

   s:='';

 for i:=n downto 1 do s:=s+str[i];

 if str=s then writeln('chuoi doi xung:')

else

 begin

    writeln('chuoi ko doi xung,chuoi da dảo doi xung:');

      for i:=1 to n-1 do

       dao(n,i);

end;

  write(str);

readln;

end.

I. Hướng dẫn giải BT kiểm tra xâu đối xứng trong pascal C++

1. Kiểm tra xâu đối xứng cách 1

– Cách đơn giản nhất là ta sẽ đọc ngược lại xâu S và lưu vào biến S1. sau đó kiểm tra 2 xâu có hoàn toàn giống nhau hay không?

ví dụ:

S=”abcde” => S1=”edcba”. 2 xâu này không giống nhau nên không là xâu đối xứng.

S=”aabccbaa” => S1=”aabccbaa”. 2 xâu này giống nhau hoàn toàn nên kết luận được là xâu đối xứng.

– Đây cũng là cách mà trong sách giáo khoa Tin học 11 chia sẻ

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