Python 3.7.3

Przykładowe zadania i rozwiązania, poradniki w języku Python 3.7.3!

Nie jesteś zalogowany na forum.

#1 2019-06-12 22:28:04

TomaszO
Administrator
Dołączył: 2019-06-12
Liczba postów: 19
Windows 7Opera 60.0.3255.151

Ćwiczenia nr 3 - Zadania od 2 do 10

#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

Użytkowników czytających ten temat: 0, gości: 1
[Bot] ClaudeBot