Show
Đề bài: Viết chương trình sử dụng ngôn ngữ lập trình Python liệt kê các số nguyên tố không quá n.
Code tham khảo dưới đây được viết bằng Python 3.8: # Ho ten: Hoang Van Tuan # Website: timoday.edu.vn import math def isPrimeNum(n): if n < 2: return False tg = int(math.sqrt(n)) for i in range(2, tg + 1): if (n % i) == 0: return False return True n = int(input('Nhap vao so nguyen duong n = ')) print('Cac so nguyen to khong qua ', n, ' la:') if n >= 2: print(2) for i in range(3, n + 1): if isPrimeNum(i): print(i) i = i + 2
Hướng dẫn cách nhập số trong python. Bạn sẽ học được tất cả các cách nhập số trong python trong python sau bài học này. Chúng ta có 3 phương pháp để nhập số trong python như sau:
Ngoài ra, bạn cũng có thể tìm hiểu thêm cách nhập chuỗi và list trong python tại bài viết Nhập chuỗi và list trong python. Lỗi logic xảy ra khi bạn nhập 1 số trong pythonKhi bạn nhập 1 số trong python mà không có xử lý gì thêm, do hàm input() sẽ xử lý số nhập vào từ bàn phím và trả về kết quả dưới dạng chuỗi, nên kết quả số bạn nhập vào sẽ ở dạng chuỗi str mà thôi.
Khi đó nếu bạn không để ý mà đem kết quả nhập từ bàn phím này đi tính toán với các số khác, lỗi sẽ xảy ra như sau:
Lỗi xảy ra là do bạn đã cộng một chuỗi string với một số int. Lại nữa, nếu bạn sử dụng kết quả nhập từ bàn phím với toán tử * thì kết quả phép tính sẽ là phép lặp chuỗi trong Python chứ không phải là phép nhân giữa 2 số với nhau.
Do đó, sau khi nhập 1 số trong python, chúng ta cần thêm các xử lý chuyển kiểu dữ liệu của kết quả nhập vào sang kiểu số (int hoặc float), trước khi thực hiện các tính toán với số đó. Nhập số nguyên python | int(input()) trong pythonĐể nhập số nguyên python, chúng ta nhập số đó từ bàn phím bằng cách sử dụng hàm nhập input(), và sau đó chuyển kiểu dữ liệu của kết quả nhập sang kiểu số thực bằng cách sử dụng hàm int() trong Python.
Ví dụ:
Chúng ta có thể viết gọn các dòng code trên bằng cách sử dụng tới cú pháp int(input()) trong python như sau:
Sau khi đã chuyển kết quả nhập dữ liệu sang dạng int như trên, chúng ta có thể tiến hành các phép toán với số nguyên một cách bình thường. Ví dụ:
Nhập số thực python | float(input()) trong pythonĐể nhập số thực python, chúng ta nhập số đó từ bàn phím bằng cách sử dụng hàm nhập input(), và sau đó chuyển kiểu dữ liệu của kết quả nhập sang kiểu số thực bằng cách sử dụng hàm float() trong Python.
Ví dụ:
Chúng ta có thể viết gọn các dòng code trên bằng cách sử dụng tới cú pháp float(input()) trong python như sau:
Sau khi đã chuyển kết quả nhập dữ liệu sang dạng float như trên, chúng ta có thể tiến hành các phép toán với số thực một cách bình thường. Ví dụ:
Nhập dãy số từ bàn phím pythonNhập dãy số trong python có giới hạn số phần tửĐể nhập dãy số trong python, chúng ta có thể đơn giản lặp lại hàm input() với số lần cụ thể, và chuyển kết quả về dạng int hoặc float bằng cú pháp cú pháp int(input()) trong python hoặc cú pháp float(input()) trong python như sau:
Màn hình nhập dữ liệu như sau:
Tuy nhiên khi cần nhập một dãy số có chứa nhiều phần tử, ví dụ như là 100 số chẳng hạn, sẽ thật không thông minh khi chúng ta viết đi viết lại 100 lần hàm input() như trên. Khi đó, chúng ta có thể nhập số phần tử của dãy số, và sau đó sử dụng vòng lặp for để tiến hành nhập dãy số trong python. Ví dụ, chúng ta nhập n số nguyên từ bàn phím python như sau:
Màn hình nhập dữ liệu như sau:
Chúng ta có thể sử dụng cách viết nội hàm list comprehension để viết mã lệnh nhập n số nguyên từ bàn phím python một cách gọn gàng và thông minh hơn như sau:
Màn hình nhập dữ liệu sẽ như sau:
Ngoài cách lặp lại hàm input() bằng vòng lặp for như trên, chúng ta cũng có thể sử dụng một lần nhập duy nhất bằng cách nhập tất cả các phần tử của dãy số cách nhau bởi một ký tự phân cách, ví dụ như là dấu cách chẳng hạn, sau đó dùng phương pháp tách chuỗi và thu về dãy số dưới dạng list như sau:
Màn hình nhập dữ liệu sẽ như sau:
Lưu ý là ở đây, để có thể tách các số ra khỏi chuỗi, chúng ta vẫn giữ nguyên kết quả nhập dữ liệu ở dạng chuỗi. Sau khi tách số ra khỏi chuỗi rồi, chúng ta mới sử dụng cách viết nội hàm list comprehension để chuyển các phần tử là chuỗi trong list sang dạng số nguyên, như ở trên.
Nhập dãy số trong python không giới hạn số phần tửBằng cách sử dụng vòng lặp vô hạn while True có kèm điều kiện để dừng, chúng ta có thể nhập dãy số trong python mà không giới hạn số phần tử cần nhập vào. Ví dụ, chúng ta nhập một dãy số trong python không giới hạn số phần tử và sẽ kết thúc quá trình nhập khi bạn nhập vào dòng chữ stop như sau:
Màn hình nhập dữ liệu sẽ như sau:
Tổng kếtTrên đây Kiyoshi đã hướng dẫn bạn về các cách nhập số trong 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. |