AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bruchrechnung und das kürzen...

Offene Frage von "Anigmos"
Ein Thema von Anigmos · begonnen am 12. Feb 2007 · letzter Beitrag vom 12. Mai 2009
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von TonyR
TonyR

Registriert seit: 17. Jun 2006
Ort: Bautzen
503 Beiträge
 
FreePascal / Lazarus
 
#21

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:01
du hast doch deine Edits schon so angeordnet, dass die Ausgabe kein Problem mehr darstellt (ich erinnere an den Screenshot).

Willst du jetzt noch wissen, wie du die Ganzzahl rausbekommst und den Rest als Bruch darstellst, oder was? Das solltest du aber eigentlich auch mit Mathematik-Kenntnissen der (was weis ich... auf jeden Fall einer Klasse die vor der 11. kommt) selber hinkriegen
Es ist unmöglich, witzig zu sein ohne ein bisschen Bosheit. Die Bosheit eines guten Witzes ist der Widerhaken, der ihn haften lässt. - Georg Christoph Lichtenberg
  Mit Zitat antworten Zitat
Anigmos

Registriert seit: 6. Sep 2006
15 Beiträge
 
#22

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:34
Das Problem ist, ich kann es, kann es aber nicht schreiben ...
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#23

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:36
Und wo konkret ist jetzt dein Problem?
  Mit Zitat antworten Zitat
Anigmos

Registriert seit: 6. Sep 2006
15 Beiträge
 
#24

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:39
Wie kann ich nun die ganzzahl und den bruch ausgeben??
Ich hasse es mathe zu programmieren ich programmier alles lieber modifikationen für spiele eigene addons die mir das verwalten erleichtern ALLES nur kein mathe
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#25

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:45
Zitat von Anigmos:
Delphi-Quellcode:
GanzzahlEdit.text:=inttostr(ganerg);
ErgebnisZaehlerEdit.text:=inttostr(zerg);
ErgebnisNennerEdit.text:=inttostr(nennerg);
Hast du selbst geschrieben. Das müsste doch gehen, oder versteh ich deine Frage falsch?
  Mit Zitat antworten Zitat
Anigmos

Registriert seit: 6. Sep 2006
15 Beiträge
 
#26

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 19:50
Er macht irgendwas falsch... es kommt bei 13/2 * 13/2 0 ganze und 52/1 raus das stimmt nicht so ganz^^"
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#27

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 20:02
Zitat von Anigmos:
Er macht irgendwas falsch... es kommt bei 13/2 * 13/2 0 ganze und 52/1 raus das stimmt nicht so ganz^^"
Dann liegt das aber nicht an der Ausgabe, sondern an den Rechnungen davor. Den Fehler findest du am besten, wenn du Haltepunkte ins Programm einbaust und dann debuggst. So lässt sich die Stelle schneller finden, an der einer Variable ein falscher Wert zugewiesen wird.
  Mit Zitat antworten Zitat
Benutzerbild von TonyR
TonyR

Registriert seit: 17. Jun 2006
Ort: Bautzen
503 Beiträge
 
FreePascal / Lazarus
 
#28

Re: Bruchrechnung und das kürzen...

  Alt 14. Feb 2007, 23:23
Also Anigmos:
Ich hatte es ja schonmal geschrieben!
Mit dieser Formel bekommst du Zähler und Nenner des gekürzten Bruches!
Delphi-Quellcode:
procedure kurzen(Ausgangsbruch, Ergebnisbruch: Tbruch);
begin

Ergebnisbruch.zahler:=Ausgangsbruch.zahler div ggt(Ausgangsbruch.zahler,Ausgangsbruch.nenner);

Ergebnisbruch.nenner:=Ausgangsbruch.nenner div ggt(Ausgangsbruch.zahler,Ausgangsbruch.nenner);

end;
Um das jetzt noch so aufzusplitten, dass man eine Ganzzahl erhält, fällt mir auf die schnelle nur das hier ein:
Delphi-Quellcode:
var GDE{GanzzahlDesErgebnisbruchs}, RDE: word;

DivMod(ErgebnisBruch.zahler, Ergebnisbruch.Nenner, GDE, RDE);
Ergebnisbruch.zahler:=RDE;

GanzZahlEdit.text:=IntToStr(GDE);
ZahlerEdit.text:=IntToStr(Ergebnisbruch.zahler);
NennerEdit.text:=IntToStr(Ergebnisbruch.Nenner);
So und sag jetzt nicht, dass du es nicht kapierst!!!!
Es ist denk ich mal einleuchtend! Das einzige, was du ändern musst (weil du sagtest ja mal ihr dürft nur StiNo-Variablen benutzen), ist, deine unzähligen Variablen zu benutzen (anstatt Ergebnisbruch.zahler und so)!!!!!!
Aber wie schon gesagt, dürfte es dir nun ein Leichtes sein, das was ich geschrieben habe, auf deine Sache zu übertragen.


Zitat:
...ich programmier alles lieber modifikationen für spiele eigene addons ...
*kopfschüttel*...*kopfschüttel* mach lieber was sinnvolles


Edit: Um dir die richtige ggt-Funktion nochmal zu zeigen kopiere dir die von Beitrag #18 von mir!!!!!
Es ist unmöglich, witzig zu sein ohne ein bisschen Bosheit. Die Bosheit eines guten Witzes ist der Widerhaken, der ihn haften lässt. - Georg Christoph Lichtenberg
  Mit Zitat antworten Zitat
Dipl Phys Ernst Winter

Registriert seit: 14. Apr 2009
Ort: Jena
103 Beiträge
 
Delphi 3 Professional
 
#29

Re: Bruchrechnung und das kürzen...

  Alt 10. Mai 2009, 15:58
TonyR"
Function Kuerzen(zaehler,nenner:integer):Tbruch; Warum übergibst Du den zu kürzenden Bruch zerpflückt in Zähler und Nenner?
(delphi]Ergebnisbruch.zahler:=Round(Ausgangsbruch.zahler div ggt(Ausgangsbruch.zahler,Ausgangsbruch.nenner));
[/delphi]
Was soll das Round? Das Ergebnis von div ist schon ein Integer!
Frage: Wird der ungekürzte Bruch wirklich noch gebraucht? Sonst
procedure Kuerzen(var Bruch: TBruch); Dipl Phys Ernst Winter
Autor: DP Ernst Winter
  Mit Zitat antworten Zitat
Dipl Phys Ernst Winter

Registriert seit: 14. Apr 2009
Ort: Jena
103 Beiträge
 
Delphi 3 Professional
 
#30

Re: Bruchrechnung und das kürzen...

  Alt 12. Mai 2009, 14:25
Gegenüber dem Rechnen mit Gleitkommazahlen ist das Rechnen mit Brüchen frei von Rundungsfehlern.
Diese treten erst auf, wenn wir den Bruch in eine Gleitkommazahl konvertieren.

Ich habe für euch eine Unit und ein Demo zur Bruchrechnung geschrieben
Angehängte Dateien
Dateityp: exe brueche_134.exe (172,4 KB, 21x aufgerufen)
Autor: DP Ernst Winter
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz