Lekcja 3 - Instrukcje warunkowe KP
Konstrukcja instrukcji warunkowej - używamy do podejmowania decyzji:
If warunek:
Polecenie jeśli prawda
elif warunek2 :
Polecenie jeśli prawda
else:
Polecenie co ma się stać jeśli żadne z powyższych nie są prawdą
Ważne: wcięcia w poleceniu instrukcji if. Jeżeli nie użyjemy polecenie wypadnie z instrukcji warunkowej
Program leci po if, elif aż natrafi na prawdę, w tym momencie wykonuje warunek i przerywa działanie. Idzie do dalszej części kodu
Prawie prawda:
If rybka
print ("masz rybke")
Wynikiem powyższego programu będzie napis "masz rybke"
Python sprawdza czy zmienna jest pusta. W związku z tym, że nie jest pusta to wychodzi prawda i działanie zostało wykonane
Jeśli nie porównujemy nic w instrukcji if to pytamy czy zmienna jest pusta
Przykładowe programy:
- Sprawdzenie czy liczba parzysta
liczba = int(input("Wprowadz liczbe calkowita: "))
m = liczba%2
if m != 0:
print("Liczba jest nieparzysta")
else:
print("Liczba jest parzysta")
print(f"reszta z dzielenia cyfry {liczba} przez 2 wynosi {m}")
- Sprawdzenie poprawności hasła - małe i duże litery, 12 znaków
# dlugosc min 12 znakow len()
# duze i male litery zmienna.lower() zmienna.upper()
haslo = input("Wprowadz swoje haslo: ")
haslo_wielkie = haslo.upper()
haslo_male = haslo.lower()
if len(haslo) >= 12:
if haslo_wielkie == haslo or haslo_male == haslo:
print("Twoje haslo jest za slabe. Ma prawidlowa dlugosc, ale nie ma malych i duzych liter")
else:
print ("Twoje haslo jest prawidlowe")
else:
if haslo_wielkie == haslo or haslo_male == haslo:
print("Twoje haslo jest za slabe. Powinno miec 12 znakow oraz male i duze litery")
else:
print("Twoje jest za krotkie. Wydluz je pozoostawiajc male i duze litery")
- Quiz
#pytania ankiety
print("\nAnkieta ma 5 pytań jednokrotnego wyboru. Prosze podawac odpowiedz na pytanie litera podpunktu. Po ukonczonym tescie zostanie wyswietlona ilosc punktow")
print("\n1.Która z poniższych metod zabezpieczenia 2FA uznawana jest za najbezpieczniejszą?\na. SMS\nb. kod z aplikacji (TOTP)\nc. klucz sprzętowy")
z1 = input("Odpowiedz: ")
print("2. Który z poniższych języków programowania uznany został za najpopularniejszych wg . rankingu Tiobe 2023?\fna. Cobol\nb. Python\nc. Pascal")
z2 = input("Odpowiedz: ")
print("3. Skrót Iot oznacza:\na. Internet of Things (Internet Rzeczy)\nb. Instrument of Technology\nc. Informacje o Technologii")
z3 = input("Odpowiedz: ")
print("4. Czy kod w Pythonie wymaga ręcznej kompilacji dla każdego z systemów operacyjnych?\na. Tak\nb. Nie")
z4 = input("Odpowiedz: ")
print("5. VsCode to:\na. edytor tekstu / kodu\nb. przeglądarka internetowa\nc. program do grafiki wektorowej")
z5 = input("Odpowiedz: ")
#sprawdzenie poprawnosci odpowiedzi
if z1.lower() == "c":
p1 = 1
else:
p1 = 0
if z2.lower() == "b":
p2 = 1
else:
p2 = 0
if z3.lower() == "a":
p3 = 1
else:
p3 = 0
if z4.lower() == "b":
p4 = 1
else:
p4 = 0
if z5.lower() == "a":
p5 = 1
else:
p5 = 0
#zlicznie punktow
p = p1 + p2 + p3 + p4 + p5
print(f"\nTowje punkty: {p}")
#wykazanie pytan z nie prawidlowa odpowiedzia
print("Nie prawidlowo odpowiedziales na pytania:")
if z1.lower() != "c":
print("1")
if z2.lower() != "b":
print("2")
if z3.lower() != "a":
print("3")
if z4.lower() != "b":
print("4")
if z5.lower() != "a":
print("5")