Forum: PC-Programmierung Bruch: Nenner positiv machen


von Walter T. (nicolas)


Lesenswert?

Guten Morgen,

der Morgenkaffee wirkt noch nicht. Gibt es einen festen Begriff dafür, 
den Nenner eines Bruchse positiv zu machen? Spontan fiel mir 
"normalisieren" ein, aber das bezieht sich auf Partialbruchzerlegung.

von Ingo L. (corrtexx)


Lesenswert?

Erweitern?

von Thomas R. (r3tr0)


Lesenswert?

Bruch*(-1) ?

von Walter T. (nicolas)


Lesenswert?

Okay, ihr auch noch nicht. Dann warten wir mal, bis die Kaffeemaschine 
durchgelaufen ist.

von Marek N. (Gast)


Lesenswert?

Komplex konjugierte Erweiterung
Mit -1 erweitern
-1 ausklammern

von Hier fehlt Hirn dem TE (Gast)


Lesenswert?

Aus minus fünf DM im Portemonnaie plus fünf DM machen.

von Joachim B. (jar)


Lesenswert?

Hier fehlt Hirn dem TE schrieb:
> Aus minus fünf DM im Portemonnaie plus fünf DM machen.

10 DM klauen :)
eine Bank eröffnen
billig einkaufen, teuer verkaufen

von Yalu X. (yalu) (Moderator)


Lesenswert?

Was ist an "Nenner positiv machen" schlecht? Man sagt ja auch "Nenner 
rational machen" und "Nenner reell machen".

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Erweitern war schon der richtige Ausdruck, wenn man Zähler und Nenner 
mit derselben Zahl multipliziert, hier also *(-1/-1) "nur wenn Nenner 
negativ".

Konjugiert komplex stammt aus der komplexen Rechnung, da wird aber nur 
der Imaginärteil negiert.

von Jemand (Gast)


Lesenswert?

Hallo

"Konjugiert komplex stammt aus der komplexen Rechnung, da wird aber nur
der Imaginärteil negiert."

Warum nur ist Mathematik bei vielen dermaßen verhasst und wird so 
schnell wie möglich ad acta gelegt wenn man sich nicht mehr mit ihr 
auseinandersetzen muss? ;-)

Leider - den sie ist eigentlich ein mächtiges Werkzeug was - wenn gut 
beigebracht und -verständlich, geduldig und  an der Praxis angelehnt- 
erklärt wird sogar Freude machen kann - aber leider wird wie genau so 
wie im Zitat fast überall wo sie "professionell" und in irgendeiner 
Weise "schulisch" gelehrt wird vermittelt, kein Wunder das der Großteil 
der zwangs beglückten Schüler (wozu ich auch Studenten, 
Zwangsweitergebildete, in Prüfungen getriebene usw. hinzuzähle) am 
liebsten schreiend davonlaufen würden...

;-) oder eigentlich )-:

von Walter T. (nicolas)


Lesenswert?

Yalu X. schrieb:
> Was ist an "Nenner positiv machen" schlecht?

frac32_makeDenominatorPositive() ist ein häßlicher Funktionsname, wenn 
es einen fixen Term dafür gibt.

von Marten Morten (Gast)


Lesenswert?

Betrag des Nenners.

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

In der Eingangsfrage ging es soweit ich sie verstehe nicht um komplexe 
Zahlen.
Allerdings im Vergleichsbeispiel "einen Nenner reell machen", da muss 
man tatsächlich Zähler und Nenner mit dem konjugiert komplexen des 
Nenners multiplizieren. Gemäß der binomischen Formel  (a+b)*(a-b) = 
a²-b² wird so der Nenner reell.

von Tek (Gast)


Lesenswert?

Jemand schrieb:
> Leider - den sie ist eigentlich ein mächtiges Werkzeug was - wenn gut
> beigebracht und -verständlich, geduldig und  an der Praxis angelehnt-
> erklärt wird sogar Freude machen kann - aber leider wird wie genau so
> wie im Zitat fast überall wo sie "professionell" und in irgendeiner
> Weise "schulisch" gelehrt wird vermittelt, kein Wunder das der Großteil
> der zwangs beglückten Schüler (wozu ich auch Studenten,
> Zwangsweitergebildete, in Prüfungen getriebene usw. hinzuzähle) am
> liebsten schreiend davonlaufen würden...

Könntest Du das bitte nochmal in 3-4 einfachen Sätzen zusammenfassen?
Ich hab nach der hälfte leider den Faden verloren...

von Christoph db1uq K. (christoph_kessler)


Lesenswert?

Mit dem reellen Nenner ist er automatisch auch positiv, wenn man es also 
etwas komplizierter mag, darf man die Aufgabe auch so lösen.
Da hier in "b" auch ein "i" steckt, wird schließlich ein reelles (a²+b²) 
daraus, das kann nur positiv sein.

