1. Trang chủ
  2. » Kỹ Năng Mềm

bai th5 tin hoc 11 thao giang cum o vinh long

12 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 2,42 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nhận xét Giả sử xâu là đối xứng palin:=true - Lần lượt so sánh cặp ở vị trí đối xứng nhau.Thực hiện x div 2 lần so sánh cặp kí tự -Nếu phát hiện ở lần thứ i mà a[i] a[x-i+1] thì đánh d[r]

Trang 1

Gi¸o ¸n ®iÖn tö tin häc líp 11

Trang 2

Câu hỏi kiểm tra bài cũ :

- Em hãy nêu khái niệm xâu?

- Khai báo biến S có kiểu xâu độ dài tối đa

100?

- Cho ví dụ 1 xâu đối xứng?

( Xâu đối xứng là xâu đọc từ trái sang phải thu được kết quả giống như đọc từ phải sang trái) Trả lời:

Xâu là dãy các kí tự trong bộ mã ASCII

Var S:string[100];

Ví dụ:

S:= ‘ABCDCBA’;

Trang 3

A

Giải Thích: ABCDCBA

Xâu đối xứng cĩ tính chất ?

Đọc nĩ từ trái sang phải thu được kết quả

giống như đọc từ phải sang trái (cịn được gọi

là xâu Palindrome ).

C

A

Trang 4

Bài 1 :

 Nhập vào từ bàn phím một xâu Kiểm tra xâu đĩ cĩ phải là xâu đối xứng hay khơng ?

BÀI TẬP VÀ THỰC HÀNH 5

Input: Nhập vào xâu.

Output: Xuất ra kết quả cĩ phải là xâu đối xứng ( Palindrome )

VD: S:=‘ABCDCBA ’;

S1:=‘ABCACD’;

Xâu đối xứng Xâu khơng đối xứng

Trang 5

CHƯƠNG TRÌNH

Khai báo biến p kiểu xâu.

Tạo xâu mới ( p ) bằng cách

đảo ngược xâu ban đầu ( a ).

Nếu xâu a = p thì thông báo

xâu là palindrome, ngược

lại thông báo xâu không là

palindrome.

Ý TƯỞNG

+ Xác định độ dài xâu a

+ Khởi tạo : p ’’;

+ Duyệt từ cuối xâu a về đầu

xâu a , tại mỗi lần duyệt i xâu

p được ghép thêm kí tự a[i].

Trang 6

• Chạy thử chương trình bằng bộ input

ABCDCBA

Kết quả : xau la palindrome

• Chạy thử chương trình bằng bộ input

ABCDABC

Kết quả : xau khong la palindrome

• Hãy cho 1 vài bộ input chạy thử chương trình và nhận xét kết quả

Trang 7

BÀI TẬP VÀ THỰC HÀNH 5

b) Hãy viết lại chương trình trên:

Trong đĩ khơng dùng biến xâu p

Ví dụ : Xét xâu đối xứng:

Xâu a = ‘ABCDDCBA’

Các cặp kí tự ở vị trí đối xứng nhau là:

- Kí tự a[1] đối xứng với kí tự a[8]

- Kí tự a[2] đối xứng với kí tự a[7]

- Kí tự a[3] đối xứng với kí tự a[6]

- Kí tự a[4] đối xứng với kí tự a[5]

Đưa ra nhận xét gì về các cặp kí tự đối xứng trong xâu?

Mọi cặp kí tự

ở vị trí đối xứng nhau đều giống nhau

Trang 8

Xây dựng thuật toán

- a[1] đối xứng với a[x]

- a[2] đối xứng với a[x-1]

- a[3] đối xứng với a[x-2]

- a[4] đối xứng với a[x-3]

Để kiểm tra xâu đối xứng

ta so sánh bao nhiêu cặp kí tự trong xâu đó?

X 2

Phát hiện bao nhiêu cặp kí tự

ở vị trí đối xứng nhau nhưng khác nhau thì kết luận xâu đó

không là palindrome? Chỉ cần 1

Kí tự a[i] đối xứng với kí tự a[x-i+1]

div x:=length(a);

Các cặp kí tự ở vị trí đối xứng nhau:

Trang 9

Nhận xét

Giả sử xâu là đối xứng

( palin:=true )

- Lần lượt so sánh cặp ở vị trí đối xứng nhau.Thực hiện (x div 2) lần so sánh cặp kí tự

-Nếu phát hiện ở lần thứ i mà a[i] <> a[x-i+1] thì đánh dấu sự phát hiện này bằng cách thay đổi biến logic

(palin:=false)

Nếu palin=true thì xâu là palindrome nguợc lại xâu không là palindrome

Đoạn chương trình

Trang 10

CHƯƠNG TRÌNH HOÀN CHỈNH

Trang 11

• Chạy thử chương trình bằng bộ input

• Chạy thử chương trình bằng bộ input

• Hãy cho 1 vài bộ input chạy thử chương trình và nhận xét kết quả

Ngày đăng: 26/06/2021, 07:49

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w