Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   fehler beim programmieren (https://www.delphipraxis.net/62990-fehler-beim-programmieren.html)

christian1988 12. Feb 2006 13:24


fehler beim programmieren
 
so hab ein problem beim programmieren eines programms, hoffe ihr könnt mir helfen also hier ist die aufgabe!

Internetzugang

Verschiedene Provider bieten unterschiedliche Tarife eines Online-Zuganges an.
Für alle Provider fallen Telefonkosten in Höhe von 1,81 DM pro Stunde an.
Provider 1 verlangt keine Aufnahmegebühr. Zu einer monatlichen Grundgebühr von 9,95 DM fallen für jede Online-Stunde 6 DM an. Eine Online-Stunde ist pro Monat gratis.
Provider 2 verlangt eine einmalige Aufnahmegebühr in Höhe von 25,- DM. Dafür kosten die Online-Zeit pauschal 25,- DM pro Monat.
Provider 3 verlangt keine Aufnahmegebühr. Jede Online-Stunde kostet hier 3 DM die Stunde. Zwei Online-Stunden sind im Monat gratis.

Schreibe ein Programm, welches in Abhängigkeit der Online verbrachten Stunden , die Kosten für jeden der drei Provider ausgibt pro Monat bzw. für einen Jahr ausgibt. Für einen 4. Provider sollen Anmeldegebühr und Kosten pro Online-Stunde durch den Nutzer einzugeben sein.


hab bei den ersten 3 provider keine probleme gehabt doch beim vierten funkts nicht so ganz hier mein quelltext:
Delphi-Quellcode:
var
  Form1: TForm1;
  a,b,c,d,e,f,g: real;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
a:=strtofloat(edit3.Text);

if a<=1 then b:=9.95
        else b:=(9.95+a*7.81)-6;
label5.caption:=floattostr(b)+'€';

c:=25+a*1.81;
label6.Caption:=floattostr(c)+'€ (Aufnahmegebühr nicht berücksichtigt)';

if a<=2 then d:=0
        else d:=(a*4.81)-6;
label7.Caption:=floattostr(d)+'€';

e:=strtofloat(edit1.Text);
f:=strtofloat(edit2.text);
if f<>'' then g:=e
         else g:=e+(a*f)+(a*1.81);
label10.caption:=floattostr(g)+'€';


end;
so könnt ihr mir sagen wo ich den fehler gemacht habe also er erscheint hier wo ich mit ooo kennzeichne:
Delphi-Quellcode:
if f<>'' ooo then g:=e
else g:=e+(a*f)+(a*1.81);
würde mich über hilfe sehr freuen
mfg christian

[edit=Luckie]Delphi-Tags gesetzt. Mfg, Luckie[/edit]

Luckie 12. Feb 2006 13:33

Re: fehler beim programmieren
 
Bitte gib deinem Thread einen aussagekräftigen Titel, der etwas über die Art des Problem aussaget. Editier dazu einfach deinen ersten Beitrag. Danke.

Und was heißt "funkts nicht so ganz"? :roll: Mirt so einer fehlerbeschreibung wird dir kaum jemand helfen können.

Airblader 12. Feb 2006 13:39

Re: fehler beim programmieren
 
So schlecht wie die Beschreibung so kurz die Antwort:

Du vergleichst eine Fließkommazahl mit einem String.

air

3_of_8 12. Feb 2006 13:40

Re: fehler beim programmieren
 
Wenn f ein Real ist, kannst du ihn nicht mit einer Stringkonstante vergleichen.

EDIT: Da war jemand schneller...


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