Bài 4. Số chính phương tên file: chinhphuong.***
Số chính phương là một số nguyên dương bằng bình phương của một số nguyên dương. Ví dụ: 1, 4, 9, 16, 100 … là những số chính phương; còn 3, 8, 15 … không phải là những số chính phương.
Cho trước một số nguyên dương n. Em hãy kiểm tra xem n có phải là số chính phương không?
Input: Một dòng duy nhất chứa số nguyên dương n.
Output: Đưa ra thông báo "yes" nếu n là số chính phương, ngược lại thông báo "no".
Ví dụ:
Input
Output
4
yes
8
no
giúp mk vứi ạ cần gấp ạ :<
Hi cả nhà! Mình đang hơi loay hoay với một câu hỏi khó nhằn. Bạn nào nhẹ nhàng, kiên nhẫn giúp mình với được không? Cảm ơn tất cả rất nhiều!
Các câu trả lời
Câu hỏi Tin học Lớp 8
Câu hỏi Lớp 8
Bạn muốn hỏi điều gì?
Đỗ Bảo Việt
Để kiểm tra xem một số nguyên dương n có phải là số chính phương hay không, ta thực hiện các bước sau:1. Tính căn bậc hai của n (sử dụng hàm sqrt() trong Python).2. Ép kiểu kết quả thành kiểu int để lấy phần nguyên.3. Kiểm tra xem phần nguyên này bình phương có bằng n hay không.Cách 1: Sử dụng vòng lặp```pythonimport mathn = int(input())x = int(math.sqrt(n))if x * x == n: print("yes")else: print("no")```Cách 2: Sử dụng cách kiểm tra modulo```pythonimport mathn = int(input())if int(math.sqrt(n))**2 == n: print("yes")else: print("no")```Câu trả lời cho câu hỏi trên là:Input: ```4```Output:```yes```
Phạm Đăng Đức
Ví dụ với input là 8, căn bậc hai của 8 là 2.83, không phải là một số nguyên dương nên output sẽ là 'no'.
Đỗ Bảo Ánh
Ví dụ với input là 4, căn bậc hai của 4 là 2, 2 là một số nguyên dương nên output sẽ là 'yes'.
Đỗ Hồng Đức
Nếu căn bậc hai của n không phải là một số nguyên dương, tức là n không phải là số chính phương, trong trường hợp này ta sẽ đưa ra output là 'no'.
Đỗ Bảo Đức
Nếu căn bậc hai của n là một số nguyên dương, tức là n là số chính phương, trong trường hợp này ta sẽ đưa ra output là 'yes'.