3 svar
62 visningar
m83_11 85
Postad: 19 okt 10:45

lista och tipplar

Hej!

Såhär lyder uppgiften: gör ett program som först frågar efter hur många tal du vill mata in och sedan låter dig mata in dessa ett efter ett och lägga till dem i en lista. Låt slutligen programmet loopa igenom de inmatade talen och skriva ut dem.

Jag får inte till det riktigt:

Calle_K 2322
Postad: 19 okt 14:49 Redigerad: 19 okt 14:52

Varför har du tal1+1 i ditt while villkor? Ser ut som att du kommer loopa en gång för mycket.

För varje iteration skapar du en ny lista som innehåller den senaste inputen. Istället bör du allokera en lista innan loopen och därefter appenda element för varje iteration (list.append(tal)).

Dessutom vill du dra en ny loop på slutet för att skriva ut i de inmatade värdena.

Förslag på pseudokod (OBS: Ej komplett).

lista = []

while number != tal1
	...
	...
	lista.append(tal)

for tal in lista
	print(tal)
m83_11 85
Postad: 19 okt 15:04

Vad tycker du om detta?:

thedifference 409
Postad: 19 okt 17:30 Redigerad: 19 okt 17:37

Det där ser bra ut, men kalla inte en variabel för list. Likadant som du inte kallar den för int eller str. Det går, men list() är en funktion i Python, så det är förvirrande. Brukar använda lst om jag inte har något bättre namn på min lista.

Din print är bra. Du kan prova följande kod och lägga den på minnet till nästa gång (efter att du bytt namnet till lst):

print(", ".join(str(num) for num in lst))

Följande hade även fungerat i stället för din while loop:

for _ in range(how_many):
    user_input = int(input("Input: "))
    lst.append(user_input)
    # samma innehåll (understreck används för att kommunicera att man avsiktligt inte använder iteratorns värde)
Svara
Close