Phần mềm học tập

Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
Đẹp Trai Không Bao Giờ S...

Bài 1. Biến đổi xâu

Cho xâu kí tự St có N kí tự đc lấy từ tập các ký tự 'a'...'z', 'A'...'Z', '0'...'9' (0 < N ≤ 255). Phép biến đổi xâu (p, q) (1 ≤ p, q ≤ N) đc thực hiện bằng cách hoán đổi kí tự ở vị trí p với ký tự ở vị trí q trong xâu St. Ví dụ cho xâu St= 'abcdefgh' và phép biến đổi xâu (3, 5) thì ta có xâu St mới là: 'abedcfgh'.

Thực hiện lần lượt K phép biến đổi xâu \(\left(p_1,q_1\right),\left(p_2,q_2\right),....,\left(p_k,q_k\right)\) trên xâu St thì sẽ thu đc một xâu mới (1 ≤ K ≤ 50).

Yêu cầu: Hãy tìm xâu St sau khi thực hiện lần lượt K phép biến đổi xâu.

Dữ liệu vào: Nhập xâu ký tự St, số K và các cặp số \(\left(p_1,q_1\right),\left(p_2,q_2\right),...,\left(p_k,q_k\right)\) từ bàn phím.

Dữ liệu ra: In ra màn hình xâu St sau khi thực hiện xong K phép biến đổi xâu.

Trần Minh Hoàng
7 tháng 8 2020 lúc 23:19

program bien_doi;
uses crt;
var St:string;
p,q,k,i:byte;

procedure Swap(var St:string;p,q:byte);
var x,y:char;
begin
x:=St[p];
y:=St[q];
delete(St,p,1);
delete(St,q-1,1);
insert(y,St,p);
insert(x,St,q);
end;

begin
clrscr;
write('Nhap xau St: '); readln(St);
write('Nhap K: ');readln(K);
for i:=1 to k do
begin
write('Nhap p',i,': '); readln(p);
write('Nhap q',i,': '); readln(q);
Swap(St,p,q);
end;
write(St);
readln
end.

Annie Scarlet
1 tháng 5 2018 lúc 21:32

Giả siêng như thật oe


Các câu hỏi tương tự
Phương Anh (NTMH)
Xem chi tiết
Lê Trần Nam Khánh
Xem chi tiết
Friend
Xem chi tiết
Friend
Xem chi tiết
nguyen nhi
Xem chi tiết
Nguyễn Ngọc Diệp
Xem chi tiết
Nguyễn Thị Hồng Anh
Xem chi tiết
Kiệt Nguyễn
Xem chi tiết
thao Nguyen
Xem chi tiết