. Bruchaddition und -subtraktion

王林
Freigeben: 2024-08-24 06:40:41
Original
155 Leute haben es durchsucht

. Fraction Addition and Subtraction

592. Bruchaddition und -subtraktion

Schwierigkeit:Mittel

Themen:Mathematik, String, Simulation

Bei einem gegebenen String-Ausdruck, der einen Ausdruck für die Addition und Subtraktion von Brüchen darstellt, wird das Berechnungsergebnis im String-Format zurückgegeben.

Das Endergebnis sollte ein irreduzibler Bruch sein. Wenn Ihr Endergebniseine ganze Zahl ist, ändern Sie es in das Format eines Bruchs mit dem Nenner 1. In diesem Fall sollte also 2 in 2/1 umgewandelt werden.

Beispiel 1:

  • Eingabe:Ausdruck = „-1/2+1/2“
  • Ausgabe:„0/1“

Beispiel 2:

  • Eingabe:Ausdruck = „-1/2+1/2+1/3“
  • Ausgabe:„1/3“

Beispiel 3:

  • Eingabe:Ausdruck = „1/3-1/2“
  • Ausgabe:„-1/6“

Einschränkungen:

  • Die Eingabezeichenfolge enthält nur „0“ bis „9“, „/“, „+“ und „-“. Das Gleiche gilt für die Ausgabe.
  • Jeder Bruch (Eingabe und Ausgabe) hat das Format ±Zähler/Nenner. Wenn der erste Eingabebruch oder die Ausgabe positiv ist, wird „+“ weggelassen.
  • Die Eingabe enthält nur gültigeirreduzible Brüche, wobei derZählerundNennerjedes Bruchs immer im Bereich [1, 10] liegen. Wenn der Nenner 1 ist, bedeutet das, dass dieser Bruch tatsächlich eine ganze Zahl in einem oben definierten Bruchformat ist.
  • Die Anzahl der angegebenen Brüche liegt im Bereich [1, 10].
  • Der Zähler und der Nenner desEndergebnissessind garantiert gültig und liegen im Bereich von32-Bitint.

Lösung:

Wir müssen die Eingabezeichenfolge sorgfältig analysieren und arithmetische Operationen an den Brüchen durchführen. Die Schritte sind wie folgt:

  1. Parsen Sie den Eingabeausdruck: Extrahieren Sie einzelne Brüche aus der Ausdruckszeichenfolge.
  2. Berechnen Sie das Ergebnis: Addieren oder subtrahieren Sie die Brüche Schritt für Schritt.
  3. Vereinfachen Sie das Ergebnis: Wandeln Sie den letzten Bruch in seine irreduzible Form um.

Lassen Sie uns diese Lösung in PHP implementieren:592. Bruchaddition und -subtraktion

Nach dem Login kopieren

Erläuterung:

  • gcd-Funktion: Berechnet den größten gemeinsamen Teiler zweier Zahlen, was bei der Vereinfachung des Bruchs hilft.
  • addFractions-Funktion: Addiert zwei Brüche. Es berechnet den gemeinsamen Nenner, passt die Zähler entsprechend an, addiert sie und vereinfacht dann den resultierenden Bruch.
  • fractionAddition-Funktion: Dies ist die Hauptfunktion, die den Eingabeausdruck analysiert, reguläre Ausdrücke verwendet, um alle Brüche zu extrahieren, und sie mithilfe der Funktion addFractions iterativ addiert.

Testfälle:

  • fraktionAddition("-1/2+1/2") gibt "0/1" zurück.
  • fraktionAddition("-1/2+1/2+1/3") gibt "1/3" zurück.
  • fraktionAddition("1/3-1/2") gibt "-1/6" zurück.

Diese Lösung verarbeitet alle erforderlichen Vorgänge und gibt die richtige Ausgabe für jeden gegebenen Ausdruck zurück.

Kontaktlinks

Wenn Sie diese Serie hilfreich fanden, denken Sie bitte darüber nach, demRepositoryeinen Stern auf GitHub zu geben oder den Beitrag in Ihren bevorzugten sozialen Netzwerken zu teilen? Eure Unterstützung würde mir sehr viel bedeuten!

Wenn Sie weitere hilfreiche Inhalte wie diesen wünschen, folgen Sie mir gerne:

  • LinkedIn
  • GitHub

Das obige ist der detaillierte Inhalt von. Bruchaddition und -subtraktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!