5 er Päckchen erstellen

Neue Frage »

Auf diesen Beitrag antworten »
HilfeInformatik 5 er Päckchen erstellen

Meine Frage:
Die Zahl 37 soll mit 7 Fünferpäckchen und einem "Restpäckchen" von 2 Strichen
bestehen (7*5 = 35, 35 + 2 = 37)
Die darzustellende Zahl (z.B. 37) wird zu Beginn des Programms in einer Variable zahl
festgelegt.
In Java berechnet der Ausdruck a % b den Rest der Ganzzahldivision a / b.
Ursprung des Koordinatensystems in Processing: linke obere Fensterecke (x=0, y=0)
Zeilenumbrüche für große Zahlen, die nicht in die Fensterbreite passen, müssen Sie nicht
berücksichtigen. Sie dürfen ein beliebig breites Bildschirmfenster annehmen.
Strichhöhe (=Päckchenbreite): 25 Bildschirmpunkte, Abstand zwischen den Päckchen: 12
Punkte
Linie zeichnen in Processing: line (x1,y1,x2,y2);
Vorschlag für Ihr Programm:
? äußere Schleife für vollständige Fünferpakete:
o darin in einer inneren Schleife vier senkrechte Striche zeichnen
o dann einen diagonalen Strich zeichnen
o dann horizontaler Abstand
? am Ende in einer Schleife die Rest-Striche (stets senkrecht) zeichnen, falls nötig
Das geht in weniger als 20 Code-Zeilen (insgesamt).

also soll eine beliebige Zahl x in 5 er Blöcken dargestellt werden:


Meine Ideen:
Ich wollte damit anfangen erstmal ein Päckchen zu zeichen:
Mein Problem ist, dass mir die Theorie dahinter fehlt.
Ich bin mit dem Prinzip der For-Schleife vertraut und habe mich auch schon mit Methoden versucht.
Rein theoretisch sollte das ganze so funktionieren.
int zahl=37;
//Methode 1:
void zeichnePacken(){ //4er Striche ohne Querstrich
for(int i=0;i<=20;i=i+5) {
line(i,0,25,i);
}
void zeichneStrich() {
line(0,25*k,25*k,0); //k zum verschieben damit der Querstrich nicht
auf dem ersten Packen steht

}

Mein Problem jetzt ist dass ich diese Methode bei höheren Zahlen ja mehrmals aufrufen müsste. Das heisst ich müsste es irgendwie hinbekommen auf mein i zuzugreifen. Das ist aber ja schon auf unter 20 festgelegt. Geht also nicht...
Demnäch bräuchte ich also eine for-Schleife in einer for-Schleife.
Die mir praktisch mein Päckchen kopiert und dann 25 Felder verschoben nochmal aufzeichnet.
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »