AGB  ·  Datenschutz  ·  Impressum  







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

division von zahlen > 2200000000?

Ein Thema von frielix · begonnen am 2. Sep 2006 · letzter Beitrag vom 2. Sep 2006
Antwort Antwort
frielix

Registriert seit: 31. Aug 2006
Ort: Dresden
7 Beiträge
 
#1

division von zahlen > 2200000000?

  Alt 2. Sep 2006, 22:08
Hi,
da meines Wissens Integerwerte eine Obergrenze von ca. 2150000000 haben, in meinem Programm aber möglicherweise Variablen mit Werten darüber belegt werden, habe ich mir gedacht, dass ich für die betroffenen Variablen nicht den Typen Integer sondern Real verwende.
Alles schön und gut, aber wenn ich bei dem Code x := StrToFloat(eins) div xz; ankomme meint der aber "[Fehler] Unit1.pas(307): E2015 Operator ist auf diesen Operandentyp nicht anwendbar".

Gibts da irgend eine möglichkeit um das Problem zu lösen??

Danke im Vorraus
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: division von zahlen > 2200000000?

  Alt 2. Sep 2006, 22:12
Nicht div, sondern / verwenden, wenn dus gerundet haben willst evtl. mit trunc().
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#3

Re: division von zahlen > 2200000000?

  Alt 2. Sep 2006, 22:16
Delphi-Referenz durchsuchendiv ist der Operator fuer die Ganzzahldivision - natuerlich nur auf Ganzzahlen anwendbar, was ein real (=Gleitkommazahl) nicht ist.
Loesung: Int64 ist doppeltso breit wie ein Integer - das sollte reichen

greetz
Mike
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#4

Re: division von zahlen > 2200000000?

  Alt 2. Sep 2006, 22:19
Alternativ kkannst du vielleicht auch eine der zahlreich vorhandenen Hier im Forum suchenBigInt Units verwenden, was den Vorteil hätte dass du verglichen mit Float-Typen eine höhere Genauigkeit hast, und auch keine Obergrenze was die Werte angeht.

  Mit Zitat antworten Zitat
frielix

Registriert seit: 31. Aug 2006
Ort: Dresden
7 Beiträge
 
#5

Re: division von zahlen > 2200000000?

  Alt 2. Sep 2006, 22:21
Zitat von JasonDX:
Delphi-Referenz durchsuchendiv ist der Operator fuer die Ganzzahldivision - natuerlich nur auf Ganzzahlen anwendbar, was ein real (=Gleitkommazahl) nicht ist.
Loesung: Int64 ist doppeltso breit wie ein Integer - das sollte reichen

greetz
Mike
Danke, ich hab das jetzt aber einmal alles mit Real-Werten und die werden gerundet. Wenn ich mal Zeit und Lust habe kann ich das ja nochmal ändern

Und danke für die schnellen Antworten!
  Mit Zitat antworten Zitat
Antwort Antwort


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