Welcome on my blog

We use cookies to ensure you get the best experience on our website.

Kalkulator – Dodawanie i Odejmowanie Pisemne – Python

Autor: chmajster 12.09.2022
def konwersja(sliczba, dlugosc):
    liczba = [0 for i in range(dlugosc)]
    dl_sliczba = len(sliczba)
    for i in range(dl_sliczba):
        liczba[i] = int(sliczba[dl_sliczba - i - 1])
        #liczba[dlugosc - i - 1] = int(sliczba[dl_sliczba - i - 1])
    return liczba


def dodaj(d1, d2):
    dl = max(len(d1), len(d2))
    A = konwersja(d1, dl)
    B = konwersja(d2, dl)
    W = [0 for i in range(dl + 1)]
    for i in range(dl):
        temp = W[i] + A[i] + B[i]
        W[i] = temp % 10
        W[i - 1] = temp // 10
    if W[-1] == 0:
        del W[0]

    return W

def dodaj1(d1, d2):
    dl = max(len(d1), len(d2))
    A = konwersja(d1, dl)
    B = konwersja(d2, dl)
    W = [0 for i in range(dl + 1)]

    for i in range(-1, -1 - dl, -1):
        tmp = W[i] + A[i] + B[i]
        W[i] = tmp % 10
        W[i - 1] = tmp // 10

    if W[0] == 0:
        del W[0]
    W = W[::-1]
    return W

def odejmnij(d1, d2):
    dl = max(len(d1), len(d2))
    A = konwersja(d1, dl)
    B = konwersja(d2, dl)
    Wynik = [0 for i in range(dl + 1)]
    for i in range(dl):
        temp =Wynik[i] + A[i] - B[i] + 10
        Wynik[i] = temp % 10
        Wynik[i - 1] = temp // 10 - 1
    if Wynik[0] == 0:
        del Wynik[0]
    return Wynik




def odejmnij1(d1, d2):
    dl = max(len(d1), len(d2))
    A = konwersja(d1, dl)
    B = konwersja(d2, dl)
    Wynik = [0 for i in range(dl + 1)]
    for i in range(-1, -1 - dl, -1):
        temp = Wynik[i] + A[i] - B[i] + 10
        Wynik[i] = temp % 10
        Wynik[i - 1] = temp // 10 - 1
    while len(Wynik) > 1 and Wynik[0] == 0:
        del Wynik[0]

    return Wynik

data1 = "10"
data2 = "80"
print("Wynik")

print(dodaj(data1,data2))
print(dodaj1(data1,data2))
print(odejmnij(data2,data1))
print(odejmnij1(data2,data1))
Tagi: Python
Dodaj komentarz

Search
Categories
O Blogu

Cześć Podróżniku!

Ta strona ma nie być typowym poradnikiem w IT, Głównym jej cel to zapisanie krótkich notatek, które mogą się przydać w codziennym życiu podczas korzystania/konfiguracji różnych urządzeń np. Ustawienia DHCP na Routerze Cisco, Ustawieniu Karty sieciowej na Linuxie itp.

Buy me A coffee
[Empty]

Wszelkie prawa zastrzeżone