Auf rein reelle Zahlen angewandt heisst das, den Bruch mit dem Nenner zu 
erweitern, dann steht oben Z*N und unten N², das ist positiv. Insofern 
hatte Marek recht.

: Bearbeitet durch User
von Yalu X. (yalu) (Moderator)


Lesenswert?

Walter T. schrieb:
> Yalu X. schrieb:
>> Was ist an "Nenner positiv machen" schlecht?
>
> frac32_makeDenominatorPositive() ist ein häßlicher Funktionsname, wenn
> es einen fixen Term dafür gibt.

Du möchtest ja sicher nicht nur den Nenner positiv machen, sondern den
Bruch auch kürzen, um eine eindeutige Darstellung der Brüche zu
gewährleisten und die Zahlenwerte von Zähler und Nenner möglichst klein
zu halten.

Deswegen würde ich eine Funktion mit dem handlichen Namen frac32_reduce
schreiben, die den Bruch gleich so kürzt, dass der Nenner immer positiv
wird. Damit ist dein Problem der Namensgebung aus der Welt geschafft.

von Harald W. (wilhelms)


Lesenswert?

Walter T. schrieb:

> Gibt es einen festen Begriff dafür, den Nenner eines Bruchse
> positiv zu machen?

Positivieren? :-) Statt "Bruchse" kann man auch "Bruches" sagen.

von Theor (Gast)


Lesenswert?

Walter T. schrieb:
> Yalu X. schrieb:
>> Was ist an "Nenner positiv machen" schlecht?
>
> frac32_makeDenominatorPositive() ist ein häßlicher Funktionsname, wenn
> es einen fixen Term dafür gibt.

Es gibt kurz gesagt, keinen eingeführten oder gar definierten Begriff 
dafür.

Und "Schönheit" liegt im Auge des Betrachter. :-)

Vielleicht wäre es zweckmäßig mal festzulegen, was eigentlich mit dem 
Namen bezweckt werden soll. Man könnte sich folgende Fragenvorlegen.

1. Muss die Tatsache erkennbar sein, dass gerade der Nenner Subjekt ist?
2. Muss die Tatsache erkennbar sein, dass der Nenner ausschliesslich 
dann verändert wird wenn er negativ ist? Die Frage kann man in in 
mehreren Variationen neu formulieren. Das ist nur ein Beispiel.
Usw. Da fallen Dir sicher noch passende Fragen ein.


Mein Vorschlag wäre "ensure" (dt. u.A. "gewährleisten") etwa als 
"ensurePositiveDeominator zu verwenden. Das lässt (halbwegs) offen ob 
das Vorzeichen der Zahl effektiv verändert wird. "Enforce" ginge 
vielleicht auch noch.
Eine einfache Prüfung ohne Veränderung wird im GGs. dazu üblicherweise 
als "Is...", "Check..." oder "Test" .bezeichnet.

von Antoni Stolenkov (Gast)


Lesenswert?

Absolution?

Beitrag #5978844 wurde vom Autor gelöscht.
von Jemand (Gast)


Lesenswert?

Nenne die Funktion einfach z. B. normalize_signs

Ja, "normalisieren" hat mehrere Bedeutungen.

von c-hater (Gast)


Lesenswert?

Walter T. schrieb:

> der Morgenkaffee wirkt noch nicht. Gibt es einen festen Begriff dafür,
> den Nenner eines Bruchse positiv zu machen? Spontan fiel mir
> "normalisieren" ein, aber das bezieht sich auf Partialbruchzerlegung.

Dafür gibt es wohl keinen feststehenden Ausdruck. Was wohl daran liegt, 
dass keinerlei erkennbarer Sinn in dieser Intention steckt. Sprich: was 
soll es bringen, nur den Nenner einer Fraktion zwingend positiv zu 
machen?

Und wenn man die Funktion als Nenner in einer Fraktion ausser Betracht 
lässt, ist das einfach Abs(). Was nicht weiter erklärt werden braucht...

von Claus H. (hottab) Benutzerseite


Lesenswert?

Der Begriff heißt die schönste Schreibweise für Brüche :-)

Für welche seid ihr???

von Nicht W. (nichtsowichtig)


Lesenswert?

Claus H. schrieb:
> Der Begriff heißt die schönste Schreibweise für Brüche :-)
>
>
>
>
>
>
> Für welche seid ihr???

Ganz klar:

von Walter T. (nicolas)


Lesenswert?

Yalu X. schrieb:
> Du möchtest ja sicher nicht nur den Nenner positiv machen, sondern den
> Bruch auch kürzen, um eine eindeutige Darstellung der Brüche zu
> gewährleisten und die Zahlenwerte von Zähler und Nenner möglichst klein
> zu halten.

