Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Problem mit Konsolenanwendeung (https://www.delphipraxis.net/114139-problem-mit-konsolenanwendeung.html)

Golum1289 20. Mai 2008 13:24


Problem mit Konsolenanwendeung
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich brauche dringend Hilfe.Ich programmiere derzeit ein Programm für ein Fotostudio.
Funktioniert soweit, aber beim Gesamtpreis komme ich nicht weiter.

Hier der Quelltext:

Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils;

Var
 artikelnr, anzahl : integer;
 preis, warenwert, rsatz, rabatt,
 net, brut, gesamtpreis, mwstbetrag : real;

const
mwstsatz = 0.19;

begin
writeln('Hallo, machen Sie ihre Eingabe');
  Writeln;
  Write('===========================================') ;
  Writeln;
  Writeln ;
  Write('Artikelnummer: ');
  Writeln; Writeln;
  Write('1 - Passfoto'); Writeln;
  Write('2 - Freundschaftsbilder'); Writeln;
  Write('3 - poster')   ;
  Writeln ;
  Writeln ;
        repeat
           write('Geben sie die Artikelnummer ein : ');readln(artikelnr);
           write('Geben sie die Anzahl ein       : ');readln(anzahl);
         case artikelnr of

         1: preis := 1.50;
         2: preis := 2.00;
         3: preis := 2.50;

         end;



        warenwert := preis * anzahl ;
        mwstbetrag := warenwert * mwstsatz ;
        net := warenwert + mwstbetrag ;

        if anzahl >= 20 then rsatz := 0.2
        else
        if anzahl < 6 then rsatz := 0
        else rsatz := 0.1;

        rabatt := net * rsatz;
        brut := net - rabatt;
        gesamtpreis := gesamtpreis + brut ;

        //ausgabe

Writeln ('Artikelnummer    :          ',artikelnr);
Writeln ('Anzahl           :          ',Anzahl,' Stueck');
Writeln ('Warenwert        :',warenwert:15:2,' EUR') ;
Writeln ('Nettobetrag      :',net:15:2,' EUR') ;
Writeln ('Rabatt           :',Rabatt:15:2,' EUR') ;
Writeln ('Brutto           :',brut:15:2,' EUR') ;

writeln;
writeln;
       until artikelnr = 0;

       end.
Ich danke euch für eure Vorschläge)

divBy0 20. Mai 2008 13:28

Re: Problem mit Konsolenanwendeung
 
Ich weiß nicht genau was dein Problem ist...

Beschreib es doch mal genauer.

sirius 20. Mai 2008 13:29

Re: Problem mit Konsolenanwendeung
 
Zitat:

aber beim Gesamtpreis komme ich nicht weiter.
Was bedeutet das?

btw.: du solltest ab und zu mal Variablen mit 0 initialisieren.

Golum1289 20. Mai 2008 13:32

Re: Problem mit Konsolenanwendeung
 
Es geht darum, wenn man die Schleife durchlaufen hat, diese beendet werden soll und dann per writeln der Gesamtpreis angezeigt werden soll.

shmia 20. Mai 2008 13:32

Re: Problem mit Konsolenanwendeung
 
Mal etwas Prinzipielles:
Wenn ein Programm nicht interaktiv ist, also es bekommt einige Anfangswerte, verarbeitet diese und gibt etwas aus,
dann ist eine Konsolenanwendung ganz in Ordnung.
Wenn ein Programm aber interaktiv mit dem Benutzer kommunizieren soll (wie in deinem Fall), dann kommt eigentlich nur eine "normale" VCL-Anwendung in Frage.

Weshalb muss es bei dir eine Konsolenanwendung sein ?

divBy0 20. Mai 2008 13:34

Re: Problem mit Konsolenanwendeung
 
Meinst du so?

Delphi-Quellcode:
until artikelnr = 0;

Writeln ('Gesamtpreis      :',gesamtpreis:15:2,' EUR') ;
end.

Tyrael Y. 20. Mai 2008 13:35

Re: Problem mit Konsolenanwendeung
 
Delphi-Quellcode:
Writeln ('Rabatt           :',Rabatt:15:2,' EUR') ;
Writeln ('Brutto           :',brut:15:2,' EUR') ;

writeln;
writeln;
       until artikelnr = 0;

writeln('Gesamtpreis :' + FloatToStr(gesamtpreis));
...oder was meinst du?

Edit:

Zitat:

Zitat von shmia
Wenn ein Programm aber interaktiv mit dem Benutzer kommunizieren soll (wie in deinem Fall), dann kommt eigentlich nur eine "normale" VCL-Anwendung in Frage.

Weshalb muss es bei dir eine Konsolenanwendung sein ?

Kommt nur einen VCL-Anwendung in Frage ist bissel übertrieben.
Geht beides und ist Geschmackssache.

Eine VCL-Anwendung wäre natürlich auch für den Benutzer übersichtlicher.

Golum1289 20. Mai 2008 13:39

Re: Problem mit Konsolenanwendeung
 
Danke an alle für die schnelle Hilfe.


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