![]() |
Verschachtelte Algorhytmen
Hallo Forum Mitglieder,
ich brauche euren Rat in verschachtelten Algorhytmen. Wir haben in der Schule als Hausaufgabe aufbekommen, einen Rabbatrechner zu programmieren, der in einem bestimmten Intervall von der Stückanzahl (Bsp.: von 100 bis 500 Stück - 5%Rabatt). Leider fehlt mir dazu ein Quelltext, wie ich das machen soll. Bitte helft mir. Schon mal Danke im voraus JuPi::) hier der Quelltext: procedure TForm1.Button1Click(Sender: TObject); var stuck, preis, zsumme, rabatt, rsumme, endsumme : Real; begin stuck:=StrToFloat(Edit1.Text); preis:=StrToFloat(Edit2.Text); rabatt:=0; if 0<=stuck<100 then rabatt:=0 if 100<=stuck<500 then rabatt:=0.05 if 500<=stuck<=1000 then rabatt:=0.10 if 1000<=stuck<=1500 then rabatt:=0.15 if 1500<=stuck<2000 then rabatt:=0.20 if 2000<=stuck then rabatt:=0.30; zsumme:=stuck*preis; rsumme:=zsumme*rabatt; endsumme:=zsumme-rsumme; Edit3.Text:=FloatToStr(zsumme); Edit4.Text:=FloatToStr(rabatt); Edit5.text:=FloatToStr(rsumme); Edit6.Text:=FloatToStr(endsumme); end; end. |
AW: Verschachtelte Algorhytmen
Zitat:
Ansonsten schonmal ein paar Kleinigkeiten: Für Quelltexte gibt es hier passende Code-Tags, wie z.B. [delphi] (der Button mit dem roten Delphi-Helm). Zitat:
Delphi-Quellcode:
.
if (0 <= stuck) and (stuck < 100) then rabatt:=0
dann fehlen in dem Code einige
Delphi-Quellcode:
oder ein paar
;
Delphi-Quellcode:
.
else
|
AW: Verschachtelte Algorhytmen
Zitat:
|
AW: Verschachtelte Algorhytmen
Versteh ich als Aufforderung einen fertigen Quelltext hier abzuliefern... und das verstösst hier mindestens gegen die Grundeinstellung.
Ansonsten konnte ich das Problem auch nicht ganz erkennen, ausser dass er keinen Quelltext zu seinem Programm hat. Auch der Sinn des Programms entzieht sich meiner Logik. Wenn ich das richitg vestanden hab, dann soll er ein Programm entwerfen, dass in einem Intervall I von einer steigenden Gesamtmenge einen konstanten Rabatt R abziehen soll. Was jedoch der Code-Snippet mit dem Ganzen zu tun hat... auch nicht in meinem Verständnisbereich...: EDIT: Ah... mir ist glaub ich grad ein Licht aufgegangen!! :coder2: Er setzt vorher über die Gesamtmenge den Rabatt fest und rechnet dann den Rabatt runter... :!: Aber wo ist dann dein Problem? Du hast dann doch schon den Quelltext?!:shock: LG, hans ditter |
AW: Verschachtelte Algorhytmen
ich denke hier fehlen nur ein AND und ein Semikolon, bzw. ein else
Code:
-->
if 500<=stuck<=1000 then rabatt:=0.10
Delphi-Quellcode:
oder
if 500<=stuck and stuck<=1000 then rabatt:=0.10;
Delphi-Quellcode:
if 500<=stuck and stuck<=1000 then rabatt:=0.10
ELSE if .... |
AW: Verschachtelte Algorhytmen
Statt (mal abgesehen von den formalen Fehlern)
Delphi-Quellcode:
besser umgedreht abfragen
rabatt:=0;
if 0<=stuck<100 then rabatt:=0 if 100<=stuck<500 then rabatt:=0.05 if 500<=stuck<=1000 then rabatt:=0.10 if 1000<=stuck<=1500 then rabatt:=0.15 if 1500<=stuck<2000 then rabatt:=0.20 if 2000<=stuck then rabatt:=0.30;
Delphi-Quellcode:
weniger tippen, besser lesen
if stuck >= 2000 then Rabatt := 0.30
else if stuck >= 1500 then Rabatt := 0.20 else if stuck >= 1000 then Rabatt := 0.15 else if stuck >= 500 then Rabatt := 0.10 else if stuck >= 100 then Rabatt := 0.05 else Rabatt := 0; |
AW: Verschachtelte Algorhytmen
Und noch schöner wird es mit case. ;)
|
AW: Verschachtelte Algorhytmen
Zitat:
|
AW: Verschachtelte Algorhytmen
Wenn man das hat:
Delphi-Quellcode:
kann man doch das
if 100<=stuck<500 then
Delphi-Quellcode:
daraus machen. Es handelt sich doch um einen Bereich. Oder was habe ich jetzt übersehen?
case 100..500 of
|
AW: Verschachtelte Algorhytmen
öh du meist wohl eher
Delphi-Quellcode:
100..499
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz