• Nie Znaleziono Wyników

Programowanie obiektowe w języku Python

N/A
N/A
Protected

Academic year: 2022

Share "Programowanie obiektowe w języku Python"

Copied!
8
0
0

Pełen tekst

(1)

Programowanie obiektowe w języku Python

Materiały do zajęć laboratoryjnych

Laboratorium 03

mgr Sara Jurczyk

Katolicki Uniwersytet Lubelski Jana Pawła II w Lublinie

(2)

Pętla for

W programowaniu pętle wykorzystywane są do tego, by określony fragment kodu mógł być wykonywany wielokrotnie. Język Python pozwala na wykorzystanie 2 typów pętli – pętli for oraz pętli while. Poniżej przedstawiono przykład pętli for:

for i in range(1, 11):

print("Liczba: ", i)

W tym przykładzie definiowana jest zmienna i, która będzie automatycznie inkrementowana w zakresie od 1 do 10. Funkcja range przyjmując jako argumenty (1,n), zwraca liczby z zakresu od 1 do n-1.

W przypadku podania tylko jednej liczby jako parametr funkcji range, i będzie otrzymywało wartość od 0 do n-1.

for i in range(3):

print("Liczba: ", i)

(3)

Domyślnie wartość i zwiększa się o 1.

Python pozwala na wymuszenie, by wartość ta zmieniała się o inną liczbę, np. o 3:

for i in range(0, 15, 3):

print("Liczba: ", i)

W języku Python mamy także możliwość wykonania instrukcji w przypadku, gdy działanie pętli for zostanie zakończone, np.:

for x in range(6):

print(x,end=' ') else:

print("Koniec wyświetlania")

Istnieje możliwość iterowania po ciągu znakowym (np. gdy chcemy pobrać kolejne litery z podanego słowa)

slowo = "test"

for x in slowo:

print("Litera: ",x)

(4)

Do przerwania wykonywania pętli wykorzystywane jest słowo kluczowe break. Użycie słowa kluczowego continue pozwala na przerwanie aktualnej iteracji i przejście do kolejnej.

Zadania:

1. Napisz program, który wyświetli kolejne liczby całkowite od 5 do 10.

2. Napisz program, który wyświetli kolejno wszystkie liczby parzyste z przedziału [2,20].

3. Napisz program, który wyświetli kolejne liczby całkowite od 0 do n, dla n podanego przez użytkownika.

4. Napisz program, który wyświetli sumę liczb z przedziału od 1 do n, dla n podanego przez użytkownika.

5. Napisz program, który wyświetli na ekranie drugie potęgi liczb od 1 do n, dla n podanego przez użytkownika, np. dla podanej przez użytkownika liczby 6 należy wyświetlić:

6. Napisz program, który wyświetla na ekranie liczby według poniższego schematu (ilość liczb wczytujemy z klawiatury), np. dla podanej przez użytkownika liczby 5, należy wyświetlić:

7. Zadeklaruj zmienną zainicjowaną Twoim imieniem i nazwiskiem. Użyj pętli for, aby wyświetlić w osobnych liniach kolejne litery tego ciągu znaków, pomijając literę a. Po zakończeniu działania pętli wyświetl komunikat „Wyświetlono imię i nazwisko z pominięciem litery a”.

8. Zadeklaruj zmienną zainicjowaną nazwą naszego przedmiotu. Użyj pętli for, aby wyświetlić kolejne litery tego ciągu znaków, do momentu wystąpienia pierwszej litery g.

(5)

Pętla while

Pętla while charakteryzuje się tym, iż zawarty w jej strukturze kod może nigdy się nie wykonać. Wykonanie kodu, znajdującego się we wnętrzu pętli while warunkowane jest wartością warunku logicznego. W przypadku gdy podczas pierwszego sprawdzania warunku logicznego okaże się, że posiada on wartość fałsz, kod zawarty w pętli nie zostanie wykonany. Poniżej przedstawiono przykład pętli while w języku Python:

i = 10

while i > 4:

print("Liczba: ", i) i -= 1

Należy pamiętać, by modyfikować zmienną, znajdującą się w warunku logicznym. W przeciwnym przypadku grozi utworzenie pętli nieskończonej.

Pętla while pozwala na przerwanie w określonym przypadku:

i = 10

while i > 4:

if i == 6:

break

print("Liczba: ", i) i -= 1

Do przerwania wykonywania pętli wykorzystywane jest słowo kluczowe break.

(6)

Użycie słowa kluczowego continue pozwala na przerwanie aktualnej iteracji i przejście do kolejnej, np.:

i = 0

while i < 4:

i += 1 if i == 2:

continue

print("Liczba: ", i)

W języku Python mamy także możliwość wykonania instrukcji w przypadku, gdy warunek pętli while będzie posiadał wartość fałsz:

i = 10

while i > 4:

print("Liczba: ", i) i -= 1

else:

print("Pętla zakończona")

