Entschuldigen Sie meine Ignoranz, aber ich stieß auf ein Problem, das für mein aktuelles Wissen in der Programmierung mit Processing herausforderte, obwohl die Idee ziemlich einfach ist. Sie sehen, ich muss alle 10 Sekunden eine Einheit zu einer Variablen hinzufügen. Dies ist der Code:Wie fügt man in der Verarbeitung alle 10 Sekunden + 1 zur Variablen hinzu?
int i = 0;
void setup()
{
frameRate(60);
}
void draw()
{
int time = (millis() % 10000)/1000;
if (time == 9)
{
i++;
} else {}
System.out.println("-------------------------------\n" +
"Timer: " + time + "\n"
+ "Adding 1 every 10 seconds: : " + i + "\n"
+ "-------------------------------");
}
Das Problem ist, dass, weil draw()
60 mal pro Sekunde Schleifen, sobald time
erreicht 9 die zweite er zuletzt die if
Aussage macht 60-mal ausgeführt werden, und es endet 60 Hinzufügen alle 10 Sekunden zu i
und ich brauche nur 1.
Zugabe zu ich habe versucht, eine Art von Algorithmus anzuwenden, die die unnötigen Zahlen subtrahiert, da sie wie so erhöhen:
int i = 1;
int toSubstract = 0; //Variable for algorithm
void setup()
{
frameRate(60);
}
void draw()
{
int time = (millis() % 10000)/1000;
if (time == 9)
{
i++;
algToSubstract();
} else {}
System.out.println("-------------------------------\n" +
"Timer: " + time + "\n"
+ "Adding 1 every 10 seconds: : " + i + "\n"
+ "-------------------------------");
}
void algToSubstract() //<--- This is the algorithm
{
i = i - toSubstract;
toSubstract++;
if (toSubstract > 59)
{
toSubstract = 0;
} else {}
}
... aber ich konnte es nicht funktionieren lassen. Die Idee war, etwas wie folgt aus:
time
erreicht 9, if
Anweisung ausführt, i
= 1 und toSubstract
= 0.
i
steigt 1 so i
= 2.
i = i - toSusbract
(i
= 2 - 0 also i
= 2).
toSusbract
steigt 1 so toSusbract
= 1.
i
steigt 1 so i
= 3.
i = i - toSusbract
(i
= 3 - 1 so i
= 2).
toSusbract
steigt 1 so toSusbract
= 2.
... Prozess wird fortgesetzt, ...
toSubstract
wird größer als 59, so wird es
time
Anschläge auf 0 eingestellt sein 9.
Die Sprache wird verarbeitet. Beachten Sie das Tag [tag: processing]. –