Przykładowe zadania i rozwiązania, poradniki w języku Python 3.7.3!
Nie jesteś zalogowany na forum.
Strony: 1
#Zad. 2 Wygeneruj losowo macierz 4x4 i wykorzystując Python Comprehension zdefiniuj listę, która będzie zawierała tylko elementy znajdujące się na przekątnej.
import random
tab = [[random.randint(0,100) for col in range(4)] for row in range(4)]
print(tab)
x = tab[0][0]
z = [x, tab[1][1], tab[2][2], tab[3][3]]
print(z)
#Zad. 3 Utwórz słownik z produktami spożywczymi do kupienia. Klucz to niech będzie nazwa produktu a wartość - jednostka w jakiej się je kupuje (np. sztuki, kg itd.). Wykorzystaj Python Comprehension do zdefiniowania nowej listy, gdzie będą produkty, których wartość to sztuki.
produkty = {"mleko": "litry",
"jajka": "sztuki",
"czekolada": "sztuki",
"cukierki": "kilogramy"
}
sztuki = {klucz: wartosc for klucz, wartosc in produkty.items() if wartosc == "sztuki"}
print(sztuki)
#Zad. 5 Napisz funkcję, która będzie sprawdzać czy dwie proste są równoległe czy prostopadłe: Proste dane równaniami y=a1x+b1, y=a2x+b2, są równolegle gdy a1=a2 prostopadłe gdy a1a2=-1
def rowczyprost(a1=0, b1=0, a2=0,b2=0):
if a1 == a2:
print("proste sa rownolegle")
elif a1*a2 == -1:
print("proste sa prostopadle")
print(rowczyprost(-1,2,1,2))
#Zad. 6 Zdefiniuj funkcję, która na podstawie równania okręgu w postaci kanonicznej zwróci długość promienia. Funkcja ma przyjmować argumenty domyślne: Równanie okręgu dane jest wzorem: (x-a)2+(y-b)2=r2 gdzie (a,b) to środek okręgu a r to promień okręgu.
def zad_6(a=2, b=4, x=6, y=8):
import math
return math.sqrt((x-a)**2 + (y-b)**2)
print(zad_6())
#Zad. 7 Zdefiniuj funkcję, która oblicza długość przeciwprostokątnej, wykorzystując twierdzenie pitagorasa. Proszę podać wartości domyślne dla funkcji
def przeciwprostokatna(a=0,b=0):
import math
return math.sqrt(a**2 + b**2)
print(przeciwprostokatna(4,3))
#Zad. 8 Zdefiniuj funkcję, która zwraca sumę dowolnego ciągu arytmetycznego. Funkcja niech przyjmuje jako parametry: a1 (wartość początkowa), r (wielkość o ile rosną kolejne elementy) i ile_elementów (ile elementów ma sumować). Ponadto funkcja niech przyjmuje wartości domyślne: a1= 1, r=1, ile=10.
def suma_ciagu(a1=1,r=1,ile=10):
an = a1 +(ile -1)*r
suma = ((a1 + an)/2)*ile
print(suma)
def zad_8(a=1, r=1, ile=10):
ciag = [x for x in range(a, r*ile+1, r)]
return ciag
print(suma_ciagu())
print(zad_8())
#symbol * oznacza dowolną ilość argumentów przechowywanych w krotce
def ciag(* liczby):
#jeżeli nie ma argumentów to
if len(liczby) == 0:
return 0.0
else:
suma = 0.0
#sumujemy elementy ciągu
for i in liczby:
suma += i
#zwracamy wartość sumy
return suma
#wywołanie gdy brak argumentów
print(ciag())
#podajemy argumenty
print(ciag(1,2,3,4,5,6,7,8))
print(ciag(1,100))
#Zad. 9 Wykorzystując poprzedni przykład zdefiniuj funkcję, która będzie liczyć iloczyn elementów ciągu.
def iloczyn_ciagu(* liczbusie):
#jeżeli nie ma argumentów to
if len(liczbusie) == 0:
return 0.0
else:
iloczyn = 1
#sumujemy elementy ciągu
for i in liczbusie:
iloczyn *= i
#zwracamy wartość sumy
return iloczyn
#podajemy argumenty
print(iloczyn_ciagu(1,2,3,4,5,6,7,8))
print(iloczyn_ciagu(2,100))
# ** czyli dwie gwiazdki oznaczają że możemy użyć
# dowolną ilość argumentów z kluczem
def to_lubie(** rzeczy):
for cos in rzeczy:
print("To jest ")
print(cos)
print(" co lubie ")
print(rzeczy[cos])
print(to_lubie(slodycze="czekolada", rozrywka=["disco-polo", "moda na sukces"]))
#Zad. 10 Napisz funkcję, która wykorzystuje symbol **. Funkcja ma przyjmować listę zakupów w postaci: klucz to nazwa produktu a wartość to ilość. Funkcja ma zliczyć ile jest wszystkich produktów w ogóle i zwracać tę wartość.
def zakupy(** lista):
return sum(lista.values())
print(zakupy(marchewka = 11, cebula = 20))
Edit by SpeX
Offline
Strony: 1