Einzelnen Beitrag anzeigen

Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Kleines rechnen problem

  Alt 4. Mai 2011, 23:18
Bei deinem Pseudocode verschiebst du nichts, du weißt allen Trackbars Elementen denselben Wert zu.

Aber zum angesprochenen Problem:
Schau dir mal die Funktion Math.Min an!

Min(a, b) liefert dir den kleineren Wert aus der Menge {a, b}
Also wenn a < b, dann a, ansonsten b!

Du könntest dann, falls du verschiebst (also einen Wert auf den aktuellen draufaddierst) bei der Zuweisung per Min(NeuerWert, 100) dafür sorgen, dass der Wert 100 nicht überschritten wird.

Ich schätze mal dein Pseudocode war so gemeint:
Delphi-Quellcode:
For IntI := 0 to 15 do
 Trackbars[IntI] := Trackbars[IntI] + MasterTrackbar.Value;
Dann solltest du folgendes machen:
Delphi-Quellcode:
For IntI := 0 to 15 do
 Trackbars[IntI] := Min(Trackbars[IntI] + MasterTrackbar.Value, 100);
Btw. bin mir nicht ganz sicher, was Min für einen Typ zurückliefert. Falls es ein Fließkommawert ist, müsste noch ein Round vornedran!

Edit: Faaalllss ich dein Problem richtig verstanden habe...
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG

Geändert von Aphton ( 4. Mai 2011 um 23:20 Uhr)
  Mit Zitat antworten Zitat