Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Schleifen (https://www.delphipraxis.net/120242-schleifen.html)

TimoB 7. Sep 2008 19:58


Schleifen
 
Hallo,

wir sind ziemliche Delphi-Anfänger und haben da mal eine frage:6
Für unsere Semesterarbeit müssen wir ein Hochregallager kostengünstig dimensionieren:

Wie haben bereits für die 6 möglichen Zellenbreiten die jeweiligen gesamten Kosten ausgerechnet.
Die VAriablen heißen wie folgt:

Preisgesamt1
Preisgesamt2
Preisgesamt3
Preisgesamt4
Preisgesamt5
Preisgesamt6

Delphi soll uns nun die kostenkünstigste Variant anzeigen lassen. Wie kann man sich den billigsten Preis dieser 6 Varianten anzeigen lassen?

Geht das nur über Repeat bzw While Schleifen ??
Wenn ja, könnte uns jemand den Ansatz zeigen?

Danke

mkinzler 7. Sep 2008 20:00

Re: Schleifen
 
Besser Array. Da Anzhal bekannt würde sich eine For-Schleife anbieten

TimoB 7. Sep 2008 20:03

Re: Schleifen
 
vielen dank schon eimal für deine schnelle antwort

aber wie beginnt man da.

BullsEye 7. Sep 2008 20:03

Re: Schleifen
 
Du könntest theoretisch eig auch einfach nur alle einzelnen Gesamtpreise miteinander vergleichen und das geringste ausgeben.
Mit ner Fallunterscheidung. (IF..THEN)


EDIT: =schleifen]Schleifen

Einfach mal durchlesen, dann versteht man das eig auch.

Christian18 7. Sep 2008 20:18

Re: Schleifen
 
Hallo,

hier mal ein kleines Beispiel. Sollte funktionieren.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
  var Preisgesamt: Array[0..5] of Real;
      i: Byte;
      Merker: Real;
begin
  // Werte setzen
  Preisgesamt[0]:=0.09;
  Preisgesamt[1]:=8.59;
  Preisgesamt[2]:=6.97;
  Preisgesamt[3]:=0.55;
  Preisgesamt[4]:=12.10;
  Preisgesamt[5]:=0.01;

  Merker:=Preisgesamt[0];

  // Günstigsten Prei suchen
  for i:=0 to 5 do
    begin
      if Preisgesamt[i] < Merker then
        begin
          Merker:=Preisgesamt[i];
        end;
    end;
  Label2.Caption:=FloatToStr(Merker);
end;
MFG Christian18

BullsEye 7. Sep 2008 20:22

Re: Schleifen
 
Ich würde i als Integer setzten, fals er hohe Werte benutzt!

mkinzler 7. Sep 2008 20:23

Re: Schleifen
 
Bei 6 sollte Byte aber locker reichen

Christian18 7. Sep 2008 20:23

Re: Schleifen
 
Ja ok, aber in seinem Beispiel hatte er ja nur 1-6 erwähnt.

Man soll ja immer Speicherorientiert programmieren! :lol:

MFG Chris

Nikolas 7. Sep 2008 20:56

Re: Schleifen
 
Wenn du aber so großen Wert auf Performanz legst, solltest du die Schleife aber bei i=1 starten lassen : )


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