ÖVNINGSUPPGIFT

Uppgift 2 - Jämna tal

Försök själv först. Ledtrådar och facit finns längre ner – helt utan inloggning.


Nyckelord: while-loop, for-loop

While-loopen: Skriv ut alla jämna tal i ett intervall

Börja med att ta in ett heltal från användaren. Skriv sedan ut alla jämna tal större än noll och mindre eller lika med det givna talet. Använd while-loopen för att lösa uppgiften.

For-loopen: Skriv ut alla jämna tal i ett intervall

Gör motsvarande uppgift igen, fast använd denna gång for-loopen.

Ledtråd

Använd funktionen input() för att ta in ett värde från användaren. Observera att du behöver konvertera inputen till ett heltal. Du kan använda dig av modulus av 2 för att avgöra om ett tal är ett jämnt eller udda tal.

Svar

Nedan visas ett exempel på hur man kan lösa uppgiften med både while-loopen och for-loopen:

number = int(input("Ange ett heltal: "))

# While-loop: börja på 2 så att noll inte tas med.
i = 2
while i <= number:
    print(i)
    i += 2

print("=" * 20)

# Samma positiva jämna tal med en for-loop.
for i in range(2, number + 1, 2):
    print(i)

I exemplet ovan skriver vi ut alla jämna tal inom ett intervall på två sätt.

I första fallet använder vi while-loopen. I detta fall behöver själva uppdatera räknaren (i = i + 1) efter varje iteration av loopen.

I andra fallet använder vi for-loopen. Då uppdateras räknaren (i) automatiskt.

Här ökar vi med två från startvärdet 2, så att bara positiva jämna tal skrivs ut. Du kan också testa varje positivt heltal med i % 2 == 0.