Ngôn Ngữ Python - Kiểm Tra Một Số Có Phải Là Số Hoàn Hảo

logo
  • Khóa học Ngôn ngữ lập trình Lập trình C Trực quan hóa cấu trúc dữ liệu Ngôn ngữ C# Lập trình C++ CTDL và giải thuật Windows Form Ngôn ngữ LINQ Web Frontend Ngôn ngữ HTML VUEJS Ngôn ngữ CSS Javascript Bootstrap 4 Kỹ thuật SEO Web Backend Ngôn ngữ PHP Node.JS Laravel ASP.NET Web API Ngôn ngữ ASP.NET ADO.NET ASP.NET - MVC Entity Framework EF Core EF 6 ASP.NET Core EF Code-First Phát triển Mobile Lập trình Flutter Lập trình Kotlin React Native Lập trình Android Hướng dẫn sử dụng android studio Cơ sở dữ liệu MongoDB Ngôn ngữ SQL Hệ quản trị CSDL MySQL Hệ quản trị SQL Server Lập trình Python Python cơ bản OOP Python Python MySQL Giao diện - Tkinter PANDAS NUMPY Công nghệ Java Java Swing Java I/O Java Collection Java JDBC Java Core Java String Công nghệ tiên tiến Clean Code Design pattern Kiểm thử tự động Mạng Máy Tính Mạng Máy Tính Cơ Bản
  • Bài Tập Ngôn ngữ lập trình Hướng đối tượng C++ Lập trình C Lập trình C++ CTDL và giải thuật Hướng đối tượng Java Lập trình Java Lập trình C# Ngôn ngữ Python Web Frontend HTML5 Ngôn ngữ HTML Ngôn ngữ CSS Javascript Layout website JQuery Bootstrap Web Backend Ngôn ngữ PHP ASP.NET MVC CRUD OOP - PHP Giỏ hàng OOP- PHP Ajax - PHP Entity Framework Phát triển Mobile Cơ sở dữ liệu Lập trình Python Công nghệ Java Công nghệ tiên tiến Mạng Máy Tính
  • Trắc nghiệm IT
  • DIỄN ĐÀN
  • Mẹo vặt
  • Tin công nghệ
  • TÀI LIỆU
  • RÚT GỌN LINK
  • ÂM NHẠC
  • BÁO THỨC
  • TẬP GÕ PHÍM
  • Python Cơ bản
    • Giải phương trình bậc 2
    • Tìm UCLN và BCNN
    • Liệt kê tất cả các số nguyên tố nhỏ hơn n
    • Liệt kê n số nguyên tố đầu tiên
    • Liệt kê tất cả số nguyên tố có 5 chữ số
    • Phân tích số nguyên n thành tích các số nguyên tố
    • Tính tổng của các chữ số của môt số nguyên n
    • Tìm số thuận nghịch trong Python
    • Liệt kê số Fibonacci nhỏ hơn n và là số nguyên tố
  • Vòng Lặp Python
    • Bài tập vòng lặp trong Python
    • Vẽ tam giác đều
    • Vẽ tam giác vuông cân trong Python
    • Vẽ tam giác Floyd trong Python
    • Vẽ tam giác Pascal
    • S(n) = 1 + 2 + 3 + … + n
    • S(n) = 1^2 + 2^2 + … + n^2
    • S(n) = 1 + ½ + 1/3 + … + 1/n
    • S(n) = ½ + ¼ + … + 1/2n
    • S(n) = 1/3 + 1/5 + … + 1/(2n + 1)
    • Liệt kê tất cả các ước số của số nguyên dương n
    • Tính tổng tất cả các ước số của số nguyên dương N
    • Tìm ước số lẻ lớn nhất của một số
    • Kiểm tra một số có phải là số hoàn hảo
    • Kiểm tra số chính phương
    • In ra từng ký tự của một số
  • Mảng Python
    • In ra các số chẵn trong mảng
    • Tìm kiếm phần tử trong mảng
    • Sự khác nhau giữa mảng, tuple, dictionary và set
    • Sắp xếp mảng tăng / giảm
    • Chương trình quản lý sinh viên
  • Hàm Python
    • Tính điểm trung bình học sinh
    • Tính tổng các số nguyên tô từ 0 - 1000
    • Tìm giá trị lớn nhất trong 3 số
    • Viết hàm Lambda in ra thông tin sinh viên
    • Viết hàm đệ quy
  • Bài Tập Python Kinh Điển
    • Giải phương trình bậc nhất
    • Kiểm tra số nguyên tố
    • Tính giai thừa
    • Chuyển đổi hệ cơ số
    • Dãy số Fibonacci
  • Bài tập GUI
    • Bài tập 1
    • Bài 2: Tính chỉ số BMI
    • Bài 3: Xây dựng ứng dụng window có menu
    • Bài 4: Tính cước taxi
Ngôn ngữ Python - Kiểm tra một số có phải là số hoàn hảo
Buy me a coffee
Cảm ơn mọi người rất nhiều vì đã tin tưởng, đồng hành và ủng hộ mình. Nếu thấy bài viết hay và có ý nghĩa với bạn, nãy donate để mình có thêm nhiều động lực ra bài mới nhé.

Close Bài trước Bài sau Kiểm tra một số có phải là số hoàn hảo bằng Python

Hãy viết chương trình kiểm tra một số có phải là số hoàn hảo không bằng Python, đây là bài tập cơ bản giúp bạn luyện tư duy lập trình Python.

Bài giải

-------------------- ######## --------------------

Để giải bài này thì trước tiên bạn phải tìm hiểu một chút về khái niệm số hoàn hảo.

Gọi N là một số hoàn hảo thì: Tổng các ước từ 1 -> (N - 1) sẽ bằng N.

Ví dụ: 6 là số hoàn hảo vì tổng các ước từ 1 đến 5 là (1 + 2 + 3) = 6.

Như vậy với bài này ta sẽ giải bằng ngôn ngữ Python như sau:

Bước 1: Yêu cầu người dùng nhập số cần kiểm tra bằng hàm input()

Bước 2: Lặp từ 1 đến N - 1, tính tổng tất cả các ước số của N trong khoảng đó.

Bước 3: Nếu tổng bằng N thì N chính là số hoàn hảo.

Bài giải như sau:

print("Nhập vào số N lớn hơn 0: ") n = int(input()) tong = 0 for i in range(1, n): if (n % i == 0): tong += i if (tong == n): print(n, " là số hoàn hảo") else: print(n, " không phải là số hoàn hảo")

Chạy chương trình lên và mình nhập số 6 vào thì chương trình sẽ báo đây là số hoàn hảo, vì vậy thuật toán chúng ta đã giải hoàn toàn đúng.

Nhập vào số N lớn hơn 0: 8 8 không phải là số hoàn hảo Bài trước Bài sau HiepsiitMe Facebook Twitter Pinterest LinkedIn ×

Từ khóa » Tìm Số Hoàn Hảo Trong Python