CÂU 1. XÂU RÚT GỌN (10 điểm) Một máy tính bị kẹt một số phím vì vậy khi soạn thảo văn bản có những kí tự bị lặp đi lặp lại nhiều lần. Em hãy viết một chương trình giúp xóa các kí tự liên tiếp giống nhau chỉ để lại một kí tự đại diện sao cho đoạn văn bản còn lại không có 2 kí tự liên tiếp giống nhau. - Dữ liệu vào: File văn bản XAUGON.INP chứa xâu kí tự. - Dữ liệu ra: File văn bản XAUGON.OUT ghi xâu đã được rút gọn. Ví dụ 1: XAUGON.INP XAUGON.OUT hhooocccsssiiiiinnnhhh hocsinh Ví dụ 2: XAUGON.INP XAUGON.OUT hooooooccccc sssiiiiinnnhhh giiiioii hoc sinh gioi

2 câu trả lời

Uses crt;

Var

   i,j,n: integer;

   S: string;

Begin

Clrscr;

            readln(S);

             N:=length(S);

             I:=1;

              While i<n do

                Begin

                  J:=i+1;

                    While j<=n do

                         Begin

                             If S[i]=S[j] then

                                 Begin

                                      Delete(S,j,1);

                                                N:=n-1;

                                                    End

                                                      Else

                                                         j:=j+1;

                                                      End;

                                                     I:=i+1;

                                     End;

         Writeln(‘S);

End.

uses crt;
var s : string; i : byte;
f1, f2 : text;
begin
clrscr;
assign(f1, 'XAUGON.INP'); reset(f1);
assign(f2, 'XAUGON.OUT'); rewrite(f2);
readln(f1, s);
i := 1;
while i <= length(s) - 1 do
    begin
        if s[i] = s[i + 1] then 
        begin delete(s, i, 1); i := i end 
        else i := i + 1; 
    end;
write(f2, s);
close(f1); close(f2);
readln
end.

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