Kryptografia z elementami algebry

2021/2022 , Semestr zimowy

Ważne pliki:

Specyfikacja

(1) Pliki proszę wysyłać na mój adres mailowy (jgarnek(malpa)amu.edu.pl), z tytułem: Projekt nr x, Imię, nazwisko, nr grupy, np. Projekt nr 1, Jan Kowalski, 14

(2) pliki powinny być nazwane wg szablonu: imie_nazwisko_nrgrupy_nrpliku.format, np. jan_kowalski_11_1.py. Numery grup: grupa 14 (standardowy termin zajęć: czwartek 15:30), 15 (standardowy termin zajęć: środa 15:30), 16 (standardowy termin zajęć: środa 17:15)

(3) kod powinien zawierać sprawdzenie dla podanych niżej danych (także jeżeli wynik wychodzi błędny 🙂 ). Przykład:

zadanie. Znajdź program, który oblicza sumę dwóch liczb.

Przykładowe dane: Wejście: 2, 4 Wyjście: 6

Kod:

def suma(a, b):
    return a+b

print(suma(2, 4))

(4) jeżeli któryś z parametrów jest losowany, program powinien zawierać go jako argument. Jeżeli argument jest równy zero, jest on losowany. W przeciwnym wypadku jest on równy danej liczbie. Przykład:

zadanie. Znajdź program, który podaje losową potęgę dwójki mniejszą od 1024.

Przykładowe dane:

Wejście: 2

Wyjście: 8 #wylosowany wykładnik to 3

def losowa_potega(a = 0):
    import random
if a = 0:
    return 2**(random.choice(range(10)))
else:
    return 2**a

print(losowa_potega(3))

Zajęcia przeniesione ze stycznia:
czwartki, godzina: 13:45-15:15

grupa 14 (1CD, standardowy termin zajęć: czwartek 15:30): 14 października, 4 listopada, 2 grudnia
grupa 15 (1CE, standardowy termin zajęć: środa 15:30): 21 października, 18 listopada
grupa 16 (1CF, standardowy termin zajęć: środa 17:15): 28 października, 25 listopada

Ćwiczenia:

Based on Resume Hugo theme