Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Vorzeichen eines Parameters übergenben (https://www.delphipraxis.net/12379-vorzeichen-eines-parameters-uebergenben.html)

PomBär 26. Nov 2003 11:34


Vorzeichen eines Parameters übergenben
 
hi leute ich hab von meinem lehrer ne schöne aufgabe bekommen und sehe da irgendwie gar nicht durch könnt ihr mir helfen?
Aufgabe: ändern sie die beispiele:
die funktion quadrat soll dem ergebnis das vorzeichen des parameters mitgeben

Delphi-Quellcode:
function Quadrat(x:double):double;
begin
  result := x*x;
  //oder: Quadrat :=x*X;
end;
...

begin //Hauptprogramm
...
if Quadrat(k) kleiner 10 then //erlaubt,
   //wenn k Fuktion, Konstante oder
   //Variable eines Gleitkomma-Typs
...
Quadrat('Hi'), //Fehler weil string
               //übergeben
ich hoffe irgendjemand kann mir helfen.
danke im vorraus
:wall:

[edit=Admin]Code in Delphi-Tags eingebettet. Künftig bitte selber machen. Mfg, Daniel[/edit]

himitsu 26. Nov 2003 11:49

Re: Vorzeichen eines Parameters übergenben
 
Ist doch nicht so schwer. :wink:

:warn: Das Ergebnis der Funktion soll das Vorzeichen von X enthalten.
Da X * X immer positiv ist, braucht man, wenn X negativ ist, doch nur das Vorzeichen des Ergebnisses ändern.

Code:
[b]Function[/b] Quadrat(X: Double): Double;
  [b]Begin[/b]
    [b]If[/b] [color=darkred]X >= 0[/color] [b]Then[/b]
      Result := X * X     { X ist positiv / X >= 0 }
    [b]Else[/b]
      Result := [color=red]-([/color]X * X[color=red])[/color]; { X ist negativ / X < 0 }
  [b]End[/b];
http://www.delphipraxis.net/images/common/divider.jpg
http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif


Alle Zeitangaben in WEZ +1. Es ist jetzt 05: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