4) Xâu đối xứng Tên tập tin chương trình SYMMETRY.??? Một xâu ký tự X được gọi là xâu đối xứng nếu viết X theo thứ tự

4) Xâu đối xứng
Tên tập tin chương trình SYMMETRY.???
Một xâu ký tự X được gọi là xâu đối xứng nếu viết X theo thứ tự ngược lại ta cũng nhận được xâu X.
Yêu cầu: kiểm tra các xâu ký tự có phải là xâu đối xứng không. Dữ liệu vào từ tập tin văn bản SYMMETRY.INP gồm:
– Dòng 1 chứa số nguyên dương N, N < 1000. - N dòng tiếp theo, dòng thứ i chứa xâu ký tự Xi có không quá 250 ký tự. Kết quả: Đưa ra tập tin văn bản SYMMETRY.OUT là xâu ký tự S có N ký tự, trong đó ký tự thứ i của S là 1 nếu xâu Xi là xâu đối xứng, là 0 nếu xâu Xi không là xâu đối xứng. Làm bằng pascal nha

0 bình luận về “4) Xâu đối xứng Tên tập tin chương trình SYMMETRY.??? Một xâu ký tự X được gọi là xâu đối xứng nếu viết X theo thứ tự”

  1. program doi_xung;

    var f,g:text;

         x:string;

         n,i:integer;

    {—Ham-doi-xung—}

    function ktdx(s:string):boolean;

    var j:byte;

         st:string;

    begin

           st:=”;

           for j:=length(s) downto 1 do

                  st:=st+s[i];

           if s=st then exit(true) else exit(false);

    end;

    {—Chuong-trinh-chinh—}

    BEGIN

           Assign(f,’SYMMETRY.INP’);  reset(f);

           Assign(g,’SYMMETRY.OUT’);  rewrite(g);

           readln(f,n);

           for i:=1 to n do 

                  begin

                         readln(f,x);

                         if ktdx(x) then writeln(g,1) else writeln(g,0);

                  end;

           close(f);  close(f);

    end.

           

           

    Bình luận
  2. var f1, f2: text;

          i, n: word;

          s: string;

    Function kt(a: string): boolean;

       Var j: byte;

       Begin

           For j:=1 to (length(a) div 2) do

                If a[j]<>a[length(a)-j+1] 

                    Then exit(false);

           Exit(true);

       End;

    Begin

        Assign(f1, ‘symmetry.inp’); reset(f1);

        Assign(f2, ‘symmetry.out’); rewrite(f2);

        Readln(f1, n);

        For i:=1 to n do

           Begin

               Readln(f1, s);

               If kt(s)=true then writeln(f2, 1)

               Else writeln(f2, 0);

           End;

        Close(f1); close(f2);

    End.

    Bình luận

Viết một bình luận