- Viết một chương trình nhập liên tiếp một dãy số nguyên, chương trình thực hiện những việc như sau:
a. Chương trình cho người dùng liên tiếp nhập các số nguyên dương.
b. Khi gửi dùng nhập “quit” thì sẽ dừng.
c. Chương trình sinh ngoại lệ khi người dùng không nhập đúng kiểu số nguyên dương (ngoại trừ lệnh quit), khi đó chương trình hiện thông báo “đề nghị nhập số nguyên dương” và tiếp tục việc nhập dữ liệu.
d. Chương trình sinh ngoại lệ khi người dùng nhập số nguyên dương nhưng trùng với một trong các giá trị đã nhập, khi đó chương trình hiện thông báo “số mới nhập đã có trong danh sách” và tiếp tục việc nhập dữ liệu.
Cần giúp đỡ viết chương trình sinh ngoại lệ khi người dùng nhập số nguyên dương trùng với một trong các giá trị đã nhập
Úi giời , cái này đơn giản mà, cứ tìm trong mảng xem cái giá trị đó đã tồn tại chưa, nếu chưa thì in cái thông báo đó ra thôi. Cách đơn giản nhất là check giá trị từng phần tử một, nhưng anh khuyên là nên dùng tìm kiếm nhị phân(binary search) nó sẽ tối ưu hơn.
3 Likes
Tức là 3 ý trước bạn làm được rồi?
Ý cuối khó gì đâu. Tìm kiếm thôi.
4 Likes
tìm kiếm như nào ạ .-. , e chưa thông lắm :((
while True:
try:
x = int(input("Nhap so nguyen duong: " ))
1/x;
if x<0:
raise Error;
break
except (Exception):
print(" nhap so nguyen duong")
try:
phanhoi = input()
if phanhoi == "quit":
break
print("Tiep tuc nhap")
except KeyboardInterrupt:
print("Tiep tuc nhap")
continue
3 câu trên e viết dc như này r
Nhét code vào trong cặp 3 dấu huyền(backquote/backtick) ``` đi em ơi.
Cái này phải để trong comment chứ?
1 Like
Nhị phân thì thà dùng set
dùng set là chuẩn luôn.
4 Likes
Ồ, dòng này có ý nghĩa gì vậy bạn?
3 Likes