HomeChia sẻ

Một số bài toán về số chính phương trong Pascal và scratch

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

Trong bài viết này mình sẽ giới thiệu với các bạn về thuật toán kiểm tra số chính phương trong Pascalscratch và một số bài tập có liên quan.

Các bạn đã biết số chính phương là số viết được dưới dạng bình phương của một số tự nhiên chẳng hạn 0, 1, 4, 9, 16, 25, … số chính phương được ứng dụng rất nhiều trong toán học, thuật toán kiểm tra số chính phương thì lại hết sức đơn giản như sau:

Thuật toán kiểm tra số chính phương

Vì căn bậc hai và bình phương là hai phép toán ngược nhau nên mình lợi dụng điều này để xây dựng thuật toán kiểm tra số chính phương.

Nôm na như thế này nhé, mình muốn kiểm tra xem số 5 có phải là số chính phương không thì mình tính căn bậc hai của 5, sau đó chỉ lấy phần nguyên thôi kết quả là 2, lại lấy 2 bình phương lại ta được 4, 4 không bằng 5 nên 5 không phải là số chính phương.

Thuật toán có thể ghi ngắn gọn lại như sau;

” Nếu bình phương của phần nguyên của căn bậc hai của n đúng bằng n thì n là số chính phương còn không thì n không phải là số chính phương”

Câu chữ hơi nhiều “ngoặc” vì vậy bạn hãy ngẫm nghĩ cho kĩ để hiểu thuật toán.

Chương trình kiểm tra số chính phương trong pascal


Trong chương trình có lệnh sqr(trunc(sqrt(n))) ý nghĩa như sau;

sqr(n): Hàm tính bình phương của n

trunc(x): Cho phần nguyên của x

sqrt(n): Tính căn bậc hai của n

Như vậy sqr(trunc(sqrt(n))) tính bình phương của phần nguyên của căn bậc hai của n

Chương trình kiểm tra số chính phương trong scratch

Ở đây lệnh trong Scratch hơi khác trong Pascal một chút nhưng thuật toán thì không có gì thay đổi, hàm “làm tròn xuống” trong Scratch giống như hàm trunc() trong Pascal

Xem video hướng dẫn lập trình kiểm tra số chính phương bằng Scratch

Bài tập luyện tập liên quan đến số chính phương

Các bạn hãy luyện tập chương trình sau để ôn lại cách sử dụng chương trình con, thuật toán cộng dồn và thuật toán kiểm tra số chính phương:

Bài tập: Viết chương trình nhập vào một số n (n <2 tỉ), xuất ra những số chính phương nhỏ hơn hoặc bằng n và tổng của chúng

Dữ liệu vào file: Tim_cp.inp Dữ liệu ra file: Tim_cp.out
Chứa số n (n <2 tỉ) Dòng 1: Dãy các số chính phương

Dòng 2: Tổng của chúng

Xin chào và hẹn gặp lại các bạn trong bài viết về số hoàn hảo

File Word hướng dẫn viết chương trình kiểm tra số chính phương bằng Scratch

 

 

Comments (0)

Trả lời

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