Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

8

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang cố gắng viết một chương trình để thêm số từ 1 vào n. Tôi đã quản lý để có được nó để in các số nhiều lần nhưng không thêm tất cả. Nó tiếp tục chỉ thêm hai trong số các số.

Nỗ lực đầu tiên của tôi là:

def problem1_3(n):
    my_sum = 0
    # replace this pass (a do-nothing) statement with your code
    while my_sum <= n:
        my_sum = my_sum + (my_sum + 1)
    print() 
    print(my_sum)

Làm thế nào tôi có thể khắc phục sự cố này?

Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

Khi được hỏi ngày 10 tháng 5 năm 2017 lúc 19:45May 10, 2017 at 19:45

3

Tôi không hiểu tại sao mọi người cứ làm mọi thứ trở nên phức tạp. Đây là giải pháp đơn giản của tôi

n = int(input())
print(n * (n + 1) // 2)

Đã trả lời ngày 22 tháng 2 năm 2020 lúc 3:41Feb 22, 2020 at 3:41

Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

Akshat Tamrakarakshat TamrakarAkshat Tamrakar

1.8772 huy hiệu vàng12 Huy hiệu bạc16 Huy hiệu đồng2 gold badges12 silver badges16 bronze badges

2

Bạn có thể làm điều đó với một dòng, trong đó bạn tạo một danh sách các số nguyên từ

n = int(input())
print(n * (n + 1) // 2)
7 đến
n = int(input())
print(n * (n + 1) // 2)
8 và tổng hợp tất cả các yếu tố với hàm
n = int(input())
print(n * (n + 1) // 2)
9

def problem1_3(n):
    return sum(range(n+1))

Đã trả lời ngày 10 tháng 5 năm 2017 lúc 19:57May 10, 2017 at 19:57

3

Đó là nơi tôi sử dụng "toán" để giải quyết các vấn đề như thế này. Có một công thức để giải quyết vấn đề này: n * (n+1) / 2.n * (n+1) / 2.

Mã tôi sẽ viết:

def sum(n):
  return n*(n+1)//2

Mike Rapadas

4.5932 Huy hiệu vàng27 Huy hiệu bạc21 Huy hiệu đồng2 gold badges27 silver badges21 bronze badges

Đã trả lời ngày 3 tháng 6 năm 2021 lúc 12:42Jun 3, 2021 at 12:42

Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

Ahmedgahmedgahmedg

1661 Huy hiệu vàng1 Huy hiệu bạc10 Huy hiệu đồng1 gold badge1 silver badge10 bronze badges

Bạn cần 2 biến khác nhau trong mã của mình - một biến trong đó bạn có thể lưu trữ tổng khi bạn lặp qua các giá trị và thêm chúng (my_sum vào mã của tôi) và một biến khác (tôi trong mã của tôi) để lặp lại các số từ 0 đến n.

def problem1_3(n):
    my_sum = 0
    i=0
    #replace this pass (a do-nothing) statement with your code
    while i <= n:
        my_sum = my_sum + i
        print(my_sum)
        i+=1
    return my_sum

Bạn đang sử dụng biến my_sum trong mã của mình để lưu trữ tổng và lặp qua các số.

Ayhan

66.5K17 Huy hiệu vàng173 Huy hiệu bạc191 Huy hiệu Đồng17 gold badges173 silver badges191 bronze badges

Đã trả lời ngày 10 tháng 5 năm 2017 lúc 20:23May 10, 2017 at 20:23

0

Một dòng này làm công việc:

sum(range(1, n+1))

Đã trả lời ngày 8 tháng 2 năm 2018 lúc 14:04Feb 8, 2018 at 14:04

Đã trả lời ngày 24 tháng 10 năm 2018 lúc 13:27Oct 24, 2018 at 13:27

Tổng số số từ 1 đến n sẽ lớn hơn n. Ví dụ: tổng số từ 1 đến 5 là 15, rõ ràng là lớn hơn 5. Vòng lặp của bạn chấm dứt sớm. Bạn cần duy trì một bộ đếm riêng cho vòng lặp.

Đã trả lời ngày 10 tháng 5 năm 2017 lúc 20:14May 10, 2017 at 20:14

HeshamheshamHesham

111 huy hiệu bạc2 huy hiệu đồng1 silver badge2 bronze badges

Trên thực tế, tôi đã thử rất nhiều loại chương trình đó trong Jupyter Notebook mà bạn có thể sử dụng sau:

n = int(input("Enter the Number: "))
print(n * (n + 1) // 2)

Và bạn cũng có thể thử mã này:

def problem1_3(n):
return n + problem1_3(n-1) if n > 1 else 1

Và bạn cũng có thể thử nó

def f(a):
return (a + 1) * (abs(a) + 2 * (a <= 0)) // 2

Đã trả lời ngày 10 tháng 12 năm 2020 lúc 16:41Dec 10, 2020 at 16:41

Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

Các lập trình viên thực sự sử dụng đệ quy (và hy vọng cho một N không quá lớn vì không có tối ưu hóa cuộc gọi đuôi trong Python):

def problem1_3(n):
    return n + problem1_3(n-1) if n > 1 else 1

Đã trả lời ngày 10 tháng 5 năm 2017 lúc 20:28May 10, 2017 at 20:28

JohanljohanlJohanL

6.5111 Huy hiệu vàng10 Huy hiệu bạc24 Huy hiệu đồng1 gold badge10 silver badges24 bronze badges

1

Vì vậy, nó sẽ tối ưu hơn

n = int(input())
print(n * (n + 1) // 2)
0

Đã trả lời ngày 11 tháng 9 năm 2018 lúc 9:26Sep 11, 2018 at 9:26

Yoloyyoloyyoloy

Phù hiệu đồng 14188 bronze badges

1

n = int(input())
print(n * (n + 1) // 2)
1

Đã trả lời ngày 24 tháng 10 năm 2018 lúc 12:55Oct 24, 2018 at 12:55

1

Điều này trong khi vòng lặp thực sự hoạt động:

def main ():

n = int(input())
print(n * (n + 1) // 2)
2

main()

Đã trả lời ngày 8 tháng 3 năm 2021 lúc 3:20Mar 8, 2021 at 3:20

1

Những dòng này đã làm việc cho tôi trong PythonPython

n = int(input())
print(n * (n + 1) // 2)
3

Cũng như những điều này:

n = int(input())
print(n * (n + 1) // 2)
4

Đã trả lời ngày 10 tháng 7 năm 2021 lúc 22:40Jul 10, 2021 at 22:40

Làm thế nào về bạn thử nó bằng cách sử dụng "trong khi vòng lặp":

n = int(input())
print(n * (n + 1) // 2)
5

Đã trả lời ngày 28 tháng 6 năm 2017 lúc 12:15Jun 28, 2017 at 12:15

Hướng dẫn python summation from 1 to n - tổng số python từ 1 đến n

n = int(input())
print(n * (n + 1) // 2)
6

Đã trả lời ngày 29 tháng 4 năm 2019 lúc 9:04Apr 29, 2019 at 9:04

Tổng kết từ 1 đến N là gì?

Công thức của tổng số n tự nhiên đầu tiên là s = n (n+1) 2.S=n(n+1)2 .

Làm thế nào để bạn làm tổng kết trong Python?

Python cung cấp một tổng số hàm sẵn () tổng hợp các số trong danh sách.Cú pháp: Sum (có thể lặp lại, bắt đầu) có thể sử dụng được: Có thể là bất cứ thứ gì danh sách, bộ dữ liệu hoặc từ điển, nhưng quan trọng nhất là nó phải là số.Bắt đầu: Bắt đầu này được thêm vào tổng số số trong itable.sum(iterable, start) iterable : iterable can be anything list , tuples or dictionaries , but most importantly it should be numbers. start : this start is added to the sum of numbers in the iterable.

Làm thế nào để bạn thêm tất cả các số từ 1 đến 10 trong Python?

Bản in của tất cả các số từ 1 đến 10 trong Python sử dụng cho câu trả lời mã vòng lặp..
n = đầu vào ("nhập số để tính tổng").
n = int (n).
sum = 0 ..
# Sử dụng trong khi vòng lặp để lặp lại un cho đến không ..
while (num> 0):.
sum += num ..

Làm thế nào để bạn tổng số số trong python?

Xem ví dụ này:..
num = int (input ("nhập một số:")).
Nếu num <0:.
In ("Nhập một số dương").
sum = 0 ..
# Sử dụng trong khi vòng lặp để lặp lại un cho đến không ..
while (num> 0):.
sum += num ..