Programmieren - alles kontrollieren 4.935 Themen, 20.621 Beiträge

Sorry, bin Anfaenger :-)

[IGC]Shadow (Anonym) / 3 Antworten / Flachansicht Nickles

Hallo,
ich lerne jetzt seit einiger Zeit Java und habe mal ein paar Fragen zu bestimmten Aufgaben:
(bin im Augenblick bei Schleifen)
1.dieses Programm-Segment umwandeln, dass nur noch while-Schleifen drin vorkommen:
for(int i=1;i for(int j=i;j>=0;j--)
System.out.println(i*j);
Mein Probleme:
-ich verstehe die Ausgabe des Programmes
nicht
-wenn ich das Programm mit while Schleifen mache, kommt nicht das selbe raus.

2.Ein Programm, dass die Summe aller Weizenkoerner berechnet, wenn fuer das 1Feld 1 Korn, fuer das 2Feld 2Koerner, fuer das 3.Feld 4Koerner usw. gerechnet werden.
Wie fange ich damit am besten an?

Vielen Dank fuer eure Hilfen



bei Antwort benachrichtigen
Anonym [IGC]Shadow (Anonym) „Sorry, bin Anfaenger :-)“
Optionen

Dann schau dir nochmal genau die Ausgabe an!
Die einzelnen Null interpretiere mal als Trenner, dann siehst das die Ausgabe immer soviel Additionen der Zahlen von 1 bis 10 sind, wie ihre Wertigkeit ist, nur von hinten aufgezogen also:
1 -> 1
0 (der Trenner)
2 -> 2 4 (2+2)
0 (der Trenner)
3 -> 3 6 9 (3+3+3)
0 (der Trenner)
4 -> 4 8 12 16 (4+4+4+4)
usw. bis 10

erreicht wird das Ganze durch die zwei ineinander verschachtelten Schleifen.
Mit WHILE Schleifen würde das ganze in C (in kann kein Java) so aussehen und liefert die gleiche Ausgabe:
int i=1;
while(i {
int j=i;
while(j>=0)
{
printf("%d\n",i*j);
j--;
}
i++;
}

Jetzt setzt das mal in Java um! Im Prinzip ist dieser Algorithmus der Lösungsansatz für die zweite Aufagen!

Gruss
Frank


bei Antwort benachrichtigen