Periode eines Dezimalbruchs
📁 Methode, Python, Beispiel
Aufgabe: Der Funktion werden zwei ganze Zahlen (int(a), int(b)) übergeben. Zurückgegeben werden soll der Quotient a/b, wobei sich wiederholende Zahlen (die Periode) in Klammern gesetzt werden müssen.
Beispiele:
1/3 = > 0.(3)29/12 = > 2.41(6)5/3 = > 1.(6)Ich bin die Lösung der Aufgabe mit der Brute-Force-Methode angegangen. Ich habe den Nachkommateil durchlaufen und nach Übereinstimmungen gesucht. Aber im Fall von 1/117 umfasst die Periode mehr als 90 Zahlen, und das Durchlaufen der Zahlen dauert länger, als in der Aufgabe erlaubt ist.
Wie
Meine Variante ist, die Datenbank zu durchlaufen und zu fragen, ob es Übereinstimmungen gibt:
Zuerst holen wir die Datenbank hier ab.
Im linken Fenster wählen wir in Schritt 3 Russian (Cyrillic) - im rechten Fenster wähle ich United States, für die Generierung geben wir nur die für uns interessanten Felder an: Gender, Given Name und Surname, die Datenbank selbst machen wir so groß wie möglich: 50000.
Lassen Sie uns auch analog eine Datenbank für englische Namen zur Generierung bestellen.
Der Prozess ist nicht schnell, also kann man sich einen Tee machen und eine Zigarette rauchen. Wenn wir zurückkommen, erhalten wir 2 E-Mails mit Links zum Herunterladen unserer Datenbanken.
Schreiben wir den Code:
import pandas as pddfru = pd.read_csv('FNru.csv')dfen = pd.read_csv('FNen.csv' Anmelden um eine Antwort zu hinterlassen