Hướng dẫn how do you find the sum of a while loop in python? - làm thế nào để bạn tìm thấy tổng của một vòng lặp while trong python?

3

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 chỉ là người mới bắt đầu: p. Tôi đang làm một hướng dẫn về trong khi các vòng lặp trên Codeacademy "Bấm vào đây!" , nhưng tôi đã bị mắc kẹt trong phần này: Viết một vòng lặp trong thời gian lưu trữ vào "theSum" tổng của 10 số nguyên dương đầu tiên (bao gồm 10). Đây là những gì nó cung cấp cho bạn để làm việc với:

theSum = 0
num = 1
while num <= 10:
    print num
    num = num + 1

Nó in ra các số 1 đến 10 trên các dòng riêng biệt trong bảng điều khiển. Bất cứ ai cũng có thể giải thích cho tôi làm thế nào tôi có thể lấy nó để lưu trữ tổng các giá trị trong biến "mySum"? Bất cứ điều gì tôi đã thử cho đến nay vẫn chưa làm việc cho tôi. :(

Chỉnh sửa: Được rồi, vì vậy tôi vừa thử điều này:

theSum = 0
num = 1
while num <= 10:
    num += 1
    mySum = num
    mySum = mySum + num

print mySum

Điều này cho tôi 22, tại sao vậy? Dù sao tôi cũng ở gần? (Cảm ơn vì tất cả các câu trả lời nhưng tôi sẽ thử lại vào ngày mai.)

Chỉnh sửa: Được rồi, tôi đã hiểu rồi! Cảm ơn bạn vì sự giúp đỡ. :)

mySum = 0 
num = 1 
while num <= 10: 
    mySum += num 
    num += 1    
print mySum

Hỏi ngày 22 tháng 8 năm 2012 lúc 22:47Aug 22, 2012 at 22:47

Hướng dẫn how do you find the sum of a while loop in python? - làm thế nào để bạn tìm thấy tổng của một vòng lặp while trong python?

StephenstephenStephen

331 Huy hiệu vàng1 Huy hiệu bạc4 Huy hiệu đồng1 gold badge1 silver badge4 bronze badges

2

Mã bạn đã hiển thị hầu hết mọi thứ cần thiết.

Vấn đề còn lại là trong khi bạn tạo chính xác các giá trị được thêm vào (____99) bên trong vòng lặp ____ 10 của bạn, bạn không tích lũy các giá trị này trong biến theSum của bạn.

Tôi sẽ không cung cấp cho bạn mã bị thiếu có chủ đích, để bạn có thể học được điều gì đó từ câu hỏi của bạn ... nhưng bạn cần thêm giá trị của num vào biến của bạn theSum bên trong vòng lặp. Mã để thực hiện việc này (thực sự chỉ có một câu lệnh, tức là, một dòng mã) sẽ có phần giống với cách bạn đang xử lý/cập nhật giá trị của num bên trong vòng lặp của bạn.

cái đó có giúp ích không?

Đã trả lời ngày 22 tháng 8 năm 2012 lúc 22:49Aug 22, 2012 at 22:49

LevonlevonLevon

Huy hiệu vàng 132K3333 gold badges198 silver badges187 bronze badges

6

Hãy chạy khô thông qua mã bạn đã đăng. Tôi đã đánh số các dòng để tôi có thể tham khảo chúng.

1. num = 1
2. while num <= 10:
3.     num += 1
4.     mySum = num
5.     mySum = mySum + num

6. print mySum

Đây là một cuộc chạy khô

1. simple enough, create a new variable `num` and bind it to the number `1`
2. `num` is less than 10, so do the body of the loop
3. `num` is `1` so now bind it to `2`
4. create a new variable `mySum` and bind to `2` (same as num)
5. `mySum` is `2` and `num` is `2` so bind `mySum` to `4`
Back to the top of the loop
2. `num` is less than 10, so do the body of the loop
3. `num` is `2` so now bind it to `3`
4. bind `mySum` to `3` (same as num)
5. `mySum` is `3` and `num` is `3` so bind `mySum` to `6`
Back to the top of the loop
2. `num` is less than 10, so do the body of the loop
3. `num` is `3` so now bind it to `4`
4. bind `mySum` to `4` (same as num)
5. `mySum` is `4` and `num` is `4` so bind `mySum` to `8`
Back to the top of the loop
...

Có vẻ như một cái gì đó không đúng. Tại sao bạn lại làm điều này

