AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein C++ Welcher Befehl rundet wie "Round" in Borland C++ ?
Thema durchsuchen
Ansicht
Themen-Optionen

Welcher Befehl rundet wie "Round" in Borland C++ ?

Ein Thema von madina · begonnen am 21. Nov 2010 · letzter Beitrag vom 22. Nov 2010
Antwort Antwort
Seite 2 von 3     12 3      
madina

Registriert seit: 1. Nov 2005
153 Beiträge
 
#11

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 12:38
Hallo,

leider kein Erfolg.

Also ich suche in Borland C++ eine Fkt, der den gleichen wie in Delphi Round() macht.


MFG
mfg
madina
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 12:42
Dann nimm am Besten die Delphi Funktion.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#13

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 12:45
Das Delphi-Round wendet sich direkt an den mathematischen CoProzessor und in C++ sollte es auch eine Funktion geben, welche das Gleiche macht
und demnach das selbe Ergebnis liefern sollte.

In Borland C++ würde ich erwarten, daß diese Funktion ebenfalls "round" heißt.

Delphi-Quellcode:
{ Procedures and functions that need compiler magic }

procedure _ROUND;
asm
        { ->    FST(0)  Extended argument       }
        { <-    EDX:EAX Result                  }

        SUB ESP,8
        FISTP qword ptr [ESP]
        FWAIT
        POP EAX
        POP EDX
end;

PS: Runden ist nicht gleich Runden ... siehe Delphi-Referenz durchsuchenSet8087CW und Delphi-Referenz durchsuchenSetRoundMode
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
madina

Registriert seit: 1. Nov 2005
153 Beiträge
 
#14

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 12:51
Hallo,

leider keinen Erfolg.

Ich suche eine Fkt in Borland C++, die das gleiche macht wie Delphi.Round(); z.B: 326/7=47.

MFG
mfg
madina
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 12:54
Nottfalls mit
Code:
y = ceil(x + 0.5);
Markus Kinzler
  Mit Zitat antworten Zitat
Robotiker
(Gast)

n/a Beiträge
 
#16

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 13:18
Nottfalls mit
Code:
y = ceil(x + 0.5);
Zumindest eine Unterscheidung für negative Zahlen sollte man da einbauen.

Hier noch ein paar andere Varianten:
http://www.c-plusplus.de/forum/39342
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#17

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 21. Nov 2010, 14:42
Hallo,

wie wäre es, wenn du uns mal mitteilst, wie genau gerundet werden soll?
  • immer aufrunden
  • immer abrunden
  • runden wie man es in der Grundschule lernt
  • ...

Liebe Grüße,
Valentin
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#18

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 22. Nov 2010, 09:21
wie wäre es, wenn du uns mal mitteilst, wie genau gerundet werden soll?
Wurde schon mehrmals beantwortet... genauso runden wie die Delphi Funktion Round() rundet

Also
Code:
Round(9,00) = 9
Round(9,05) = 9
Round(9,10) = 9
Round(9,15) = 9
Round(9,20) = 9
Round(9,25) = 9
Round(9,30) = 9
Round(9,35) = 9
Round(9,40) = 9
Round(9,45) = 9
Round(9,50) = 10
Round(9,55) = 10
Round(9,60) = 10
Round(9,65) = 10
Round(9,70) = 10
Round(9,75) = 10
Round(9,80) = 10
Round(9,85) = 10
Round(9,90) = 10
Round(9,95) = 10
Round(10,00) = 10
Womit mkinzler in Post #15 eine passende Lösung angeboten hatte. (€: als Lösungs-Ansatz)

Geändert von Satty67 (22. Nov 2010 um 10:14 Uhr)
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#19

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 22. Nov 2010, 09:30
wie wäre es, wenn du uns mal mitteilst, wie genau gerundet werden soll?
Wurde schon mehrmals beantwortet... genasuo runden wie die Delphi Funktion Round() rundet
Womit mkinzler in Post #15 eine passende Lösung angeboten hatte.
Nicht ganz: round(8.5) = 8 aber ceil(8.5+0.5) = 9.
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#20

AW: Welcher Befehl rundet wie "Round" in Borland C++ ?

  Alt 22. Nov 2010, 10:14
Weshalb der/die TS noch sagt, es passt nicht. Aber der Ansatz ist richtig und sollte keine Herausforderung sein.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 23:23 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