示例#1
0
def test_scadere():
    numar1 = Operatii([3, 1, 4, 7], 8)
    numar2 = Operatii([2, 0, 2], 8)
    assert numar2.scadere(numar1) == [2, 7, 4, 5]

    numar1 = Operatii([1, 0, 2], 8)
    assert (numar1.scadere(numar2)) == [1, 0, 0]

    numar1 = Operatii([1, 0, 0, 1, 1, 0], 2)
    numar2 = Operatii([1, 0, 0, 1], 2)

    assert Operatii.scadere(numar2, numar1) == [1, 1, 1, 0, 1]
示例#2
0
    def scadere():
        """
            Scaderea a noua numere in baze identice sau diferite, si afisarea rezultatului intr-o a treia baza.
            Se face verificarea ca descazutul sa fie mai mare decat scazatorul, altfel utilizatorul este atentionat cu un mesaj.
        """
        print("\nDescazutul: ".upper())
        numar1 = Console.citesteInstanta()
        numar1 = Operatii(numar1[0], numar1[1])

        while True:
            try:

                print("\nScazatorul: ".upper())
                numar2 = Console.citesteInstanta()
                numar2 = Operatii(numar2[0], numar2[1])
                print("\nBaza destinatie: ".upper())
                baza = Console.citesteBaza(
                    "Cisteste o baza in care vrei sa se afle rezultatul: ")

                nr1 = Console.fromList_toString(numar1.getNumar())
                nr2 = Console.fromList_toString(numar2.getNumar())
                baza1 = numar1.getBaza()
                baza2 = numar2.getBaza()

                numar1 = Console.converteste(numar1, baza)
                numar2 = Console.converteste(numar2, baza)
                Validator.compare(numar1.getNumar(), numar2.getNumar())
                break
            except ValueError as msg:
                print(msg)

        #return "Rezultatul scaderii este: {}".format(Console.fromList_toString(Operatii.scadere(numar2, numar1)))
        return "\nREZULTAT: {}({}) - {}({}) = {}({})".format(
            nr1, baza1, nr2, baza2,
            Console.fromList_toString(Operatii.scadere(numar2, numar1)), baza)