|
Serwis Edukacyjny w I-LO w Tarnowie
Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy Wałaszek |
©2026 mgr Jerzy Wałaszek
|
SPIS TREŚCI |
Instrukcja pętli while posiada następującą składnię:
while warunek: instrukcja
while warunek:
...
blok instrukcji
...
Działanie jest następujące:
Uwaga: Jeśli warunek jest fałszywy przy wejściu do pętli, to pętla nie wykona ani jednego obiegu. Jeśli warunek jest zawsze prawdziwy, to pętla wykonuje obiegi w nieskończoność (pętla nieskończona). Wynika stąd wniosek, iż instrukcje wykonywane w trakcie obiegu muszą wpływać na warunek kontynuacji.
Oto kilka przykładów:
Python# Pętla while
# Liczby parzyste od 2 do 100
#----------------------------
i = 2
while i <= 100:
print(i,end=" ")
i += 2
print()
|
Python# Pętla while
# Suma liczb naturalnych
# od 1 do 100
#------------------------
s = 0
i = 1
while i <= 100:
s += i
i += 1
print("suma wynosi",s)
|
Python# Pętla while
# Silnia
#------------
n = int(input("n = "))
print()
i = 1
s = 1
while i <= n:
s *= i
print(i,"! = ",s,sep="")
i += 1
|
Instrukcja break przerywa wykonywanie pętli:
Python# Pętla while
# break
#------------
n = int(input("n = "))
print()
i = 1
while i <= n:
print("i =",i)
if i == 25:
print("PRZERWA!!!")
break
i += 1
print("KONIEC")
|
Instrukcja continue przerywa bieżący obieg i rozpoczyna następny:
Python# Pętla while
# continue
#------------
n = int(input("n = "))
print()
i = 0
while i < n:
i += 1
if i == 25:
print("Pominięcie!!!")
continue
print("i =",i)
print("KONIEC")
|
Pętla while może posiadać człon else:
while warunek: instrukcja1
else: instrukcja2
while warunek:
...
blok1
...
else:
...
blok2
...
Jeśli warunek jest prawdziwy, to pętla powtarza instrukcję1/blok1. Gdy warunek przestaje być prawdziwy, to pętla wykonuje instrukcję2/blok2 i kończy działanie:
Python# Pętla while
# else
#------------
n = int(input("n = "))
print()
i = 1
while i <= n:
print("Pętla działa, i =",i)
i += 1
else:
print("Pętla już nie działa")
print("KONIEC")
|
2. Napisać program, który odczyta granicę, a następnie wyznaczy pierwszą sumę kolejnych liczb naturalnych, która przekracza tę granicę. Na przykład:
3. Napisać program, który odczyta dwie liczby całkowite a i b wprowadzone w dowolnym porządku, a następnie obliczy ilość liczb parzystych zawartych pomiędzy nimi. Na przykład:
Jeśli do funkcji range przekażemy tylko jeden parametr, to ciąg zacznie być tworzony od 0 co jeden w górę, aż osiągnie wartość stop. Wtedy generacja ciągu zostaje przerwana, a stop nie wejdzie do ciągu liczb:
range(10) : 0 1 2 3 4 5 6 7 8 9 range(5) : 0 1 2 3 4
Jeśli do funkcji range przekażemy dwa parametry, to start określi pierwszą wartość ciągu, a stop określi wartość, przy której generacja się kończy:
range(2,10) : 2 3 4 5 6 7 8 9 range(3,6) : 3 4 5
Jeśli do funkcji range przekażemy trzy parametry, to start określi pierwszą liczbę w ciągu, stop określi wartość, po osiągnięciu lub przekroczeniu której generacja się kończy, a krok określi przyrost kolejno generowanych liczb:
range(2,10,2) : 2 4 6 8 range(1,10,2) : 1 3 5 7 9 range(5,21,5) : 5 10 15 20 range(10,0,-1) : 10 9 8 7 6 5 4 3 2 1
Funkcję range wykorzystujemy do tworzenia pętli for w sposób następujący:
for zmienna in range(...): instrukcja
for zmienna in range(...):
...
blok instrukcji
...
Instrukcja działa następująco:
Zmiennej w pętli zostają przypisywane kolejne wartości generowane przez funkcję range, po czym wykonywany jest obieg pętli. Pętla kończy się, gdy funkcja range wygeneruje liczbę wykraczającą poza zdefiniowany w niej zakres.
Oto kilka przykładów użycia:
Python# Przykład 1
n = int(input("n = "))
for i in range(n):
print(i,end=" ")
print()
|
Python# Przykład 2
n = int(input("n = "))
for i in range(1,n,2):
print(i,end=" ")
print()
|
Python# Przykład 3
n = int(input("n = "))
s = 0
for i in range(2,n,2):
print(i,end=" ")
s += i
print()
print("s =",s)
|
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2026 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email:
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.