Tải bản đầy đủ (.docx) (28 trang)

Các dạng toán trong scrach

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.25 MB, 28 trang )

Bài 1: cho dãy số 1,2,3,4,5,6,7,8,9…..n
Em hãy sử dụng phần mềm scratch thực hiện các yêu cầu sau:
a) Nhập vào n số lượng phần tử của dãy số
b) Xuất ra dãy số
c) Tính tổng các số lẻ chia hết cho 5 của dãy số và xuất kết quả ra màn hình
d) Lưu vào thư mục bài thi với tên baithu.sb
Hướng dẫn:
Thuật tốn tính tổng dãy từ 1- n

Các bước viết chương trình các số lẻ từ 1 đến n
Bước 1: Tạo các bước cần thiết
Tạo hai biến: - Tổng: để lưu tổng các số lẻ chia hết cho 5 của dãy số
- i để can thiệp và số đếm số các thứ tự các số trong danh sách và một danh
sách : “Danh sách” để lưu các số từ 1 đến n.

Cho dãy số 0, 5, 10, 15, 20, … Cho người dùng nhập vào số phần tử muốn hiển thị của
dãy. Sau đó thực hiện:
1.
Hiển thị dãy số theo quy luật trên và gồm số phần tử như người dùng u cầu.
2.
Tính tổng của các số trong dãy đó.
Ví dụ:

Người dùng nhập vào là 3 thì dãy cần hiển thị sẽ là 0, 5, 10. Và tổng của chúng là 15.

