Python :: Aufgabe #60 :: Lösung #4

4 Lösungen Lösungen öffentlich
#60

Größter gemeinsamer Teiler

Anfänger - Python von hobeditz - 21.09.2014 um 11:51 Uhr
Entwickeln Sie ein Programm, welches den größten gemeinsamen Teiler zweier Zahlen ermittelt. Die Zahlen sollen vom Nutzer selber bestimmt werden.

Zitat:

Tipp:
Der euklidische Algorithmus könnte helfen.

#4
vote_ok
von Y0uLyric (500 Punkte) - 09.12.2016 um 12:22 Uhr
Quellcode ausblenden Python-Code
def eingabe():

        global x
        global y
        x = int(input("Erste Zahl: "))
        y = int(input("Zweite Zahl: "))

        if x > y:
                x, y = y, x

def teiler_berechnen(x, y):

        global x_teiler
        global y_teiler
        x_teiler = []
        y_teiler = []

        for m in range(2, x+1):
                if x % m == 0:
                        x_teiler.append(m)
        for n in range(2, x+1):
                if y % n == 0:
                        y_teiler.append(n)

def ggt_finden(x_teiler, y_teiler):

        global ggt
        global gemeinsame_teiler
        set1 = set(x_teiler)
        set2 = set(y_teiler)
        set3 = set1.intersection(set2)
        gemeinsame_teiler = list(set3)

        if gemeinsame_teiler != []:
                gemeinsame_teiler.sort()
                ggt = gemeinsame_teiler[-1]
        else:
                ggt = 0

def ausgabe(ggt, gemeinsame_teiler):

        if gemeinsame_teiler == []:
                print("Die zwei Zahlen haben keinen gemeinsamen Teiler")
        else:
                print(str(ggt))

eingabe()
teiler_berechnen(x, y)
ggt_finden(x_teiler, y_teiler)
ausgabe(ggt, gemeinsame_teiler)
                                

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2092833

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.