Powtorzenie i utrwalenie podstaw programowania w Pythonie
ð Podstawa programowa: II.1Na poczatku klasy II powtarzamy najwazniejsze elementy programowania w Pythonie, ktore poznalismy w pierwszym roku nauki. Zmienna to nazwane miejsce w pamieci, w ktorym przechowujemy dane. Python automatycznie rozpoznaje typ danych:
wiek = 17pi = 3.14imie = "Jan"True lub Falsetype(zmienna).
Instrukcja warunkowa if-elif-else pozwala programowi podejmowac decyzje:
ocena = int(input("Podaj ocene: "))
if ocena == 6:
print("Celujaco!")
elif ocena >= 4:
print("Dobrze lub bardzo dobrze")
elif ocena >= 2:
print("Wystarczajaco")
else:
print("Niestety niedostatecznie")
Petle pozwalaja na wielokrotne wykonywanie bloku instrukcji:
# Petla for - znana liczba powtorzen
for i in range(1, 11):
print(f"{i} x 7 = {i * 7}")
# Petla while - powtarzanie dopoki warunek jest spelniony
liczba = 1
while liczba <= 100:
print(liczba)
liczba *= 2
Funkcja to wydzielony fragment kodu, ktory mozna wielokrotnie wywolywac. Funkcje przyjmuja argumenty i moga zwracac wartosci:
def pole_prostokata(a, b):
"""Oblicza pole prostokata o bokach a i b."""
return a * b
def czy_parzysta(n):
"""Sprawdza, czy liczba jest parzysta."""
return n % 2 == 0
# Wywolania funkcji
wynik = pole_prostokata(5, 3)
print(f"Pole: {wynik}") # Pole: 15
print(czy_parzysta(7)) # False
Napisz program, ktory pobiera od uzytkownika wage (kg) i wzrost (m), oblicza BMI wedlug wzoru BMI = waga / wzrost**2 i wyswietla odpowiedni komunikat (niedowaga, norma, nadwaga, otylosc). Uzyj instrukcji warunkowych.
waga = float(input("Podaj wage w kg: "))
wzrost = float(input("Podaj wzrost w m: "))
bmi = waga / wzrost**2
print(f"Twoje BMI: {bmi:.1f}")
if bmi < 18.5:
print("Niedowaga")
elif bmi < 25:
print("Waga prawidlowa")
elif bmi < 30:
print("Nadwaga")
else:
print("Otylosc")
Napisz funkcje tabliczka(n), ktora wyswietla tabliczke mnozenia od 1 do n. Kazdy wiersz to kolejna liczba pomnozoona przez liczby od 1 do n. Sformatuj wynik tak, by kolumny byly rowne.
def tabliczka(n):
for i in range(1, n + 1):
for j in range(1, n + 1):
print(f"{i*j:4d}", end="")
print()
tabliczka(10)
Napisz funkcje czy_pierwsza(n), ktora zwraca True jesli n jest liczba pierwsza, oraz False w przeciwnym razie. Nastepnie uzyj jej do wypisania wszystkich liczb pierwszych z zakresu 2-100.
def czy_pierwsza(n):
if n < 2:
return False
for i in range(2, int(n**0.5) + 1):
if n % i == 0:
return False
return True
for liczba in range(2, 101):
if czy_pierwsza(liczba):
print(liczba, end=" ")
Napisz gre, w ktorej komputer losuje liczbe z zakresu 1-100, a uzytkownik probuje ja zgadnac. Po kazdej probie program podpowiada "za duzo" lub "za malo". Na koniec wyswietl liczbe prob. Uzyj petli while i modulu random.
import random
def zgadnij():
sekret = random.randint(1, 100)
proby = 0
print("Zgadnij liczbe od 1 do 100!")
while True:
strzal = int(input("Twoj strzal: "))
proby += 1
if strzal == sekret:
print(f"Brawo! Zgadles w {proby} probach!")
break
elif strzal < sekret:
print("Za malo!")
else:
print("Za duzo!")
zgadnij()