theSum = 0
num = 1
while num <= 10:
    num += 1
    mySum = num
    mySum = mySum + num

print mySum
5 bên trong vòng lặp? Bạn mong đợi nó làm gì?

Đã trả lời ngày 23 tháng 8 năm 2012 lúc 0:28Aug 23, 2012 at 0:28

Hướng dẫn how do you find the sum of a while loop in python? - làm thế nào để bạn tìm thấy tổng của một vòng lặp while trong python?

John La Rooyjohn La RooyJohn La Rooy

286K51 Huy hiệu vàng359 Huy hiệu bạc499 Huy hiệu đồng51 gold badges359 silver badges499 bronze badges

2

Cho các vòng lặp! Tôi nói!

n=10
sum(range(n+1))

Đã trả lời ngày 22 tháng 8 năm 2012 lúc 23:04Aug 22, 2012 at 23:04

Thẩm mỹAesthete

18.2k6 Huy hiệu vàng34 Huy hiệu bạc45 Huy hiệu Đồng6 gold badges34 silver badges45 bronze badges

3

Tôi cũng rất đấu tranh với điều này.

Đây là giải pháp của tôi nhưng tôi đã nhận được sự giúp đỡ từ InternactivePython.org (http://interactivepython.org/runestone/static/pip2/indefiniteiteration/thewhilestatement.html)

Tôi không thể tìm ra cách làm điều này mà không có chức năng 'trả lại'. Xem giải pháp và giải thích dưới đây:

def problem1_3(x):
    my_sum=0
    count = 1
    while count<=x:
        my_sum=my_sum+count
        count = count+1
    return my_sum
    print(my_sum)

Giả sử bạn đặt x = 3 theo cách tôi tin rằng Python diễn giải điều này như sau: Đặt my_sum = 0 và đếm = 1 1. lần lặp đầu tiên với vòng lặp trong khi: 1

  1. Lần lặp thứ hai của vòng lặp trong khi

  2. Lần lặp thứ ba của vòng lặp trong khi

  3. Lần lặp thứ tư trong khi vòng lặp không bao giờ xảy ra kể từ 4

Tuy nhiên, tôi nghĩ rằng sẽ có một cách dễ dàng hơn để làm điều này. Có cách nào để Python tạo danh sách và sau đó tổng hợp các giá trị trong danh sách không? Ví dụ, tôi có thể viết một chương trình có tên SUMLIST (N) trong đó Python liệt kê các số nguyên từ 0 đến N và sau đó thêm chúng lên không?

Đã trả lời ngày 2 tháng 4 năm 2017 lúc 21:10Apr 2, 2017 at 21:10

Hướng dẫn how do you find the sum of a while loop in python? - làm thế nào để bạn tìm thấy tổng của một vòng lặp while trong python?

1

Làm thế nào để bạn tổng hợp một số trong một vòng lặp 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 ..

Làm thế nào để bạn tìm thấy tổng của một vòng lặp trong Python?

Nếu bạn cần tổng số được lấy từ đầu vào của người dùng trong vòng lặp, hãy sử dụng hàm input () ...
Khai báo một biến mới và đặt nó thành 0 ..
Sử dụng một vòng lặp để lặp qua một chuỗi các số ..
Biết lại biến thành giá trị của nó cộng với số hiện tại ..

Làm thế nào để bạn in một tổng số số trong một vòng lặp?

Tổng số tự nhiên sử dụng trong khi vòng lặp trong cả hai chương trình, vòng lặp được lặp lại n số lần.Và, trong mỗi lần lặp, giá trị của I được thêm vào tổng và tôi được tăng thêm 1.Mặc dù cả hai chương trình đều chính xác về mặt kỹ thuật, tốt hơn là sử dụng cho Loop trong trường hợp này.Đó là bởi vì số lần lặp được biết đến.the loop is iterated n number of times. And, in each iteration, the value of i is added to sum and i is incremented by 1 . Though both programs are technically correct, it is better to use for loop in this case. It's because the number of iterations is known.

Làm thế nào để bạn tìm thấy tổng n số tự nhiên trong vòng lặp một thời gian?

Sử dụng trong khi vòng lặp..
#bao gồm .
#bao gồm .
void main ().
int num, i, sum = 0;// Khởi tạo và khai báo các biến cục bộ ..
printf ("Nhập một số dương:") ;.
Scanf ("%d", & num);// lấy một giá trị lên để tìm tổng n số tự nhiên ..
i = 0 ;.