PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mein drittes C++ Programm [Updated]



Viper.aT
18.08.2007, 17:50
Hallo
Also ich habe einen Flächenberechner in C++ programmiert. Es ist insgesamt mein 3tes Programm.
Kompiliert mit Dev-C++
Ich möchte gerne wissen was ich am Quellcode noch verbessern könnte

Hier gibts die exe zum downlaoden: http://rapidshare.com/files/49855204/Flaechenrechner.exe



Gibts auf Anfrage


Whitelist und bessere Übersicht im Code folgt
Wenn ich irgendwas am Code ändere werde ich es hier posten

MFG Viper.aT

GuruGurke
18.08.2007, 17:53
Mein erstes C++ Programm



Es ist insgesamt mein 3tes Programm
Kompiliert mit Dev-C++

den hab ich nicht gecheckt? o.O

Viper.aT
18.08.2007, 17:56
sorry war nicht ganz bei sinnen habs geändert^^

zao
18.08.2007, 18:54
ihr arbeitet immer mit integer, wie wärs denn mal mit character, am ende wird ja gefragt, ob man noch eine berechnen will, versuch mal anstatt 1 und 2, y und n für yes and no zu benutzen. die könntest auch noch die möglichkeit bieten zwei errechnete flächen zu addieren.

mfg

zao

k0rxxx
18.08.2007, 19:12
Nimm vorallem für die Längen nicht int sondern float oder double, dann kannste auch Kommazahlen berechnen (das Komma immer als Punkt schreiben!).
Und du solltest schauen das du ungültige Eingaben verhinderst. Also a-z, $/%, ...

Viper.aT
18.08.2007, 19:21
ok danke werde den code dann mal aktualisieren und oben ändern thx für die tipps und np bfkj^^
@k0rxxx wie meinst du das mit
Und du solltest schauen das du ungültige Eingaben verhinderst. Also a-z, $/%, ...

bfkj
18.08.2007, 19:24
Voll geil alder nice1 thx passt voll zu unser Unterrichtseinheit in Mathe geil nochmals thx

errox
18.08.2007, 20:57
Mach den code mal übersichtlicher...

Viper.aT
18.08.2007, 21:02
was soll ich übersichtlicher machen??

errox
18.08.2007, 21:06
Z.b die variablen
int a; // Länge a
int b; // Länge b
int d; //
int e; // Länge e
int f; // Länge f
int k; // Kreisbogen
int r; // Radius
int z; //
float const PI = 3.1415;
in ein array speichern..
sparst du viele zeilen.
Die "wilkommens mesage" in eine funktion packen
uvm ^^

Viper.aT
18.08.2007, 21:09
Ok dann werd ich mich mal dran setzen^^

k0rxxx
18.08.2007, 21:23
ok danke werde den code dann mal aktualisieren und oben ändern thx für die tipps und np bfkj^^
@k0rxxx wie meinst du das mit
Und du solltest schauen das du ungültige Eingaben verhinderst. Also a-z, $/%, ...

Ich meinte damit das du das eingeben von Buchstaben oder Sonderzeichen abfangen solltest, da sonst dein Programm abschmiert. Gebe doch mal ein "k" ein.

124\/3|\|
18.08.2007, 21:45
am besten machst das mit ner whitelist:
0-9 und natürlich "." für kommazahlen falls das noch reinmachen willst.

Viper.aT
18.08.2007, 21:47
ok aber ich hab keine ahnung iwe ich das mache...

zao
18.08.2007, 22:43
du contest mit try und catch arbeiten.

mfg

zao

-[RiDER]-
19.08.2007, 10:40
das is zwar wirklich krümelscheiße, aber du solltest drauf achten variablen nach größe zu sortieren. damit der compiler schneller auf die variablen zugreifen kann, verwendet er füllbytes, die einfach leer bleiben. also
char bla;
int blubb;wird vom compiler zu
char bla;
char x, y, z;
int blubb;wobei x, y, und z immer leer bleiben und für nichts reserviert sind.
und zwar, weil ein char nur 8 bit (ein byte) groß ist, während ein int 32 bit (also 4 byte) groß ist. der compiler versucht die variablen hintereinander im speicher abzulegen und legt dann aus geschwindigkeitsgründen die leeren füllbytes an. du solltest deine variablen also lieber so sortieren:
double a; // Länge a
double b; // Länge b
double e; // Länge e
double f; // Länge f
double k; // Kreisbogen
double r; // Radius
int d; //
char z; //und pi würde ich als constante via #define festlegen -> speicherschonend.

MfG RiDER

EDiT:
und nach dem switch() würde ich nicht alles um 20 spaces einrücken :wink:
und getchar() statt cin für einen char verwenden.

Viper.aT
19.08.2007, 13:24
ok werd ich machen rider und kann mir wer über icq oder ts erklären wie das mit der whitelist funktioniert?