Obliczenia.py).input("\nAby zakończyć, naciśnij Enter")
To zatrzyma okno do momentu wciśnięcia Enter.
Zmienna to nazwana część pamięci (komórka pamięci), w której komputer przechowuje wartość. Zmienna ma nazwę i aktualną wartość.
liczba = 23
liczba = liczba + 1
print(liczba)
liczba = liczba + 1 nie jest równaniem matematycznym. To polecenie: „weź obecną wartość zmiennej, dodaj 1 i zapisz wynik z powrotem do tej samej zmiennej”.
| Typ | Co przechowuje | Przykład |
|---|---|---|
int | liczby całkowite | rok = 2021 |
float | liczby rzeczywiste (z kropką) | wzrost = 159.5 |
str | tekst (ciąg znaków) | nazwisko = "Kowalski" |
34.5, a nie 34,5.
Funkcja print() wyświetla tekst i wyniki obliczeń w konsoli.
suma = 10 + 5
print("Suma wynosi:", suma)
\n\n oznacza przejście do nowego wiersza,\n\n oznacza dwa nowe wiersze (pusta linia między tekstami).| Operator | Działanie | Przykład | Co otrzymasz |
|---|---|---|---|
+ | dodawanie | 23 + 56 | 79 |
- | odejmowanie | 987 - 233 | 754 |
* | mnożenie | 432 * 6 | 2592 |
// | dzielenie całkowite (ucina część ułamkową) | 55 // 3 | 18 |
/ | dzielenie „z ułamkiem” | 55 / 3 | 18.3333... |
% | reszta z dzielenia | 37 % 4 | 1 |
Jeśli zmienne są tekstami (str), to + oznacza łączenie tekstów:
print("samo" + "chód") # wynik: samochód
input() wyświetla komunikat i czeka, aż użytkownik wpisze dane. Zwraca zawsze tekst (typ str).
miasto = input("Wprowadź nazwę miasta: ")
print(miasto)
liczba = int(input("Wprowadź liczbę: "))
srednia = float(input("Podaj średnią ocen: "))
liczba = input(...), to liczba jest tekstem. Wtedy liczba + liczba to sklejanie (np. "34" + "34" → "3434").liczba = int(input(...)), to liczba + liczba to dodawanie (34 + 34 → 68).
Instrukcja warunkowa pozwala programowi podjąć decyzję na podstawie warunku (prawda/fałsz).
if warunek:
lista_instrukcji1
else:
lista_instrukcji2
kolejna_instrukcja
if warunek:
lista_instrukcji1
kolejna_instrukcja
if (i po else) musi być wcięty. Najczęściej stosuje się 4 spacje. Brak wcięcia = błąd składni.
| Grupa | Operator | Znaczenie | Przykład |
|---|---|---|---|
| Porównania | == | równy | a == b |
!= | różny | a != b | |
< | mniejszy | a < b | |
> | większy | a > b | |
>= | większy lub równy | a >= b | |
<= | mniejszy lub równy | a <= b | |
| Logiczne | or | lub | a < -5 or a > 5 |
and | i | a > 0 and a < 10 | |
not | negacja (zaprzeczenie) | not a == 5 |
a = int(input("Podaj pierwszą liczbę: "))
b = int(input("Podaj drugą liczbę różną od pierwszej: "))
if a > b:
print("Większa jest pierwsza liczba", a)
else:
print("Większa jest druga liczba", b)
input("\n\nAby zakończyć, naciśnij Enter")
x = int(input("Podaj liczbę całkowitą: "))
if x > 0:
print("Liczba dodatnia")
else:
print("Liczba niedodatnia")
Iteracja to powtarzanie tej samej operacji. W Pythonie najczęściej używamy do tego pętli for.
for zmienna in lista_wartosci:
lista_instrukcji
lista_wartosci może być prawdziwą listą (np. [0,1,2,3,4]) albo sekwencją wygenerowaną przez range().
for i in [0, 1, 2, 3, 4]:
print(i)
range(koniec) → 0, 1, 2, ..., koniec-1range(poczatek, koniec) → początek, ..., koniec-1range(poczatek, koniec, krok) → jak wyżej, ale „co krok”for i in range(5):
print(i) # 0 1 2 3 4
for i in range(15, 55):
print(i) # 15 ... 54
for i in range(1, 20, 2):
print(i) # 1 3 5 ... 19
koniec nie wchodzi do sekwencji (zawsze kończymy na koniec-1).
for i in range(5):
x = int(input("Podaj długość pierwszego boku: "))
y = int(input("Podaj długość drugiego boku: "))
pole = x * y
print("Pole działki o boku", x, "i boku", y, "wynosi:", pole)
input("\n\nAby zakończyć, naciśnij Enter")
Funkcja (podprogram) to wydzielony fragment kodu o jednoznacznej nazwie. Dzięki funkcjom łatwiej utrzymać porządek i wielokrotnie używać tego samego rozwiązania.
def nazwa_funkcji(lista_parametrow):
lista_instrukcji
return wartosc
def szescian(a):
return a * a * a
bok = int(input("Podaj długość boku sześcianu: "))
print("Objętość sześcianu o boku długości", bok, "wynosi:", szescian(bok))
input("\n\nNaciśnij Enter, aby zakończyć")
def pokaz_znaki(znaki):
for i in range(1, 11):
print(znaki * i)
emotikon = input("Wprowadź znaki emotikona: ")
pokaz_znaki(emotikon)
input("\n\nNaciśnij Enter, aby zakończyć")
Gdy potrzebujemy zapamiętać wiele elementów (np. 5 liczb), zamiast wymyślać zmienne a0, a1, a2..., używamy listy.
nazwa_listy = [element1, element2, ..., elementn]
a = [10, 20, 30, 40, 50]
print(a[0]) # 10
print(a[4]) # 50
| Sposób | Przykład | Co oznacza |
|---|---|---|
| Wpisanie wartości od razu | L_DNI_W_MIESIACU = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] |
Lista 12 elementów (indeksy 0–11) |
| Ta sama wartość wiele razy | moja_lista = [0] * 10 |
Lista 10 zer |
| Rozmiar w zmiennej | N = 100\nlista = [0] * N |
Lista 100 elementów |
Utworzyć listę a złożoną z 5 liczb całkowitych, wczytać je z klawiatury funkcją wprowadz_dane(), a potem wypisać funkcją wyprowadz_dane().
N = 5
a = [0] * N
def wprowadz_dane():
for i in range(N):
a[i] = int(input("Podaj liczbę: "))
def wyprowadz_dane():
for i in range(N):
print(a[i])
wprowadz_dane()
wyprowadz_dane()
input("\n\nNaciśnij Enter, aby zakończyć")
a z pięcioma miejscami.for w wprowadz_dane() wypełnia kolejne indeksy a[0] … a[4].for w wyprowadz_dane() wypisuje każdy element w osobnym wierszu.=?int() lub float() razem z input()?/ od //?if i dlaczego wcięcia są obowiązkowe?for?range() (1, 2 i 3 argumenty)?