Stimmt. Das ist momentan Teil einer Funktion mit dem Namen 
fracXX_reduce(). Ich habe mich nur gefragt, wie man es sinnvoll 
benannte, falls es eine eigenständige Funktion wäre.

Aber ich sehe gerade: Das Thema hat sich erledigt. C-Hater hat erklärt, 
daß man positive Nenner sowieso nicht braucht.

von Al3ko -. (al3ko)


Lesenswert?

Jemand schrieb:
> Leider - den sie ist eigentlich ein mächtiges Werkzeug was - wenn gut
> beigebracht und -verständlich, geduldig und  an der Praxis angelehnt-
> erklärt wird sogar Freude machen kann - aber leider wird wie genau so
> wie im Zitat fast überall wo sie "professionell" und in irgendeiner
> Weise "schulisch" gelehrt wird vermittelt, kein Wunder das der Großteil
> der zwangs beglückten Schüler (wozu ich auch Studenten,
> Zwangsweitergebildete, in Prüfungen getriebene usw. hinzuzähle) am
> liebsten schreiend davonlaufen würden...

Manche haben Probleme mit Mathematik. Andere haben Probleme damit, sich 
klar auszudrücken und kurze&präzise Sätze zu bilden. Gut, dass niemand 
perfekt ist.

Gruß,

von Matthias (Gast)


Lesenswert?

Betrag des Nenners

von Mark B. (markbrandis)


Lesenswert?

Walter T. schrieb:
> Yalu X. schrieb:
>> Was ist an "Nenner positiv machen" schlecht?
>
> frac32_makeDenominatorPositive() ist ein häßlicher Funktionsname, wenn
> es einen fixen Term dafür gibt.

Wenn der Funktionsname genau das aussagt, was die Funktion macht - wieso 
sollte er dann nicht passen?

von Mark B. (markbrandis)


Lesenswert?

Walter T. schrieb:
> Aber ich sehe gerade: Das Thema hat sich erledigt. C-Hater hat erklärt,
> daß man positive Nenner sowieso nicht braucht.

Er hat freilich nicht ganz Unrecht: Wenn man alleine den Nenner positiv 
macht, der zuvor negativ war, und den Zähler so belässt wie er ist, dann 
ergibt das Ganze nicht viel Sinn. Es geht wohl kaum darum, den Bruch 
einfach mit (-1) zu multiplizieren. Nicht wahr?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Der Ausdruck "Nenner positiv machen" enthält implizit den Zusatz "unter
Beibehaltung des Bruchwerts". Du und der C-Hater scheinen die Einzigen
auf der Welt zu sein, die das anders sehen ;-)

Google einfach mal nach

  "Nenner positiv machen" und
  "make denominator positive"

von Zeno (Gast)


Lesenswert?

Theor schrieb:
> Mein Vorschlag wäre "ensure" (dt. u.A. "gewährleisten") etwa als
> "ensurePositiveDeominator zu verwenden.

Wie wär's mit deutsch?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Das Positivmachen des Nenners geschieht übrigens beim Kürzen ganz
automatisch, wenn bei der dafür benötigten Berechnung des größten
gemeinsamen Teilers mittels des Euklidischen Algorithmus die
mathematische¹ Modulofunktion zur Anwendung kommt.

In Python sieht das so aus:

1
def ggT(a, b):
2
  while b:
3
    a, b = b, a % b
4
  return a
5
6
def kuerze(z, n):
7
  d = ggT(z, n)
8
  return z // d, n // d

Leider – und für mich unverständlich – gibt es in C (und vielen anderen
Programmiersprachen sowie den meisten Prozessoren mit Hardwaredivision)
nur die symmetrische¹ Modulofunktion, so dass hier eine zusätzliche
Fallunterscheidung erforderlich ist.

——————————————
¹) Definition von "mathematisch" und "symmetrisch" nach
   https://de.wikipedia.org/wiki/Division_mit_Rest#Modulo

von Jemand (Gast)


Lesenswert?

Claus H. schrieb:
> Der Begriff heißt die schönste Schreibweise für Brüche :-)
> −0,5 - 0,5 =1−2 = \frac{1}{-2} =−12 = \frac{-1}{2} =−12 = - \frac{1}{2}
> Für welche seid ihr???

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Nicht W. schrieb:
> Claus H. schrieb:
>> Der Begriff heißt die schönste Schreibweise für Brüche :-)
>>
>>−0,5 - 0,5 >=1−2 = \frac{1}{-2} >=−12 = \frac{-1}{2} >=−12 = - \frac{1}{2} >
>> Für welche seid ihr???
>
> Ganz klar:=−1⋅12 = -1\cdot \frac{1}{2}
;-)

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.