![]() |
geht es auch programmiertechnisch besser?
Also bin noch ein Delphi Anfänger und verfasse mich atm erstmal it Konsolenprogrammen ...
Hab hier 2 Programme geschrieben und wollte wissen, ob es dafür einfachere Lösungen sprich bessere Lösungen gibt ... Ein Spannung, Widerstand, Strom Umrechner:
Delphi-Quellcode:
program Strom;
{$APPTYPE CONSOLE} uses sysutils; var U, R, I : Single; begin repeat WriteLn('Bitte geben Sie einen Wert fuer U [Spannung] ein'); ReadLn(U); WriteLn('Bitte geben Sie einen Wert fuer R [Widerstand] ein'); ReadLn(R); WriteLn('Bitte geben Sie einen Wert fuer I [Strom] ein'); ReadLn(I); until (U=0) or (R=0) or (I=0); if U = 0 then WriteLn('Die Spannung bestraegt: ', R * I:0:1) else if R = 0 then WriteLn('Der Wiederstand betraegt: ', U / I:0:1) else WriteLn('Der Strom betraegt: ', U / R:0:1); ReadLn; end. Und nu noch ein Taschenrechner ... Das Ergebnis der ersten Lösung ist gleich der ersten zahl in der 2 Lösüng, falls man weiterrechnen möchte:
Delphi-Quellcode:
program TRKT;
{$APPTYPE CONSOLE} uses sysutils; var a : single; b : single; c : single; op : char; j : string; begin writeln ('Bitte geben sie den ersten Wert ein:'); readln (a); repeat writeln ('Bitte geben sie den weiteren Wert ein:'); readln (b); writeln ('Bitte geben sie den Operator ein: [+, -, *, /]'); readln (op); if op = '+' then begin c := a + b; Writeln ('Das Ergebnis lautet:'); writeln (c:0:1); end; if op = '-' then begin c := a - b; Writeln ('Das Ergebnis lautet:'); writeln (c:0:1); end; if op = '*' then begin c := a * b; Writeln ('Das Ergebnis lautet:'); writeln (c:0:1); end; if op = '/' then begin c := a / b; Writeln ('Das Ergebnis lautet:'); writeln (c:0:1); end; a := c; writeln ('Wollen sie mit dem Ergebnis weiter rechnen[j;n]?'); readln (j); until j = 'n'; readln; end. |
Re: geht es auch programmiertechnisch besser?
Servus,
Zitat:
Delphi-Quellcode:
Außerdem würd ich auch auf fehlerhafte Eingaben prüfen (siehe z.B. ELSE im CASE-Abschnitt) :)
CASE op OF
'+' : c := a + b; '-' : c := a - b; '*' : c := a * b; '/' : c := a / b ELSE BEGIN c := 0; Writeln ('Kein gültiger Operator!'); END; { Else } END; { Case } Writeln ('Das Ergebnis lautet:'); writeln (c:0:1); { ... } sonst kanns schnell Fehler geben, z.B. wenn im Programm Strom jemand für alle Wert 0 angibt ;) MfG Stephan |
Re: geht es auch programmiertechnisch besser?
ahhh diese möglichkeit kannte ich noch nicht. vielen dank :>
|
Re: geht es auch programmiertechnisch besser?
mal ne (dumme ??) Frage:
Wozu brauchst Du für so ein lächerliches Programm Delphi 7 Enterprise für ein paar tausend Euro ? Dafür tut's auch ein Turbo Pascal 3.0 ! Roderich |
Re: geht es auch programmiertechnisch besser?
paar tausend €? wenns einem unter ungeklärten umständen in die händel fällt gibts das auch billiger :mrgreen:
(ich hab mein D6 von meiner Programmierlehrerin in der Schule bekommen) |
Re: geht es auch programmiertechnisch besser?
hmm des tut zwar nix zur sache aber was würdest du sagen wenn ich Borland.Delphi.v8.0.Architect.Edition hätte ... Najo zurück zu deiner Frage, ich hoffe doch, das es nicht bei den kleinen programmen bleibt, sondern irgendwann mal umfangreichere ... oder war dein erstes programm etwa sowas von umfangreich ... fange eben gerade erst an.
|
Re: geht es auch programmiertechnisch besser?
Zitat:
Roderich |
Re: geht es auch programmiertechnisch besser?
darauf würde ich sagen das ich jede art von p2p hasse und das du bei mir weder emule noch kazaa finden würdest -.-
|
Re: geht es auch programmiertechnisch besser?
Zitat:
|
Re: geht es auch programmiertechnisch besser?
Zitat:
Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:07 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 by Thomas Breitkreuz