HomeLập trình pascal

Xóa kí tự trắng thừa của một xâu văn bản trong Pascal

Like Tweet Pin it Share Share Email
Like và share giúp mình phát triển website nhé.
  •  
  •  

Như vậy là mình đã viết xong một số bài toán cơ bản về mảng hai chiều, tiếp tục đến phần xâu kí tự, mở đầu sẽ là bài toán đơn giản “tìm và xóa kí tự trắng thừa của một xâu văn bản”  trong Pascal.

Những bài toán về xử lí xâu kí tự hay văn bản là những bài toán hết sức thực tế, bởi các bạn có thấy không văn bản có mặt trong hầu hết các lĩnh vực, các chương trình tin học cũng vậy phải thường xuyên làm việc với danh sách, văn bản chính vì vậy mà mình rất coi trọng việc xử lí văn bản hay xâu kí tự khi dạy Pascal. Có một điều đáng tiếc là hầu như trong các đề thi HSG pascal lại thường không chú ý đến mảng này.

Bài toánViết chương trình xóa kí tự trắng thừa trong xâu (Giữa các từ có 2 dấu cách liên tiếp là thừa 1 dấu cách)

Dữ liệu vào file: del_32.INPmột dòng chứa xâu không quá 255 kí tự

Dữ liệu ra file: del_32.OUT là xâu khi đã xóa những kí tự thừa

VD:

del_32.int del_32.out
         Giua       cac tu      chi cach           nhau mot         khoang trang neu co hon 1 khoang         trang la co         khoang trang thua Giua cac tu chi cach nhau mot khoang trang neu co hon 1 khoang trang la co khoang trang thua

Ý tưởng xóa kí tự trắng thừa của một xâu trong Pascal

Mình giới thiệu với các bạn 2 hàm mà mình sử dụng trong thuật toán này:

  • delete(s,k,m): xóa m kí tự của xâu s tính từ vị trí k
  • Pos(s,st): Cho vị trí đầu tiên tìm thấy chuỗi s trong chuỗi st, cho kết quả 0 nếu không tìm thấy

Cách làm:

  • Xóa các kí tự trắng thừa ở đầu
  • Xóa các kí tự trắng thừa ở cuối
  • Tìm xem trong xâu có hai kí tự trắng liền nhau hay không (dùng hàm pos()) nếu có xóa bớt 1 kí tự

Code xóa khoảng trắng thừa của một xâu trong Pascal

Comments (0)

Trả lời

Your email address will not be published. Required fields are marked *