Uwaga! Instrukcje z bloku else wykonane zostaną tylko raz – gdy warunek logiczny przyjmie wartość fałsz.

Zadania:

1. Rozbuduj zadanie 3 z pętli for w taki sposób, aby program pobierał od użytkownika jedynie dodatnią liczbę całkowitą.

2. Napisz program, który wyświetli kolejne liczby całkowite od 1 do 15, pomijając liczbę 10.

3. Napisz program, który wyświetli kolejne liczby całkowite z przedziału podanego przez użytkownika. Skonstruuj rozwiązanie w taki sposób, aby uniemożliwić użytkownikowi podanie niepoprawnego przedziału.

4. Napisz program, który na podstawie wczytanego numeru miesiąca, wyświetla jego nazwę słownie. Program powinien ponawiać wczytywanie, dopóki podany przez użytkownika numer nie będzie poprawnym numerem miesiąca.

5. Napisz program, który wczytuje liczby rzeczywiste aż do momentu, gdy podana liczba jest równa zero, a następnie wyświetla na ekranie sumę i średnią arytmetyczną tych liczb.

6. Napisz program, który pozwoli użytkownikowi w maksymalnie dziesięciu próbach na odgadnięcie zadeklarowanej przez Ciebie liczby. Pamiętaj o wyświetleniu odpowiednich komunikatów.

7. Napisz program, który wyświetli w jednej linii, oddzielone spacją, kolejne liczby całkowite od 1 do 20, pomijając liczby podzielne przez 3.

(7)

Pętle zagnieżdżone

W ciele jednej pętli można zawrzeć kolejną pętle. W efekcie, dla każdego obrotu pętli zewnętrznej, wykona się pełen zestaw instrukcji (oraz wszystkie obroty) pętli wewnętrznej.

for i in range (1,3):

for j in range(1,3):

print("I = ", i, " J = ", j)

Zadania:

1. Napisz program, który wyświetla kwadrat 5 x 5 ze znaków #, jak poniżej:

Wskazówka: funkcja print domyślnie kończy się znakiem nowej linii. W przypadku chęci wyświetlenia kilku elementów w jednej linii, należy zmodyfikować wywołanie funkcji print, dodając parametr end, np: print(result, end = '')

2. Napisz program, który wyświetla tabliczkę mnożenia rozmiaru 10 x 10.

3. Napisz program, który wyświetli poniższy trójkąt z gwiazdek (wysokość 10):

(8)

4. Napisz program, który wyświetli poniższy trójkąt z gwiazdek (wysokość 10):

5. Zmodyfikuj powyższe zadania 1 – 4 tak, by wyświetlany znak zależał od użytkownika.

6. Zmodyfikuj powyższe zadania 1 – 4 w taki sposób, aby rozmiar wyświetlanych figur oraz tabliczki mnożenia zależał od użytkownika.

7. Liczba armstronga (narcystyczna) to liczba, która jest sumą n-tych potęg swoich cyfr, gdzie n oznacza ilość cyfr w danej liczbie. Np.:

27 125

1 3 5 1

153 =

3

+

3

+

3

= + +

Napisz program, która dla dowolnej, wczytanej z klawiatury liczby sprawdzi, czy jest ona liczbą armstronga.

Cytaty

Powiązane dokumenty

n operator konwersji tworzy obiekt określonego typu lub klasy z obiektu na rzecz którego

n Dla obiektu, którego klasy nie można jednoznacznie określić na etapie kompilacji, odwołania do metody, bądź metod zadeklarowanych jako wirtualne będą się odbywały

Na końcu tej funkcji umieszczamy wiersze: system(&#34;pause&#34;); - polecenie to zatrzymuje wykonanie programu do momentu naciśnięcia jakiegoś klawisza (pozwala to zobaczyć

(4 pkt) W klasie Stos zdeniuj metody dost¦pu, wstawiania oraz usuwania elementu stosu  pa- mi¦taj, »e do stosu dost¦p jest tylko z jednej strony.. (4 pkt) W klasie Stos

DODATKOWE - na dodatkowe punkty lub wy»sz¡ ocen¦ (zadania 1-3 musz¡ by¢ wykonane!) Do realizacji podobnego jak wy»ej zadania i budowy klas wyj¡tków wykorzystaj bibliotek¦

Napisz program, który prosi użytkownika o współrzędnych dwóch wektorów dwuelementowych, a następnie oblicza iloczyn skalarny tych wektorów.. Przed napisaniem programu odpowiedz

Czasami występuje potrzeba opisu klas, które łączą w sobie cechy kilku klas nadrzędnych (np. latająca łódź). Wielodziedziczenie może powodować straszne problemy (Deadly Diamond

Napisz klasę o nazwie Prostokat zawierającą dwie składowe typu Punkt - współrzędne lewego górnego oraz prawego dolnego wierzchołka prostokąta (rozpatrujemy prostokąty o