Viết chương trình Tìm giá trị lớn nhất các phần tử trong danh sách Python

Cách tiếp cận này không sử dụng hàm max []

Nếu bạn phải tìm nó mà không sử dụng chức năng tối đa thì bạn có thể làm theo mã dưới đây:

a=[1,2,3,4,6,7,99,88,999] max= 0 for i in a: if i > max: max=i print[max]

Ngoài ra nếu bạn muốn tìm chỉ số của max kết quả,

print[a.index[max]]

Bài viết được đăng tại nguyenlediep.com - không copy dưới mọi hình thức.

NLD Code - Chương trình nhập vào các phần tử và xuất ra số lớn nhất trong Python. Chương trình này sẽ cho người dùng nhập vào các giá trị và xuất ra giá trị lớn nhất trong các giá trị...

  • ads: Review - Đọc - Chia sẻ truyện
  • ads: Diễn đàn mua bán & rao vặt
  • ads: Công cụ tìm kiếm nhanh
  • Chương trình nhập vào các phần tử và xuất ra số lớn nhất trong #Python. Chương trình này sẽ cho người dùng nhập vào các giá trị và xuất ra giá trị lớn nhất trong các giá trị người dùng đã nhập vào.

    Bước 1: Lấy giá trị số phần tử được nhập n = int[raw_input['\n - Nhap so phan tu: ']] Bước 2: Khởi tạo một danh sách rỗng li = [] Bước 3: Tạo vòng lặp for để nhận các giá trị nhập vào và thêm vào danh sách rỗng for i in range[1,n+1]:     number = raw_input['\n - Nhap so thu '+str[i]+': ']     li.append[number] Bước 4: Giả sử giá trị đầu tiên trong danh sách là giá trị lớn nhất ma = li[0] Bước 5: Tạo vòng lặp for để so sánh các giá trị trong danh sách for j in li:     if j > ma:         ma = j Bước 6: In ra giá trị lớn nhất sau khi đã so sánh với vòng lặp for ở bước 5 print '\n => So lon nhat la:',ma+'\n' Bước 7: Dùng try except Exception để bắt lỗi khi người dùng nhập sai try: except Exception: Và đoạn code hoàn chỉnh nhất cho bài này được thể hiện như bên dưới try:     n = int[raw_input['\n - Nhap so phan tu: ']]     li = []     for i in range[1,n+1]:         number = raw_input['\n - Nhap so thu '+str[i]+': ']         li.append[number]     ma = li[0]     for j in li:         if j > ma:             ma = j     print '\n => So lon nhat la:',ma+'\n' except Exception:     print '\n=> Loi roi vui long kiem tra lai!\n'

    Chúc các bạn thành công và vui vẻ!

    Hàm max[] được tích hợp sẵn trong Python trả về phần tử lớn nhất trong một iterable hoặc lớn nhất trong những tham số truyền vào.

    Nếu các giá trị là các chuỗi sẽ so sánh theo thứ tự chữ cái alphabet.

    Cú pháp hàm max[] trong Python

    Hàm max[] trong Python có 2 dạng:

    max[iterable, *iterables[,key, default]]

    Hoặc:

    max[item1, item2, *item[, key]]

    Các tham số của hàm max[]

    Hàm max[] làm việc với hai dạng tham số tương ứng với hai cú pháp đã nêu ở trên:

    1. max[iterable, *iterables[, key, default]]

    • iterable: Bắt buộc. Các tuple, string, set, dictionary hoặc đối tượng iterator mà bạn cần tìm phần tử lớn nhất trong đó.
    • *iterables: Tùy chọn. Iterable nào lớn nhất sẽ được trả về.
    • key: Tùy chọn. Key function, nơi các iterable đi qua. Phép so sánh được thực hiện dựa trên kết quả trả về sau khi đi qua key function.
    • default: Tùy chọn. Giá trị mặc định khi iterable trống.

    2. max[item1, item2, *item[, key]]

    • item1, item2: Bắt buộc. Đối tượng để so sánh, có thể là number, string...
    • *item: Tùy chọn. Các đối tượng khác để so sánh.
      → Cần ít nhất hai đối tượng để thực hiện so sánh với hàm max[].
    • key: Tùy chọn. Key function, nơi các item đi qua. Phép so sánh được thực hiện trên kết quả trả về sau khi đi qua key function.

    Giá trị trả về từ max[]

    Hàm max trả về kết quả khác nhau tương ứng với hai loại như trên:

    1. max[iterable, *iterables[, key, default]]

    Trường hợpKeyDefaultGiá trị trả về
    Iterable trốngCó hoặc KhôngKhông cóSinh ra ngoại lệ ValueError
    Iterable trốngTrả về giá trị Default
    Một iterable [không trống]KhôngCó hoặc KhôngTrả về số lớn nhất trong iterable
    Một iterable [không trống]Có hoặc KhôngTruyền từng phần tử trong iterable cho hàm key, kết quả trả về là phần tử lớn nhất dựa trên giá trị trả về từ hàm key
    Nhiều iterable [không trống]KhôngCó hoặc KhôngTrả về iterable lớn nhất
    Nhiều iterable [không trống]Có hoặc KhôngTruyền từng iterable cho hàm key. Kết quả trả về là iterable lớn nhất dựa trên giá trị trả về từ hàm key

    2. max[item1, item2, *item[, key]]

    Trường hợpKeyGiá trị trả về
    2 itemKhôngTrả về tham số lớn hơn
    2 itemTruyền từng tham số cho hàm key, kết quả trả về là phần tử lớn hơn dựa trên giá trị trả về từ hàm key
    Nhiều itemKhôngTrả về tham số lớn nhất
    Nhiều itemTruyền từng tham số cho hàm key, kết quả trả về là phần tử lớn nhất dựa trên giá trị trả về từ hàm key

    Ví dụ 1: Tìm phần tử lớn nhất trong các số truyền vào

    # su dung max[item1, item2, *item] print['So lon nhat la:', max[1, 3, 2, 5, 4]] # su dung max[iterable] num = [1, 3, 2, 8, 5, 10, 6] print['So lon nhat la:', max[num]]

    Chạy chương trình, kết quả trả về là:

    So lon nhat la: 5 So lon nhat la: 10

    Ví dụ 2: Tìm số có tổng các chữ số lớn nhất bằng cách sử dụng key function

    def sumDigit[num]: sum = 0 while[num]: sum += num % 10 num = int[num / 10] return sum # su dung max[item1, item2, *item, key] print['Ket qua lon nhat la:', max[100, 321, 267, 59, 40, key=sumDigit]] # su dung max[iterable, key] num = [15, 300, 2700, 821, 52, 10, 6] print['Ket qua lon nhat la:', max[num, key=sumDigit]]

    Output trả về là:

    Ket qua lon nhat la: 267 Ket qua lon nhat la: 821

    Ở ví dụ này, các tham số hoặc từng phần tử trong tham số iterable được truyền lần lượt vào sumDigit[] để lấy kết quả là số có tổng các chữ số lớn nhất.

    Ví dụ 3: Tìm list có độ dài lớn nhất bằng cách sử dụng key function

    num = [15, 300, 2700, 821] num1 = [12, 2] num2 = [34, 567, 78] # su dung max[iterable, *iterables, key] print['List dai nhat la:', max[num, num1, num2, key=len]]

    Kết quả trả về:

    List dai nhat la: [15, 300, 2700, 821]

    Trong chương trình trên, các iterable num, num1 và num2 được truyền vào key function là hàm len[] tích hợp sẵn trong Python. Kết quả trả về là độ dài từng iterable và hàm max sẽ đưa ra iterable có độ dài lớn nhất.

    Xem thêm: Các hàm Python tích hợp sẵn

    Hãy viết một hàm Python dùng để tìm giá trị lớn nhất của ba số được nhập vào từ bàn phím, bạn có thể sử dụng hàm put để nhận dữ liệu từ người dùng.

    Bài giải

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

    Hàm tìm số lớn nhất này cũng khá đơn giản, nhưng qua đó cũng giúp bạn hiểu được cách khai báo hàm và truyền tham số vào hàm.

    Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

    Tham khảo bài giải dưới đây.

    """ HỌC PYTHON TẠI FREETUTS.NET AUTHOR: CƯỜNG NGUYỄN """ print["Bài tập Python dùng hàm tìm số lớn nhất trong ba số"] # Hàm tìm số lớn nhất def find_max[a, b, c]: max = a if max < b: max = b if max < c: max = c return max # Chương trình chính print["Nhập vào số thứ nhất: "] a = float[input[]] print["Nhập vào số thứ hai: "] b = float[input[]] print["Nhập vào số thứ ba: "] c = float[input[]] print["Số lớn nhất trong ba số ", a, " ", b, " ", c, " là ", find_max[a, b, c]]

    Giả sử mình nhập vào ba số 10, 12, 03 thì kết quả sẽ như hình sau:

    Bài viết này được đăng tại [free tuts .net]

    Câu hỏi thường gặp liên quan:

    Cùng chuyên mục:

    Video liên quan

    Chủ Đề