我使用了在互聯網上找到的 for 回圈代碼,但我的教授要求我將其轉換為 while 回圈。我也不知道如何編碼總和部分。我們不能使用任何高級的東西,比如 def。我才開始使用 python 撰寫課程代碼,老實說,我一直被困住,沒有趕上課程。任何幫助表示贊賞,謝謝。
import array as arr
a=arr.array('i', [])
x=0
#size of array
arrsize=int(input("\nPlease Enter the number of elements: "))
#elements
print("\nPlease Enter " str(arrsize) " elements")
while(x<arrsize):
num=int(input("Enter a number: "))
a.insert(x,num)
x =1
print("The elements are: ",a)
#duplicate elements
for i in range (0, len(a)):
for j in range (i 1, len(a)):
if(a[i]==a[j]):
print("\nThe duplicate elements are: ",(a[j]))
uj5u.com熱心網友回復:
該宣告
for i in range(x, y):
# Code to loop through here
本質上是說,對于 x 和 y 之間的每個數字 i,您將回圈一次回圈代碼,包括 x 和不包括 y。
我們可以用“while”回圈撰寫一個等效的陳述句。但是我們需要單獨管理變數 i (包括初始化它和手動增加它)
i = x
while i < y:
# Code to loop through here
i = 1
現在您知道這兩種回圈型別是如何等效的,您可以使用這種等效性將您的代碼從 for 回圈轉換為 while 回圈。你需要做兩次;代碼中的每個 for 回圈一次。我絕對建議您自己做,因為它是學習程序的重要組成部分!
uj5u.com熱心網友回復:
這個概念與用于條件的相同for-loop,唯一的區別是手動增加索引,因為while它用于基于條件的loops。
sum = 0 #to add each duplicates value
dup=[] #store each duplicate if needed
# increase the values of i,j manually
i = 0
while(i< len(a)):
j=i 1
while(j<len(a)):
if(a[i]==a[j]):
#if duplicate found then add
sum = sum a[i]
dup.append(a[i])
j=j 1
i=i 1
print("\nThe duplicate elements are: ",dup)
print("Sum of of the duplicates :" , sum)
uj5u.com熱心網友回復:
您不必匯入任何模塊,Python 的內置串列足以滿足您的應用程式。從一個空duplicates串列開始dup_sum = 0,然后遍歷陣列的所有元素;如果某個元素不在duplicates其中且count大于1,則將其插入duplicates并將出現的總和添加到dup_sum. 最后,列印資訊。你要。
a = []
x = 0
# size of array
arrsize = int(input('Please Enter the number of elements: '))
# elements
print(f'Please Enter {arrsize} elements')
while x < arrsize:
num = int(input('Enter a number: '))
a.append(num)
x = 1
print(f'The elements are: {a}')
# duplicate elements
duplicates = []
dup_sum = 0
i = 0
while i < len(a):
d = a[i]
if d not in duplicates:
dcount = a.count(d)
if dcount > 1:
dup_sum = d * dcount
duplicates.append(d)
i = 1
print(f'The duplicate elements are {duplicates}')
print(f'Sum of duplicates = {dup_sum}')
這是該程式的示例運行:
Please Enter the number of elements: 5
Please Enter 5 elements
Enter a number: 1
Enter a number: 2
Enter a number: 2
Enter a number: 3
Enter a number: 3
The elements are: [1, 2, 2, 3, 3]
The duplicate elements are [2, 3]
Sum of duplicates = 10
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/481255.html
上一篇:拆分指定長度的二維陣列
