user103109 Geschrieben 27. November 2001 Teilen Geschrieben 27. November 2001 So, ich habe hier als c++ - Newie ein paar Aufgaben. Und ich weiß nicht , wie ich die lösen soll. Bin für jede Hilfe dankbar. Wir arbeiten mit Borland C++. Aufgabe 1) Geschlossene Schleife (for) Es soll ein Prog. zur Zinsberechnung erstellt werden, mit dem man für einen einzugebenden Anlagebetrag die Jahreszinsen mit Zinssätzen von 1%-5% ermitteln kann. Aufgabe 2) Offene kopfgesteuerte Schleife. (while) Einer Frau ist zu ihrem 63. Lebensjahr die Lebensversicherung in Höhe von 1 Mio € ausgezahlt worden. Das Geld legt sie zu 4 % p.a. an und lässt sich eine monatliche Rente von 5000 € zahlen. Für welchen Zeitraum (auf volle Jahre gerundet) kann sie sich diese Rente auszahlen lassen ? Aufgabe 3) Offene fußgesteuerte Schleife. (do und while) Ein Versicherungsvertreter möchte mit einem Prog. seine Provision für alle in einem Monat abgeschlossenen Verträge berechnen. Er erhält pro Abschluss 50 € sowie 1 % der Versicherungssumme. Beendet werden soll die Eingabe, wenn der Vertreter als Versicherungssumme 0 eingibt. Wo muss ich jetzt da Initialisierungsausdruck, Bedingungsausdruck und Reinitialisierungsausdruck einbringen ? Welche Rolle spielen dabei Inkrement und Dekrement ? Vielen Dank für Eure Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kristian Geschrieben 27. November 2001 Teilen Geschrieben 27. November 2001 Ich programmiere zwar selber noch nicht so lange in c++, aber ich denke, daß ich dir zu mindes in Ansätzen helfen kann. Dir ist mit sicherheit nicht geholfen, wenn ich hir kurz den Code runterschreibe, also versuche ich es grundsätzlicher: (1) Eine for-Schleife ist grundsätzlich dann anzuwenden, wenn man in dem Moment, in dem die Schleife anfängt, weiß, wie oft sie durchlaufen werden soll. (In diesem Fall fünf mal, einmal für jeden Zinssatz). Eine For-Schleife wird immer mit INitaliesierungsausdruck, Bedingungsausdruck und Der Veränderung der Schleifenvariable eingeleitet. for(int i=0;i<25;i++) //is nur ein Beispiel, hat nichts mit dir zu tun! { // Hier kommt der Schleifencode hin }; Bei einer For-Schleife darf die Schleifenvariable nicht innerhalb der Schleife verändert werden (oder sollte es zumindest nicht -> Gefahr einer Endlosschleife=Absturz) (2) Bei der While-Schleife muß man bei der ersten ausführung nocht nicht wissen, wie oft sie ausgeführt werden soll. Sie wird so oft ausgeführt solange die im KOpf (kopfgesteuert) gestellte Bedingung wahr (TRUE) ist. Hier gehe ich mal ein bisschen näher an dein Beispiel ran: while(Vermoegen>0) { // Berechnungen usw }; Solange also noch Geld da ist, wird die Schleife ausgeführt. Sollte schon beim ersten durchgang kein Geld mehr da sein, wird die Schleife nie ausgeführt! Hier muß der Programmierer aber die Sorge tragen, daß irgendwann die Schleifenbedingung nicht mehr erfüllr ist, sonst sind wir wieder bei der Endlosschleife. (Es gibt auch fälle, wo man das machen kann, doch dann muß man mit break; aus der Schleife aussteigen. manche Leute halten das für schlechten Code, aber er kann sehr effektiv sein.) [3] Die Do-While-Schleife ist der While-Schleife sehr ähnlich, nur die Bedingung wird erst am schluß gestellt. do { //Berrechnungen usw }while(Versicherungssumme!=0); Hier gilt eigentlich das Gleiche wie für die While-Schleife, mit einem Unterschied: Eine Do-While-Schleife wird immer mindestens ein mal ausgeführt, da die Bedingung ja erst hinterher überprüft wird. (Dieses letzte Beispiel würde ich allerdings lieber mit einer Enlosschleife und einer Abbruch Bedingung programmieren ( if(Versicherungssumme=0)break; ) ist aber mit Sicherheit nicht Sinn deiner Übung, also bleib bei der Do-While-Schleife. Oder programmiere einfach mal beide Varianten. Die ganzen Berechnungen usw sind ja gleich) Ich hoffe, ich konnte dir helfen Kristian <FONT COLOR="#a62a2a" SIZE="1">[ 27. November 2001 14:58: Beitrag 1 mal editiert, zuletzt von Kristian ]</font> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Woodstock Geschrieben 27. November 2001 Teilen Geschrieben 27. November 2001 Soweit ganz gut erklärt, würde ich sagen, nur eine Sache ist falsch: <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR> for(int i=0;i>25;i++) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Kristian Geschrieben 27. November 2001 Teilen Geschrieben 27. November 2001 Zugegeben, Bine, war ein kleiner Tippfehler mit großer Wirkung. Danke, ich verbessere es gleich. <FONT COLOR="#a62a2a" SIZE="1">[ 27. November 2001 15:03: Beitrag 1 mal editiert, zuletzt von Kristian ]</font> Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Cleo Geschrieben 28. November 2001 Teilen Geschrieben 28. November 2001 ich weiß ja net aber hattest du probleme damit die aufgaben zu erfassen oder sie in code umzuwandeln wenns mit dem code probleme gibt frag doch einfach mal deine kollegen welche befehle du brauchst und dann schau in der Hilfe nach da lernt man am besten Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
user103109 Geschrieben 28. November 2001 Autor Teilen Geschrieben 28. November 2001 So, danke erst mal. Wir haben die Aufgaben heute besprochen und ich habe da alles so weit verstanden. Ich habe eigentlich Probleme beim coden (z.B. wo welcher Befehl verwendet wird ), die reine Aufgabe hatte ich schon verstanden. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.