Người dùng nhập vào là 10 thì dãy cần hiển thị sẽ là 0, 5, 10, 15, 20, 25, 30, 35, 40,
45. Và tổng của chúng là 225.
(Trích dẫn từ đề thi Hội tin học trẻ Thanh Hóa, năm 2021. Đề thi bảng A1 – Khối tiểu
Gợi ý hướng làm bài:
Ta trải qua 2 bước:


Bước 1: Xác định đúng và chính xác dãy số.

Dãy số bắt đầu từ 0.

Mỗi số trong dãy cách nhau 5 đơn vị. Tức là số đứng sau hơn số đứng trước 5
đơn vị. Như vậy, ta lấy số đứng trước công thêm 5 đơn vị sẽ có được số sau.







Giả sử người dùng nhập vào số lượng phần tử là N. Vậy ta sử dụng vòng lặp N
lần để tạo ra một danh sách gồm N phần tử.
Bước 2: Áp dụng thuật tốn cộng dồn để tính tổng dãy số tìm được trong bước 1.
Đầu tiên, ta khởi tạo biến S có giá trị bằng 0 để lưu trữ giá trị tổng của từng
phần tử trong danh sách dãy số.
Dùng vòng lặp với số lần lặp là N lần để duyệt qua lần lượt tất cả các phần tử
trong danh sách. Trong mỗi lần duyệt thì ta sẽ tính tổng giá trị S với phần tử đang
duyệt. Cứ như vậy cho đến khi nào duyệt hết các phần tử có trong dãy thì ta thu
được tổng của các phần tử trong danh sách.

Kết quả chương trình:


Bài tập làm thêm:
Cho dãy số 4, 8, 12, 16, …, N. Em hãy sử dụng các lệnh trong chương trình Scratch 3
để tính tổng của 100 số hạng đầu tiên.
Em hãy lưu kết quả trong tập tin có tên tinhtoan.sb3

Kiểm tra số nguyên tố trong Scratch
Đề bài: Em hãy tạo một thủ tục để kiểm tra một số có phải là số nguyên tố hay không
bằng Scratch. Lưu bài em vừa làm được với tên là kiem_tra_nguyen_to.sb3
Gợi ý bài làm:




Khái niệm về số nguyên tố: Số nguyên tố là số tự nhiên lớn hơn 1, chỉ chia hết cho 1
và chính nó.
Các tính chất giúp ta kiểm tra số nguyên tố: Số 2 là số nguyên tố chẵn duy nhất, vì
các số chẵn cịn lại sẽ chia hết cho 2 và chính nó.
Hướng dẫn phân tích các khả năng: n là số được kiểm tra
1.
Nếu n bằng 2 thì kết thúc thủ tục, n là số nguyên tố.
2.
Nếu n nhỏ hơn hoặc bằng 1 thì kết thúc thủ tục, n không phải là số nguyên tố.
3.
Nếu n là số chẵn lớn hơn 2 thì kết thúc thủ tục, n khơng phải số ngun tố.
4.
Trường hợp cịn lại, duyệt từng phần tử từ 2 đến (n – 1), nếu tồn tại bất kỳ một
số nào mà số đó chia hết cho n thì kết thúc thủ tục, khơng phải là số nguyên tố.


Code mẫu tham khảo:

Tính tổng dãy số cách đều trong Scratch
Đề bài:
Cho dãy số 0, 5, 10, 15, 20, … Cho người dùng nhập vào số phần tử muốn hiển thị của
dãy. Sau đó thực hiện:

1.
2.

Hiển thị dãy số theo quy luật trên và gồm số phần tử như người dùng u cầu.
Tính tổng của các số trong dãy đó.


Ví dụ:



Người dùng nhập vào là 3 thì dãy cần hiển thị sẽ là 0, 5, 10. Và tổng của chúng là 15.
Người dùng nhập vào là 10 thì dãy cần hiển thị sẽ là 0, 5, 10, 15, 20, 25, 30, 35, 40,
45. Và tổng của chúng là 225.

(Trích dẫn từ đề thi Hội tin học trẻ Thanh Hóa, năm 2021. Đề thi bảng A1 – Khối tiểu học)
Gợi ý hướng làm bài:
Ta trải qua 2 bước:








Bước 1: Xác định đúng và chính xác dãy số.
Dãy số bắt đầu từ 0.
Mỗi số trong dãy cách nhau 5 đơn vị. Tức là số đứng sau hơn số đứng trước 5
đơn vị. Như vậy, ta lấy số đứng trước công thêm 5 đơn vị sẽ có được số sau.

Giả sử người dùng nhập vào số lượng phần tử là N. Vậy ta sử dụng vòng lặp N
lần để tạo ra một danh sách gồm N phần tử.
Bước 2: Áp dụng thuật tốn cộng dồn để tính tổng dãy số tìm được trong bước 1.
Đầu tiên, ta khởi tạo biến S có giá trị bằng 0 để lưu trữ giá trị tổng của từng
phần tử trong danh sách dãy số.
Dùng vòng lặp với số lần lặp là N lần để duyệt qua lần lượt tất cả các phần tử
trong danh sách. Trong mỗi lần duyệt thì ta sẽ tính tổng giá trị S với phần tử đang
duyệt. Cứ như vậy cho đến khi nào duyệt hết các phần tử có trong dãy thì ta thu
được tổng của các phần tử trong danh sách.

Code mẫu tham khảo:


Code mẫu tham khảo


Kết quả chương trình
Bài tập:
Cho dãy số 4, 8, 12, 16, …, N. Em hãy sử dụng các lệnh trong chương trình Scratch 3
để tính tổng của 100 số hạng đầu tiên.
Em hãy lưu kết quả trong tập tin có tên tinhtoan.sb3
(Tham khảo từ đề thi Hội tin học trẻ huyện Phú Tân, ngày thi: 18/01/2020)
Chúc các em thành cơng!
Tính chu vi và diện tích hình chữ nhật trong Scratch
Trong bài này thầy sẽ hướng dẫn chữa cho các em bài Tính chu vi và diện tích trong lập
trình Scratch nhé.
Đề bài:
Sử dụng Scratch em hãy viết chương trình tính và hiển thị ra màn hình chu vi và diện
tích của hình chữ nhật. Biết chiều dài và chiều rộng của hình chữ nhật trên do người
dùng nhập vào từ bàn phím.

Phân tích đầu vào:
Đề bài yêu cầu tính chu vi và diện tích hình chữ nhật. Ta biết hình chữ nhật có hai cạnh:
chiều dài và chiều rộng. Ta đặt tên biến cho lần lượt chiều dài và chiều rộng là a và b.
Điều kiện đầu vào:
Hai biến a và b có thể nhận giá trị là các số thực hoặc các số nguyên. Và các giá trị này đều
lớn hơn 0.


Mơ tả đầu ra:
Kết quả được trình bày theo mẫu: 6 12. Tức là kết quả chu vi đứng trước, kết quả diện tích
đứng sau, và 2 kết quả này ngăn cách với nhảu bởi một khoảng trắng (space).
Trình bày các bước làm:






Bước 1: Nhập vào chiều dài và chiều rộng cho hình chữ nhật.
Bước 2: Tính chu vi và diện tích:
Chu vi hình chữ nhật được tính bằng cơng thức (a + b) * 2.
Diện tích hình chữ nhật được tính bằng cơng thức a * b.
Bước 3: Hiển thị kết quả.

Code mẫu tham khảo:

Tính chu vi và diện tích hình chữ nhật
Giải phương trình bậc nhất một ẩn trong Scratch
Trong bài này, thầy sẽ hướng dẫn các em cách Giải và biện luận phương trình bậc nhất một
ấn nhé!

Đề bài:
Bằng ngơn ngữ lập trình Scratch, em hãy giải phương trình bậc nhất một ẩn có dạng: ax + b
= 0.


Phân tích đầu vào:
Đề bài yêu cầu ta giải phương trình bậc nhất một ẩn. Trong dạng tổng quát của phương trình
bậc nhất, ta cần có 2 biến đầu vào tương ứng với các hệ số của phương trình. Ta đặt biến
ứng với hệ số gắn với x là a, đặt biến gắn với hệ số tự do là b.
Điều kiện đầu vào:
Hai biến a và b có thể nhận giá trị là các số thực hoặc các số nguyên.
Mô tả đầu ra:
Kết quả được hiển thị theo khuôn mẫu sau:
Nếu phương trình vơ nghiệm, hiển thị ra màn hình No
Nếu phương trình vơ số nghiệm, hiển thị ra màn hình Inf
Nếu phương trình có nghiệm thì hiển thị nghiệm đó ra màn hình.





Trình bày các bước làm:







Bước 1: Nhập dữ liệu cho 2 biến a và b.

Bước 2: Giải và biện luận phương trình bậc nhất một ẩn dạng: ax + b = 0
Trường hợp a ≠ 0, ta có ax + b = 0 ⇔ x = -b/a, do đó phương trình có nghiệm
duy nhất là: x = -b/a.
Trường hợp a = 0, phương trình ax + b = 0 trở thành 0x + b = 0, khi đó:

Khả năng 1: với b = 0 thì phương trình ax + b = 0 có nghiệm đúng mới
mọi x ∈ ℝ

Khả năng 2: với b ≠ 0, phương trình ax + b = 0 vô nghiệm.
Bước 3: Hiển thị kết quả.

Code mẫu tham khảo:


Giải phương trình bậc nhất một ẩn
Sử dụng List (danh sách) trong Scratch – Phần 1
Thân mến chào các em, trong bài này thầy và các em sẽ cùng tìm hiểu một nội dung rất hay,
nội dung này rất hay được ra trong đề thi tin học trẻ nói chung và các đề thi tin học nói
chung nha. Trước hết, thầy trog mình sẽ ơn tập lại một chút kiến thức cũ nhé!
1. Ơn tập
Bằng ngơn ngữ lập trình Scratch, em hãy nhập vào 2 số và hiển thị tổng của 2 số vừa
nhập.
Ta phân tích tóm lược nhanh nhé. Trong bài này ta sử dụng 3 biến:




Một biến chứa giá trị số thứ nhất, đặt tên biến là a.
Một biến nữa chứa giá trị số thứ hai, đặt tên biến là b.
Và biến cuối cùng để chứa tổng của hai số, đặt tên biến là c.



Mở rộng hơn, trong trường hợp đề bài yêu cầu ta tính tổng của 100 số thì sẽ có rất
nhiều biến được sử dụng. Đêìu đó việc quản lý sẽ rất vất vả và khó quản lý chương
trình, có thể gây ra sai xót. Vậy ta phải tìm một cách xử lý như thế nào để khắc phục
được hạn chế trên.
2. Danh sách – List trong Scratch là gì?
List trong Scratch:
List trong Scratch là một biến đặc biệt.
Dùng để lưu trữ một dãy các giá trị, có thể là số hoặc chữ.




Ví dụ:

Ví dụ List trong Scratch
Từ ví dụ trên, ta có một vài nhận xét như sau:








DayList là tên của danh sách.
Số lượng phần tử của danh sách là 7.
Mỗi một phần tử của danh sách được đánh một số thứ tự bắt đầu từ 1 cho đến 7. Ta
gọi số thứ tự đó là chỉ số hay vị trí của phần tử.

Monday, Tuesday, … là các giá trị của phần tử trong danh sách.
Để thao tác hay làm việc với các phần tử của danh sách thì ta cần phải xác định rõ
ràng chỉ số tương ứng với phần tử đó. Các thao tác cơ bản với danh sách là thêm, sửa,
xóa, lấy giá trị phần tử, …
Theo cách diễn giải thì ta hồn tồn có thể viết: Phần tử thứ nhất của danh sách là
DayList[1], Phần tử thứ hai của danh sách là DayList[2], …

3. Khởi tạo List trong Scratch


Để khởi tạo một List trong Scratch, các em thực hiện các bước như sau:





Bước 1: Trong mục Variable, click vào nút “Make a List”, nghĩa là “Tạo ra một danh
sách”
Bước 2: Hộp thoại New List xuất hiện, ta tiến hành nhập tên danh sách cho mục
“New list name” và chọn phạm vi sử dụng biến danh sách là “For all sprites” (Cho tất
cả các nhân vật) hay “For this sprite only” (Cho nhân vật hiện hành).
Bước 3: Click OK để khởi tạo một danh sách mới.

Khởi tạo danh sách trong Scratch
4. Bài tập
Các em hãy lấy thêm các ví dụ về danh sách và mô tả chi tiết về danh sách đã nêu nhé!
Sử dụng List (danh sách) trong Scratch – Phần 2
Trong bài học trước, các em đã được học về khái niệm List hay danh sách trong Scratch,
cách để khởi tạo một biến danh sách như nào, các em có thể xem lại bài ở đây nhé (Link
phần 1). Đến với bài hôm nay, thầy sẽ hướng dẫn các em tìm hiểu sâu hơn nữa cách sử dụng

List nhé. Chúng ta hãy cùng bắt đầu với.
1. Các lệnh thao tác với List
Sau khi các em khởi tạo một biến danh sách trong Scratch thì chương trình sẽ hiển thị các
lệnh hỗ trợ các em thao tác với List. Thầy lấy ví dụ tạo mới một biến danh sách có tên là
“ds”, và thầy sẽ giải thích cho các em ý nghĩa của từng lệnh trong mà Scratch hỗ trợ nhé.


Các lệnh làm việc với List trong Scratch













Lệnh số 1: Tên danh sách. Checkbox để hiển thị hay ẩn trên sân khấu
Lệnh số 2: Thêm mới một item vào cuối của danh sách
Lệnh số 3: Xóa bỏ item có index truyền vào
Lệnh số 4: Xóa tồn bộ các item trong danh sách
Lệnh số 5: Chèn một item vào vị trí được truyền vào
Lệnh số 6: Thay thế item tại vị trí được truyền bằng một item khác
Lệnh số 7: Lấy ra item tại vị trí được truyền vào (phép lấy giá trị)
Lệnh số 8: Lấy ra index của item được truyền vào (phép lấy chỉ số)
Lệnh số 9: Trả về kích thước (số lượng phần tử) của danh sách

Lệnh số 10: Dãy số có chứa item có giá trị được truyền vào hay không
Lệnh số 11: Cho phép hiển thị danh sách trên sân khâu
Lệnh số 12: Không cho phép hiển thị danh sách trên sân khâu

2. Nhập dữ liệu trực tiếp cho List trong Scratch
Ngay sau khi các em tạo mới một biến danh sách thì đồng thời dạng hiển thị của danh sách
sẽ xuất hiện trên khu vực sân khấu. Dạng hiển thị của danh sách như sau:
Danh sách hiển thị trên sân khấu








Vị trí số 1: Hiển thị tên danh sách.
Vị trí số 2: Hiển thị các phần tử của danh sách, khi danh sách rỗng (tức là khơng có
phần tử nào) thì sẽ hiển thị “empty” có nghĩa là trống.
Vị trí số 3: Vị trí xuất hiện dấu “+”, nút “+” này cho phép các em nhập trực tiếp dữ
liệu cho danh sách.
Vị trí số 4: Hiển thị chiều dài hay độ dài hay số lượng phần tử của danh sách.
Ví trí số 5: Vị trí xuất hiện dấu “=”, nút “=” này cho phép em thay đổi kích thước như
chiều dài, chiều rộng của dạng hiển thị danh sách trên sân khấu.

3. Nhập dữ liệu cho List từ tệp Plain text
Ở các nhập dữ liệu này thì các em phải chuẩn bị trước danh sách chứa trong tệp có định
dạng là “.txt” là tệp Plain text. Cấu trúc định dạng của danh sách lưu trên tệp này là mỗi
một phần tử nằm trên một dòng, hết phần này ta Enter xuống dịng để nhập phần tử tiếp
theo. Tệp có bao nhiêu dịng thì biến danh sách trong Scratch có bấy nhiêu phần tử.


Nhập dữ liệu từ Plain text
Sau khi các em tạo mới một biến danh, để nhập dữ liệu từ tệp Plain text, ta cần chuột phải
lên biến danh sách rồi chọn import. Sau đó một hộp thoại cho phép em tìm đến vị trí lưu trữ
tệp trên máy tính của mình, cuối cùng là nhấn vào nút OK để chấp nhận việc nhập dữ liệu
từ tệp Plain text là hoàn thành nhé.


4. Nhập dữ liệu cho danh sách bằng lập trình
Nhập và xuất dữ liệu cho một biến đơn giản thì các em đã thực hành nhiều rồi. Tuy nhiên,
đối với List trong Scratch thì các em sẽ thực hiện lặp đi lặp lại quá trình nhập dữ liệu N lần
(N là số lượng phần tử của danh sách), vì trong danh sách chứa nhiều phần tử. Bởi vậy mà
ta sử dụng vòng lặp như repeat hay repeat until để nhập dữ liệu cho danh sách.
Còn một vấn đề nhỏ nữa mà các em có thể khơng để ý, đó chính là các em sẽ thực hiện
duyệt lần lượt các phần tử, từ phần tử có chỉ số là 1 cho đến phần tử có chỉ số cuối cùng.
Rồi, vấn đề duyệt này sẽ xuyên suốt trong quá trình mà các em làm việc với List nên chúng
ta sẽ tìm hiểu dần dần nha.
Các bước để thực hiện việc nhập dữ liệu cho danh sách khi biết trước số lượng phần tử:







Bước 1: Nhập số lượng phần tử của danh sách. Đặt tên biến là N.
Bước 2: Sử dụng vòng lặp để lặp lại các lệnh sau N lần.
Yêu cầu người dùng nhập vào phần tử thứ i (với i chạy từ 1 đến N).
Bổ sung phần tử vừa được nhập giá trị vào danh sách.
Tăng chỉ số i lên 1 đơn vị.

Bước 3: Hiển thị danh sách vừa nhập ra màn hình.

Code mẫu tham khảo:


Nhập dữ liệu cho danh sách
5. Bài tập
Bài 1: Thực hành lại với bước nhập dữ liệu cho dãy số đã trình bày ở trên, giả sử dãy số
được nhập vào bàn phím là 6, 10, 1, 7, 4. Em hãy trình bày các bước làm và thực hành với
Scratch để thay đổi vị trí xuất hiện của phần tử 1 và 4 cho nhau. Kết quả dãy số sau khi
hoán đổi là 6, 10, 4, 7, 1.
Bài 2: Trong ví dụ trên, thầy đã trình bày các nhập dữ liệu cho danh sách với trường hợp là
biết trước số lượng phần tử. Em hãy trình bày và thực hành với Scratch để nhập dữ liệu cho
danh sách khi không biết trước số lượng phần tử.
Gợi ý: Sau khi người dùng nhập dữ liệu cho 1 phần tử xong thì hỏi người dùng có muốn
nhập tiếp hay khơng. Nếu người dùng muốn nhập tiếp thì cho phép người dùng nhập tiếp.
Cịn nếu khơng thì dừng vịng lặp để chuyển sang bước hiển thị danh sách.


Sử dụng List (danh sách) trong Scratch – Phần 3
Trong bài này và những bài sau, thầy và các em sẽ điểm qua một số dạng bài toán ứng dụng
sử dụng List trong Scratch. Những bài toán này rất cơ bản tạo bản lề vững chắc để phét
triển và nâng cao hơn sau này. Các em hãy ôn lại thật kỹ những kiến thức mà thầy đã hướng
dẫn trong Phần 1 và Phần 2 ở đây nhé.
Dạng bài
Duyệt từng phần tử trong List.
Đề bài
Em hãy sử dụng các lệnh thích hợp trong Scratch để nhập vào một dãy số bất kỳ. Lập trình
cho chú mèo nói ra từng phần tử của dãy số mà em vừa nhập.
Phân tích bài tốn

Đầu vào (Input)
Đề bài yêu cầu nhập vào một dãy số bất kỳ.
Ví dụ: 6, 10, 1, 7, 4.




Đầu ra (Output)
Hiển từng lần lượt từng phần tử của dãy số vừa nhập.
Sau khi hiển thị một phần tử trong dãy số thì đợi 2 giây để hiển thị phần tử tiếp theo.




Các bước thực hiện bài tốn
Giả sử ta có một biến danh sách gồm N phần tử. Sử dụng vòng lặp với số lần lặp là N để
duyệt qua từng phần tử của biến danh sách đã cho. Trong mỗi lần duyệt, ta hiển thị giá trị
của phần tử đang duyệt.





Bước 1: Khai báo và khởi tạo biến i = 1.
Bước 2: Lặp lại các lệnh sau N lần:
Hiển thị theo mẫu: Giá trị của phần tử thứ i là: a. Trong đó a là giá trị của
phần tử tại vị trí thứ i.
Tăng biến i lên 1 đơn vị

Chương trình tham khảo



Duyệt và hiển thị danh sách
Sử dụng List (danh sách) trong Scratch – Phần 4
Thao tác duyệt lần lượt các phần tử trong biến danh sách mà trong bài trước chúng ta được
học là rất quan trọng. Nếu chưa ôn lại bài cũ thì các em hãy xem lại tại đây nha (Phần
1, Phần 2 và Phần 3). Bây giờ thầy và các em đi tìm hiểu tiếp những dạng bài cơ bản với
List trong Scratch nào!
Dạng bài
Đếm số lượng phần tử có tính chất đặc biệt trong List.
Đề bài
Em hãy nhập vào một dãy số trong Scratch. Trong dãy số em vừa nhập có bao nhiêu số
chẵn.
Phân tích bài toán
Đầu vào (Input)



Đề bài yêu cầu nhập dữ liệu cho biến danh sách và cho biết trong biến danh sách vừa
nhập có bao nhiều số chẵn.
Ví dụ giả sử dãy số là: 6, 10, 1, 7, 4.

Đầu ra (Output)


Hiển thị một giá trị là số lượng phần tử chắn trong biến danh sách.



Các bước thực hiện bài toán

Đầu tiên, ta sẽ khởi tạo biến dem để lưu trữ số lượng các phần tử chẵn trong danh sách.
Biến dem này có giá trị khởi tạo là bằng 0. Duyệt lần lượt các phần tử có trong danh sách,
khi duyệt mỗi phần tử thì ta tiến hành kiểm tra kiểm tra phần tử đang duyệt có chẵn hay
khơng, tức là dùng phép chia dư để xem phần tử đó có chia hết cho 2 hay khơng. Nếu phần
tử đó là số chẵn thì ta tăng biến dem lên 1 đơn vị. Cịn nếu khơng phải là số chẵn thì ta
chuyển sang xét đến phần tử tiếp theo.




Bước 1: Khai báo và khởi tạo biến dem = 0.
Bước 2: Duyệt lần lượt các phần tử trong danh sách:
Nếu phần tử đang xét chia hết cho 2 thì tăng biến dem lên 1 đơn vị.

Chương trình tham khảo

Đếm số phần tử chẵn


Sử dụng List (danh sách) trong Scratch – Phần 5
Trong bài giới thiệu về List (danh sách), thầy đã có nhắc tới ví dụ minh họa sử dụng List, đó
chính là Tính tổng dãy số từ 1 đến 100. Khi ta sử dụng List để lưu trữ các số từ 1 đến 100
thì cách giải quyết bài tốn này đơn giản và dễ dàng hơn rất nhiều so với việc ta tính đơn lẻ
các biến như thơng thường. Và các em cũng không quên ôn lại các bài cũ nhé (Phần 1, Phần
2, Phần 3 và Phần 4). Chúng ta cùng bắt đầu bài học ngay thơi.
Dạng bài
Tính tổng các phần tử trong List.
Đề bài
Em hãy nhập vào một dãy số trong Scratch. Hiển thị giá trị tổng của các phần tử trong dãy
số.

Phân tích bài tốn
Đầu vào (Input)



Đề bài yêu cầu nhập dữ liệu cho biến danh sách và cho biết tổng của các phần tử
trong dãy là bao nhiêu.
Ví dụ giả sử dãy số là: 6, 10, 1, 7, 4.

Đầu ra (Output)
Hiển thị một giá trị là tổng của các phần tử trong dãy số đã cho.



Các bước thực hiện
Giả sử ta đã có một biến danh sách, các phần tử trong danh sách là các số, biến danh sách
này có số lượng phần tử là N. Đầu tiên ta khai báo và khởi tạo biến s = 0 để lưu trữ giá trị
tổng của các phần tử. Duyệt lần lượt các phần tử có trong dãy, đồng thời ta thực hiện cộng
biến s với phần tử đang xét. Cộng lần lượt như vậy cho đến khi nào hết phần tử trong danh
sách thì dừng. Cuối cùng ta thu được tổng các phần tử.




Bước 1: Khai báo và khởi tạo biến s = 0.
Bước 2: Duyệt lần lượt các phần tử trong danh sách và thực hiện các lệnh sau:
Tính tổng s + a[i] và gán giá trị tổng này cho s. Trong đó a[i] là giá trị phần tử
tại vị trí thứ i.

Chương trình tham khảo



Tính tổng các phần tử trong dãy bằng phương pháp cộng dồn
Sử dụng List (danh sách) trong Scratch – Phần 6
Hãy thử tưởng tượng, sau khi các em đã có danh sách các món ăn tại một cửa hàng, thơng
thường các em sẽ có một suy nghĩ là tìm món ăn nào có giá cao nhất và món ăn có giá thấp
nhất. Bài tồn tìm giá trị lớn nhất hoặc giá trị nhỏ nhất trong tập các phần tử hay trong nội
dung bài học đó chính là dùng danh sách để lưu trữ tập các phần tử đó. Bài tốn này là một
dạng bài được sử dụng nhiều trong thực tế. Kiến thức ngày một nâng cao hơn rồi, các em
đừng quên xem lại những kiến thức đã học để củng cố hơn trước khi học bài mới nhé
Dạng bài
Tìm phần tử lớn nhất trong List.


Đề bài
Em hãy nhập vào một dãy số trong Scratch. Hiển thị giá trị của phần tử lớn nhất trong dãy.
Phân tích bài tốn
Đầu vào (Input)



Đề bài u cầu nhập dữ liệu cho biến danh sách và cho biết phần tử có giá trị lớn
nhất.
Ví dụ giả sử dãy số là: 6, 10, 1, 7, 4.

Đầu ra (Output)


Hiển thị một giá trị là phần tử có giá trị lớn nhất.


Các bước thực hiện
Vấn đề then chốt và cót lõi của vấn đề ở trong bài toán này là ta phải xây dựng được hướng
giải quyết đơn giản nhất.




Ví dụ 1: Cho 2 biến a và b lưu trữ 2 giá trị số khác nhau. Tìm số lớn nhất trong 2 biến
này.

Ta thực hiện so sánh để tìm số lớn hơn. Chẳng hạn, nếu a > b thì a là số lớn
nhất, và ngược lại.
Ví dụ 2: Tìm số lớn nhất trong 3 biến a, b, c lưu trữ các giá trị số khác nhau. Ta cũng
thực hiện phép so sánh để tìm số lớn nhất, tuy nhiên số lượng phép so sánh nhiều hơn.

Nếu a > b và a > c thì a là số lớn nhất.

Nếu b > a và a > c thì b là số lớn nhất.

Nếu c > a và c > b thì c là số lớn nhất.

Giải thuật để tìm số có giá trị lớn nhất trong dãy số: Giả sử, số đầu tiên là số lớn nhất, ta
thực hiện so sánh lần lượt số đầu tiên này với số thứ hai. Nếu số đầu tiên nhỏ hơn số thứ hai
thì ta đặt số thứ hai là số lớn nhất, ta thu được số lớn nhất trong hai số đầu. Tiếp tục so sánh
số lớn nhất trong hai số đầu đó với số thứ ba … Quá trình cứ diễn ra như vậy cho đến khi
xét duyệt hết các phần tử trong danh sách thì ta thu được số lớn nhất trong dãy số.



Bước 1: Khai báo biến max và gán giá trị của phần tử đầu tiên cho biến này. Đây

chính là ta đang giả sử số đầu tiên là số lớn nhất.
Bước 2: Cơng việc tìm số lớn nhất được bắt đầu từ số thứ 2 cho đến hết dãy.
Nếu max > a[i] thì max được gán bởi a[i]. Trong đó a[i] là giá trị phần tử của dãy a
tại vị trí thứ i.



Bước 3: Hiển thị giá trị của số lớn nhất vừa tìm được thơng qua biến max.

Chương trình tham khảo


Tìm số lớn nhất trong dãy số
Sử dụng List (danh sách) trong Scratch – Phần 7
Nội dung bài học ngày hơm nay sẽ khó và nâng cao hơn so với những bài trước, để chuẩn bị
thật tốt thì các em hãy ôn tập thật kỹ những kiến thức và những bài tập các em đã học nhé
Dạng bài
Sắp xếp danh sách theo chiều tăng dần.
Đề bài
Em hãy nhập vào một dãy số trong Scratch. Lập trình để sắp xếp dãy số vừa nhập theo
chiều tăng dần. Hiển thị kết quả ra màn hình.
Phân tích bài tốn


Đầu vào (Input)




Đề bài yêu cầu nhập dữ liệu cho dãy số và sắp xếp dãy số vừa nhập theo chiều tăng

dần.
Dãy số được sắp xếp theo chiều tăng dần là dãy số mà số sau lớn hơn các số đứng
trước nó.
Ví dụ giả sử dãy số là: 6, 10, 1, 7, 4.

Đầu ra (Output)



Hiển thị ra màn hình dãy số sau khi được sắp xếp tăng dần.
Ví dụ cho dãy số trên là: 1, 4, 6, 7, 10.

Các bước thực hiện
Các nhà khoa học đã xây dựng ra nhiều giải thuật sắp xếp khác nhau, tuy nhiên để các em
dễ nắm bắt và hình dung hơn thì thầy hướng dẫn các em tiếp cận đến giải thuật sắp xếp
chọn (thuật ngữ tiếng anh là Selection Sort). Ý tưởng của giải thuật sắp xếp này như sau:
Giả sử ta có dãy số: a[1], a[2], a[3], …, a[n]. Trong đó, a[1] là giá trị phần tử tại vị trí 1, a[2]
là giá trị phần tử tại vị trí 2, …, a[n] là giá trị phần tử tại vị trí n, với n là số lượng phần tử.







Giai đoạn 1: Trong các số từ a[1] đến a[n]

Tìm số có giá trị nhỏ nhất.

Đổi chỗ số nhỏ nhất vừa tìm với số đầu tiên a[1].

Giai đoạn 2: Trong các số từ a[2] đến a[n] (dãy số này là dãy số sau cùng khi kết thúc
giai đoạn 1)

Tìm số có giá trị nhỏ nhất.

Đổi chỗ số nhỏ nhất vừa tìm với số đầu tiên trong a[2] đến a[n] là a[2].

Giai đoạn (n – 1): Dãy số còn lại duy nhất một phần tử chưa được sắp xếp, phần tử đó
là phần tử lớn nhất trong dãy, ta dừng thuật tốn ở đây.

Chương trình tham khảo


Giải thuật sắp xếp chọn – Selection sort
Source code chương trình
Bài tập
Nhập vào một dãy số từ bàn phím …
Bài 1: Tìm phần tử có giá trị nhỏ nhất trong dãy. Phần tử đó nằm ở vị trị nào.
Bài 2: Tìm phần tử có giá trị lớn thứ hai trong dãy.
Bài 3: Sắp xếp dãy số theo chiều giảm dần.
Bài 4: Kiểm tra phần tử có giá trị bằng 10 thuộc dãy số hay không?
Bài 5: Loại bỏ các phần chẵn trong dãy.
Tính tổng dãy số cách đều trong Scratch
Đề bài:


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×