AGB  ·  Datenschutz  ·  Impressum  







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

DIV und MOD

Ein Thema von icke · begonnen am 25. Dez 2004 · letzter Beitrag vom 26. Dez 2004
Antwort Antwort
Seite 3 von 3     123   
MarkusB

Registriert seit: 3. Apr 2004
Ort: Hamburg
105 Beiträge
 
#21

Re: DIV und MOD

  Alt 26. Dez 2004, 09:33
Moin icke!

Gratuliere! . Du hast verschiedene Datentypen durcheinander gebracht.

Zitat von icke:
Code:
...
var
  gesamt: real;
  restmin, restsec: integer;

...

restmin:=FloatToStr(Gesamt div 60);
restsec:=FloatToStr(Gesamt mod 60);
end;

...
Hier versuchst du das Resultat der mod und div (die eine Integer-Zahl zurückliefern) mit Hilfe der Funktion FloatToStr (die eigentlich eine Gleitkommazahl erwartet) in Strings zu umwandeln und danach in Integer-Variable zu packen. Das kann nicht funktionieren!

Versuch etwa so:

Delphi-Quellcode:
var
  restmin, restsec, gesamt: integer;

  ...

  restmin:= Gesamt div 60; // das ist korrekt
  restsec:= Gesamt mod 60; // und das auch

  ...
Wenn du noch die restmin und restsec in Form eines Strings ausgeben möchtest, musst du noch String-Variablen definieren. Dann geht auch die Funktion „IntToStr“ (bzw. FloatToStr - das wäre unsauber):

Delphi-Quellcode:
var
  restmin , restsec, gesamt: integer;
  restmin_char , restsec_char: string;

  ...

  restmin:= Gesamt div 60;
  restsec:= Gesamt mod 60;

  restmin_char := IntToStr(restmin);
  restsec_char := IntToStr(restsec);

  ...
oder gleich so:

Delphi-Quellcode:
var
  gesamt: integer;
  restmin_char , restsec_char: string;

  ...

  restmin_char := IntToStr(Gesamt div 60;);
  restsec_char := IntToStr(Gesamt mod 60);

  ...
Viele Grüße
Markus
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#22

Re: DIV und MOD

  Alt 26. Dez 2004, 10:20
Hoffentlich machst du dir die Mühe nicht umsonst, Markus. Die richtigen Antworten wurden mehr oder weniger alle schon gegeben. Nur icke liest das einfach nicht und präsentiert stattdessen immer wieder seine Fehlermeldungen.
  Mit Zitat antworten Zitat
MarkusB

Registriert seit: 3. Apr 2004
Ort: Hamburg
105 Beiträge
 
#23

Re: DIV und MOD

  Alt 26. Dez 2004, 12:55
Moin MathiasSimmack !

Ich hoffe, dass mein Posting ein bisschen Klarheit im Kopf des armen icke schafft. Nachdem ich alle Postings gelesen habe, bin ich zum Schluss gekommen, dass das einzige was geklärt wurde ist, dass man mit Strings nicht rechnen kann und mod und div Integers erwarten. Alles andere ist, meiner Meinung nach, entweder unnötig kompliziert, irreführend oder einfach falsch.

Ein Beispiel:

Geklärt würde:
Zitat:
Erstens: Delphi-Referenz durchsuchendiv und Delphi-Referenz durchsuchenmod sind Integer-Befehle, können also nur mit Integer-TYpen etwas anfange.

Zweitens: Delphi-Referenz durchsuchenFloatToStr gibt einen String zurück, mit Strings kannst du nicht rechen.
... und danach kommt so was:

Zitat:
Delphi-Quellcode:
var
  str_restmin : String;
  str_restsec : String;
  int_restmin : Integer;
  int_restsec : Integer;
begin
  str_restmin := FloatToStr(Gesamt);
  int_restmin := str_restmin DIV 60; // Diese beiden Zeilen entsprechen: restmin := FloatToStr(gesamt) DIV 60

  str_restsec := FloatToStr(Gesamt);
  int_restsec := str_restmin MOD 60;

end;
... einfach zum Heulen.

Noch ein Beispiel:
Zitat:
Delphi-Quellcode:
function Real_Div(AZahl1,AZahl2:Extended):Integer;
begin
  Result := Trunc(AZahl1 / AZahl2);
end
Delphi-Quellcode:
function Real_Mod(AZahl1,AZahl2:Extended):Extended;
begin
  Result := AZahl1 - Trunc(AZahl1 / AZahl2) * AZahl2;
end
... dazu kann ich nur sagen: „Warum einfach, wenn es auch kompliziert geht?“

Viele Grüße
Markus
  Mit Zitat antworten Zitat
icke

Registriert seit: 2. Nov 2004
17 Beiträge
 
#24

Re: DIV und MOD

  Alt 26. Dez 2004, 17:02
Hallo
1. Ich habe mir die Antworten alle Durchgelesen.
2. Jeder schreibt irgend etwas anderes und gibt neue Tipps und eine "bessere Lösung"
3. Die Vorschläge habe ich im Quellcode geändert. Da die gleiche Fehlermeldung wie zuvor gekommen ist, bin ich zu dem Schluss gekommen, dass meine Version nicht schlechter sein kann.
4. Niemand bis auf MarkusB der mir endlich gesagt hat, dass der Ausdruck >restmin:= Gesamt div 60;< auch funktioniert!

Gruß icke

PS: ICh werde nun die anderen Vorschläge ausprobieren
  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 15:48 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