Hướng dẫn cách kiểm tra số chính phương trong python. Bạn sẽ học được cách tạo hàm kiểm tra số chính phương trong python, cũng như cách liệt kê tất cả các số chính phương nhỏ hơn n bằng python sau bài học này.
Chúng ta có 2 phương pháp để kiểm tra số chính phương trong python như sau:
- Kiểm tra số chính phương trong python bằng lũy thừa
- Kiểm tra số chính phương trong python bằng căn bậc 2
Số chính phương trong python
Theo wikipedia thì khái niệm số chính phương như sau:
Số chính phương hay còn gọi là số hình vuông là số tự nhiên có căn bậc hai là một số tự nhiên, hay nói cách khác, số chính phương bằng bình phương của một số tự nhiên.
Khái niệm số chính phương trong python cũng giống như trên. Chúng ta coi một số là số chính phương trong Python nếu như nó bằng bình phương của một số tự nhiên. Đây là chìa khóa thứ nhất giúp chúng ta có thể tìm được số chính phương trong python.
Nói cách khác, căn bậc 2 của một số chính phương chính là một số tự nhiên. Đây là chìa khóa thứ 2 giúp chúng ta có thể tìm được số chính phương trong python.
Kiểm tra số chính phương trong python bằng lũy thừa
Cách đầu tiên để kiểm tra số chính phương trong python là sử dụng khái niệm số chính phương bằng bình phương của một số tự nhiên.
Điều đó có nghĩa, với một số bất kỳ, nếu chúng ta có thể tìm được một số tự nhiên mà bình phương của nó bằng với số đã cho, thì số đó chính là số chính phương.
Chúng ta có thể tạo hàm kiểm tra số chính phương trong python với cách này như sau:
def find_square_number(n): |
- Hàm any() được sử dụng để kiểm tra xem có bất kỳ phần tử chỉ định nào trong iterable đã cho hay không.
- Hàm for i in range trong python giúp chúng ta tạo vòng lặp với số lần lặp chỉ định. Xem thêm tại: Vòng lặp for range trong Python
- Hàm trên sử dụng cách viết code gọn bằng list comprehension. Xem thêm tại: Sử dụng list comprehension trong Python
Chúng ta có thể gọi hàm này và sử dụng trong chương trình nhập n kiểm tra n có phải số chính phương không trong python như sau:
def find_square_number(n): |
Lưu ý là số nhập từ bàn phím phải là một số tự nhiên.
Màn hình nhập liệu và kết quả kiểm tra số chính phương trong python sẽ như sau:
>> nhap mot so tu nhien: 4 |
Kiểm tra số chính phương trong python bằng căn bậc 2
Cách thứ 2 để kiểm tra số chính phương trong python là sử dụng tính chất căn bậc 2 của một số chính phương chính là một số tự nhiên.
Điều đó có nghĩa, với một số bất kỳ, nếu căn bậc 2 của nó là một số tự nhiên, thì số đó chính là số chính phương.
Chúng ta có thể sử dụng hàm math.sqrt(n) trong module math, hoặc là lũy thừa số đã cho với số mũ 0.5 với cách viết n** 0.5
.
Để kiểm tra kết quả căn bậc 2 có phải là số tự nhiên không, chúng ta có thể sử dụng tới hàm is_integer().
- Xem thêm: Kiểm tra số nguyên trong python
Và chúng ta tạo hàm kiểm tra số chính phương trong python với cách này như sau:
def find_square_number_2(n): |
Chúng ta có thể gọi hàm này và sử dụng trong chương trình nhập n kiểm tra n có phải số chính phương không trong python như sau:
def find_square_number_2(n): |
Lưu ý là số nhập từ bàn phím phải là một số tự nhiên.
Màn hình nhập liệu và kết quả kiểm tra số chính phương trong python sẽ như sau:
>> nhap mot so tu nhien: 4 |
Liệt kê tất cả các số chính phương nhỏ hơn n
Sử dụng một trong 2 phương pháp ở trên, chúng ta có thể liệt kê tất cả các số chính phương nhỏ hơn n bằng python.
Và dưới đây là ví dụ về chương trình nhập n liệt kê tất cả các số chính phương nhỏ hơn n trong Python:
def find_square_number_2(n): |
Kết quả:
>> nhap so n: 10 |
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn cách kiểm tra số chính phương trong python, cũng như cách liệt kê tất cả các số chính phương nhỏ hơn n bằng python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.
URL Link
HOME › python cơ bản - lập trình python cho người mới bắt đầu>>05. số trong python