2016-05-11 5 views
0

Ich bin ziemlich neu zu Python und nur alles zusammen zu codieren und ich bin total ratlos. Ich finde keine einfachere Erklärung, wie man die Anzahl der geraden Zahlen, die ein Benutzer in eine Liste einträgt, ermitteln kann. Jeder Rat oder Ideen sind herzlich willkommen, vielen Dank.Wie man gerade Zahlen in einer Benutzereingangsliste zählt

+0

Bitte halten Sie den Code, den Sie versucht hatte. Es hilft den Leuten, besser zu antworten! – San

Antwort

0

Eine gerade Zahl ist immer durch 2 teilbar. Sie können also den Operator modulus (%) verwenden, um zu überprüfen, ob jede Zahl im Array gerade ist. Wenn diese Zahl gerade ist, können Sie einen Zähler für die Anzahl der geraden Zahlen erhöhen. Sie tun dies jedes Mal, wenn Sie ein Element in der Liste durchlaufen. Hier

define evenCount 

go through each number in the list 
    if the number is even (divisible by 2) 
     increment evenCount 

ist der eigentliche Code:

listSize = int(input("Enter the list size: ")) 
numbers = [] 
evenCount = 0 

for i in range(listSize): 
    number = int(input("Enter a number: ")) 
    numbers.append(number) 

for number in numbers: 
    if number % 2 == 0: 
     evenCount = evenCount + 1 

print(evenCount) 
0

Hier ein Beispiel:

>>> l=list(map(int, input('enter space separated list elements: ').split())) 
enter space separated list elements: 1 2 3 4 5 6 
>>> l 
[1, 2, 3, 4, 5, 6] 
>>> print('Number of even elements: '+str(len(list(filter(lambda x:x%2==0, l))))) 
Number of even elements: 3 
>>> 
0

einen Zähler verwenden die Eingänge zu zählen, die 0 Erinnerung haben für Division durch 2:

numbers = list() 
counter = 0 
while(True): 
    data = input("Enter number ('E' for exit): ") 
    if data == 'E': 
     break 
    numbers.append(data) 
    if int(data)%2 ==0: 
     counter +=1 

print (numbers) 
print (counter) 

Funktioniert wie folgt:

>>> 
==================== RESTART: C:/Windows/System32/test.py ==================== 
Enter number ('E' for exit): 1 
Enter number ('E' for exit): 2 
Enter number ('E' for exit): 3 
Enter number ('E' for exit): 4 
Enter number ('E' for exit): 5 
Enter number ('E' for exit): 6 
Enter number ('E' for exit): E 
['1', '2', '3', '4', '5', '6'] 
3 
>>> 
1

Versuchen Sie folgendes:

def GetEvenCount(inputList): 
    return sum(1-n%2 for n in inputList) 
Verwandte Themen