
Kapitel 4 - Fortsetzung
Nun wenn Sie sich im Ergebnis der vorher gestellten Aufgabe (zur Erinnerung: wie ist das Ergebnis des vierten Durchlaufes Ihrer Schleife?) nicht sicher sind, dann lassen wir es uns einfach anzeigen. Erweitern wir das Programm ein wenig und schreiben:
Programm 4.3
-----------------------------------------------------------------------------------------------------------------
#import <stdio.h>
int main(int argc, char *argv[])
{
int reiskornzahl;
int n;
printf ("\nn Summe der Reiskörner\n");
printf ("---------------------------------------\n");
reiskornzahl = 0;
for (n =1; n <=64; n=n+1)
{
reiskornzahl = reiskornzahl + n;
printf ("%i %i\n", n, reiskornzahl);
}
return 0;
}
-----------------------------------------------------------------------------------------------------------------
Programm 4.3 output
----------------------------------------------------------------------------------------------------------------
n Summe der Reiskörner
-------------------------------------------------------------------------------
1 1
2 3
3 6
4 10
5 15
. .
. .
. .
63 2016
64 2080
-----------------------------------------------------------------------------------------------------------------
Wenn Sie richtig gerechnet, dann sollte beim vierten Durchlauf 10 herauskommen sein. Was haben Sie aber im Programm Neues gemacht. Zuerst haben Sie mit den anfänglichen printf Befehlen eine hübsche Kopfzeile erzeugt. Dann haben Sie die Programm_Anweisung und den printf Befehl in geschwungene Klammern gesetzt. Dadurch haben Sie die Programm_Anweisung (den Körper) zu Programm_Anweisungen erweitert. Das ist übrigens ein grundlegendes Prinzip in Objective-C. Wann immer eine einzige Programm_Anweisung irgendwo gefordert ist, können Sie prinzipiell auch Programm_Anweisungen (Programmblöcke) programmieren. Das Setzen der Klammern erfolgte in obigem Beispiel in einer neuen Zeile nach der for Anweisung, aber Sie können auch die geschwungene Klammer gleich hinter die runde Klammer setzen:
for (n =1; n <=64; n=n+1){
Programm_Anweisung1;
Programm_Anweisung2;
}
Es bleibt ihnen überlassen. Wenn wir gerade bei den verschiedenen Möglichkeiten sind, dann können wir auch gleich die Assigment Operatoren vom vorigen Kapitel testen. Z.B.: n=n+1 ersetzen durch ++n und reiskornzahl = reiskornzahl + n durch reiskornzahl+=n
for (n =1; n <=64; ++n)
{
reiskornzahl += n;
Versuchen Sie es mal. Beides bedeutet das Gleiche, welche Version Sie verwenden wollen bleibt Ihnen überlassen.
weiter ---- Objective-C Index ---- Startseite----zurück
EINSTIEG
KAPITEL 1: SCHRITT FÜR SCHRITT ZUM ERSTEN PROGRAMM
KAPITEL 2: OBJEKTE, KLASSEN, INSTANZEN UND METHODEN
KAPITEL 3: DIE VERSCHIEDENEN DATENTYPEN
KAPITEL 4: DIE PROGRAMMSCHLEIFEN
KAPITEL 5: ENTSCHEIDE DICH, ENTWEDER ODER....
KAPITEL 6: UND NOCHMALS KLASSEN
KAPITEL 7: VERERBUNG
KAPITEL 8: POLYMORPHISMUS, DYNASCHISCHE TYPISIERUNG UND DYNAMISCHES BINDEN
KAPITEL 9: NOCH MEHR DATENTYPEN UND VARIABLEN
KAPITEL 10: CATEGORIES, POSING AND PROTOCOL
KAPITEL 11: DER PRÄPROZESSOR