Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Potenz einer Zahl (https://www.delphipraxis.net/107477-potenz-einer-zahl.html)

DeddyH 26. Jun 2008 11:10

Re: Potenz einer Zahl
 
Zitat:

Delphi-Quellcode:
 if Exponent = 0 then
  Exit

Was soll denn hier zurückgegeben werden? Tipp: Eine Zahl hoch 0 ergibt 1.

leddl 26. Jun 2008 11:11

Re: Potenz einer Zahl
 
:gruebel: Und warum dann jetzt unbedingt die rekursive Variante, wenn Delphi doch Delphi-Referenz durchsuchenPower mitliefert? :gruebel:

DeddyH 26. Jun 2008 11:13

Re: Potenz einer Zahl
 
Wenn ich das richtig verstanden habe, geht es ja gerade um eine eigene Funktion.

leddl 26. Jun 2008 11:16

Re: Potenz einer Zahl
 
Zitat:

Zitat von DeddyH
Wenn ich das richtig verstanden habe, geht es ja gerade um eine eigene Funktion.

Äääähm, Matze89 ist nicht der ursprüngliche Threadersteller... Und wenn er schon einfach nur eine hier gepostete Funktion abschreiben will, dann kann er doch auch gleich Bordmittel benutzen, oder? :zwinker:

Sharky 26. Jun 2008 17:39

Re: Potenz einer Zahl
 
Zitat:

Zitat von DeddyH
[...]Öhh, wieso? :gruebel: Es geht doch immer noch um eine Funktion zur Berechnung der Potenz.

Sorry,

mein Fehler. Ich habe da etwas falsch gelesen.

Matze89 26. Jun 2008 18:08

Re: Potenz einer Zahl
 
[c function Power(basis, Exponent: Extended):Extended;
begin
power(basis,Exponent);
end;

procedure TForm1.Button1Click(Sender: TObject);
var Basis,Exponent,Ergebnis : Integer;
begin
Basis:= StrToInt(Edit1.Text);
Exponent:= StrToInt(Edit2.Text);
Edit3.Text:= IntToStr(Power(basis, Exponent));

end;

end.


ich hab es jetz mal mit Power probiert, komme da aber auch nicht weiter.

DeddyH 26. Jun 2008 18:11

Re: Potenz einer Zahl
 
Sry, aber vielleicht solltest Du Dich nochmal mit den Grundlagen vertraut machen (insbesondere was Funktionen angeht).

Macci 26. Jun 2008 18:28

Re: Potenz einer Zahl
 
So geht's

Delphi-Quellcode:
function IntPower(X: Extended; I: Integer): Extended;
var
  Y: Integer;
begin
  Y := Abs(I);
  Result := 1.0;
  while Y > 0 do begin
    while not Odd(Y) do
    begin
      Y := Y shr 1;
      X := X * X
    end;
    Dec(Y);
    Result := Result * X
  end;
  if I < 0 then Result := 1.0 / Result
end;
(aus den Delphi-Dateien)

rollstuhlfahrer 26. Jun 2008 22:48

Re: Potenz einer Zahl
 
Zitat:

Zitat von RavenIV
Aber die Vorgabe ist, dass er es mit einer for-Schleife machen muss.

Wo ist denn die For-Schleife hinverschwunden? (Auch wenn die Lösung phantastisch funktionieren sollte)


Zitat:

Zitat von Matze89
Delphi-Quellcode:
{ function Power(basis, Exponent: Extended):Extended;
begin
  power(basis,Exponent);
end;}

procedure TForm1.Button1Click(Sender: TObject);
var Basis,Exponent,Ergebnis : Integer;
begin
  Basis:= StrToInt(Edit1.Text);
 Exponent:= StrToInt(Edit2.Text);
// Edit3.Text:= IntToStr(Power(basis, Exponent));
  Edit3.Text := FloatToStr(Power(basis, exponent));

end;

So dürfte es dann gehen


Zitat:

Zitat von Matze89
zum beispiel hab ich die Basis 3 eingegeben, den Exponenten 2 und kam auf das Ergebniss von 169787972918927484
aber bei Basis 2 und Exponent 3 ging es irgendwie, da kamm ich auch auf 8

Schon mal die Schleife debuggt? Die Zahl sieht aus, als ob sie die Obergrenze von Int64 wäre.

Bernhard

Matze89 28. Jun 2008 22:38

Re: Potenz einer Zahl
 
Hab Schleife noch nich debuggt.
thx, habs jetz aba och hinbekommen mit der Potenzrechnung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:57 Uhr.
Seite 4 von 4   « Erste     234   

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