![]() |
DIV und MOD
Hallo
Ich kann die DIV und MOD Befehle nicht verwenden! Ich hab Delphi 3
Code:
Fehler: Inkompatible Typen: 'String' und 'Integer'.
restmin:=FloatToStr(Gesamt)div 60;
restsec:=FloatToStr(Gesamt)mod 60; Danke im Vorraus |
Re: DIV und MOD
Hi,
natürlich kannst Du das nicht! Der Ausdruck:
Delphi-Quellcode:
gibt einen String zurück. Auf diesen kannst Du den Divisions bzw. den Modulo Operator nicht anwenden.
FloatToStr(Gesamt)
Du müsstest das z.B. so schreiben
Delphi-Quellcode:
mfG
FloatToStr(Gesamt div 60) // oder mod 60
mirage228 |
Re: DIV und MOD
Erstens:
![]() ![]() Zweitens: ![]() Drittens: In der OH sind nette Beispiele, und kuck mal nach ![]() |
Re: DIV und MOD
|
Re: DIV und MOD
Alternativ das hier benutzen ;)
Delphi-Quellcode:
procedure DivModEx(Dividend, Divisor: Integer; var Result, Remainder: Integer); overload;
begin Result := Dividend div Divisor; Remainder := Dividend mod Divisor; end; procedure DivModEx(Dividend, Divisor: Extended; var Result, Remainder: Extended); overload; var Temp: Extended; begin Temp := Dividend / Divisor; Result := Int(Temp); Remainder := Frac(Temp) * Divisor; end; |
Re: DIV und MOD
1. Wo finde ich die Hilfe DivMod??
2. ich habe die Variabeln 'restmin' und 'restsec' auf integer gesetzt. --> Fehler: Inkompatible Typen: 'String' und 'Integer' Kann mir jemand auf normalem Deutsch (-> kein Fachchinesisch) erklären, warum es nicht funktioniert und den Weg zur Lösung bitte erklären?? Danke |
Re: DIV und MOD
Zitat:
Zitat:
|
Re: DIV und MOD
Mirage hat es doch eigentlich gut erklärt. Aber ich versuche es nocheinmal auf einem anderen Weg ;-)
Delphi-Quellcode:
Dies ist genau das was Du in deinem ersten Posting geschrieben hast. Nur das ich noch Hilfsvariabeln einfüge.
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; Wie Du siehst liefert FloatToStr() als Ergebniss einen String. Und diesen Versuchst Du zu dividieren was natürlich nicht gehen kann! |
Re: DIV und MOD
Danke für deine Antwort
Ich habe jetzt diesen Ausdruck eingegeben!
Code:
Der Fehler: Operator ist auf diesen Operatortyp nicht anwendbar
restmin:=FloatToStr(Gesamt div 60);
restsec:=FloatToStr(Gesamt mod 60); Die Hilfe von Delphi 3 sagt: Zitat:
|
Re: DIV und MOD
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz