Hallo,
da dies mein erstes Posting ist, hier kurz eine Vorstellung.
Mein Name ist Björn und bin 15 Jahre alt.
Ein paar Bekannte und ich sind eigentlich eher im Bereich der "Filmproduktion" (wir machen kleinere Filmchen, inkl. 3D-Animation, Sound, usw.) aktiv.
Da ein Mitglied unserer Gruppe (welcher für die Programmierung von Tools und Expressions verantwortlich war) leider ausscheiden musste, wurde ich verdonnert, da ich mich schon länger scripte, bzw. programmiere (ist übertrieben

hatte früher in ARexx und etwas in Delphi gespielt, wobei dort eher zusammengeklickt).
Deshalb beginne ich nun von vorne und zwar mit C# (weil wir ein paar kleinere Tools benötigen).
In einer Hausaufgabe

bekamen wir die Aufgabe, ein kleines Tool zu schreiben, welches uns einen gegebenen Rabatt in Prozent ausrechnet.
Hierbei war eigentlich nur die Bedingung vorgegeben, dass Falscheingaben abgefangen werden.
Dies ist mein fertiges Programm, ich habe es schon abgegeben und ein ok bekommen (wurde nicht benotet):
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48:
| do { double dblOriginal; do { Console.Write("Bitte geben Sie den ursprünglichen Preis ein: "); if (double.TryParse(Console.ReadLine(), out dblOriginal)) break; else Console.WriteLine("\nFalsche Eingabe. Geben Sie eine Zahl ein!\n"); } while (true);
double dblEndpreis; do { Console.Write("Bitte geben Sie den bezahlten Preis ein: "); if (double.TryParse(Console.ReadLine(), out dblEndpreis)) break; else Console.WriteLine("\nFalsche Eingabe. Geben Sie eine Zahl ein!\n"); } while (true);
double dblErgebnis; if (dblEndpreis < dblOriginal) { dblErgebnis = Berechne(dblOriginal, dblEndpreis); Console.WriteLine("\n==========================================\n"); Console.WriteLine("Sie haben {0:F2}% Nachlass erhalten.", dblErgebnis); break; } else { Console.WriteLine("\nDer eingegebene Endpreis muss kleiner als der Originalpreis sein!"); Console.WriteLine("Berechnen Sie bitte neu!\n"); } } while (true); Console.ReadLine();
}
static double Berechne(double dblOriginal, double dblEndpreis) { return 100 - (dblEndpreis * 100 / dblOriginal); } |
Meine Frage:
Mir gefällt das Ganze mit den 3 Schleifen nicht so ganz. Irgendwie stelle ich mir vor, dass es bestimmt besser geht.
Könntet ihr mir bitte ein paar Tipps für effizientere Programmabläufe geben?
Ich werde in der näheren Zeit wohl mehrere Tools schreiben müssen, welche vom Ablauf her ähnlich aufgebaut sein werden (natürlich nicht so klein wie dieses).
Vielen Dank.
Björn