Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Frage zu div oder / (https://www.delphipraxis.net/21413-frage-zu-div-oder.html)

fkerber 2. Mai 2004 17:47


Frage zu div oder /
 
Hi!

Ich bin etwas verwirrt. :gruebel:

Wann kann ich denn div verwenden und wann /.

Es hängt ja irgendwie davon ab, ob es reals oder integers sind.
Aber was ist da entscheidend. Die Variable der das Ergebnis der Rechnung zugewiesen wird oder die Variablen, die an der Rechnung beteiligt sind?

Konkret geht es um so eine Rechnung:

Delphi-Quellcode:
var:=(var1 * var2 {div oder / ??} 100);
Was nüssen also die einzelnen Variablen für nen Typ haben, damit ich div schreiben kann und was, damit ich / schreiben kann.

Ciao fkerber

P.S.: Einfach im entsprechenden Fall testen geht leider nicht, da wir die Klausur nicht am PC sondern aufm Blatt Papier schreiben. :wall:

alcaeus 2. Mai 2004 17:53

Re: Frage zu div oder /
 
div ist für eine Ganzzahloperation (alle int-Typen), / für Gleitkommazahlen (Real, Double, etc.)
Dabei hängt es vom Typ der Ergebnisvariable ab.

Dagon 2. Mai 2004 17:55

Re: Frage zu div oder /
 
Zitat:

Zitat von fkerber
Konkret geht es um so eine Rechnung:

Delphi-Quellcode:
var:=(var1 * var2 {div oder / ??} 100);
Was nüssen also die einzelnen Variablen für nen Typ haben, damit ich div schreiben kann und was, damit ich / schreiben kann.

Es kommt nicht auf die einzelnen Variablen an, sondern auf die Ergebnisvariable (in diesem Fall var). Schreibst du /, dann muss var ein Real-Typ sein, schribst du div so muss var ein Interger-Typ sein.

fkerber 2. Mai 2004 18:09

Re: Frage zu div oder /
 
Hi!

Und warum geht das dann nicht?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
test: integer;
test1, test2: real;
begin
test:=(test1*test2 div 100);
end;
Zitat:

[Fehler] Unit1.pas(31): Operator ist auf diesen Operandentyp nicht anwendbar
Ciao fkerber

Skiron 2. Mai 2004 18:12

Re: Frage zu div oder /
 
DIV kann NUR im zusammenhang mit INTEGER genommen werden
bei / MUSS der ERGEBNISTYP REAL sein
bei gleitkommazahlen kann man keine Ganzzahldivision nehmen!

fkerber 2. Mai 2004 18:20

Re: Frage zu div oder /
 
Hi!

Also bei DIV müssen die "Argumente" Integer sein (ergebnistyp egal) und bei / muss der ergebnistyp real sein, (argumenete egal).
Iss das soweit richtig?

Ciao fkerber

Manzoni 2. Mai 2004 18:24

Re: Frage zu div oder /
 
mann kann auch folgendes machen:
Delphi-Quellcode:
var blub : integer;
    moi1,
    moi2 : real;
begin
  moi1:=1.4;
  moi2:=1.5;
  blub:=round(moi1/moi2);
end;
Schau mal in der OH bei Arithmetische Operatoren.

SirThornberry 2. Mai 2004 18:29

Re: Frage zu div oder /
 
@Manzoni: Du weißt aber schon das round und div nicht zwangsläufig das gleiche ergebnis liefern?!

fkerber 2. Mai 2004 18:32

Re: Frage zu div oder /
 
Hi!

danke @manzoni.
Aber es geht nur um die beiden Sachen div und /. Andere Sachen darf ich nicht verwenden und ich muss halt wissen, wann ich was schreiben kann.

Ciao fkerber

himitsu 2. Mai 2004 18:33

Re: Frage zu div oder /
 
das kommt dann wohl eher hin ^^
Delphi-Quellcode:
var := Trunc(var / var);

var := var div var


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:23 Uhr.
Seite 1 von 2  1 2      

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