Pages: [1]   Go Down
Author Topic: Überprüfen ob Zahl ganzzahlig teilbar ist?  (Read 2389 times)
0 Members and 1 Guest are viewing this topic.
Dresden / Germany
Offline Offline
Sr. Member
****
Karma: 4
Posts: 451
Entwicklungsklaus
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset


Hallo, ich habe Werte von 0-x. Also 0,1,2,3,4,.....

Ich möchte auf diese Wertreihe 3 verschiedene Events mappen.

Das würde bedeuten das eine Funktion zum beispiel bei 3,6,9 etc. ausgeführt wird,
eine andere bei 2,4,6 usw.

Meine Idee war nun den Wert einfach zu teilen, wenn etwas Ganzzahliges herauskommt, kann ich den Rückschluß ziehen, und die entsprechende Funktion starten.

Aber wie überprüfe ich auf ein ganzzahliges Errgebnis? Stehe da gerade etwas auf dem Schlauch.

Alternativvorschlag wäre auch willkommen.

Lieber Gruß
Chris

Logged

Sturmfabrik - mediale Dienstleistungen
www.sturmfabrik.de

Weinsberg, Germany
Offline Offline
God Member
*****
Karma: 3
Posts: 773
A Coder's Tale
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Würde was in der Gegend versuchen:
Code:
int x;
[...]
if (x/3.0 == x/3) {
Logged

0
Offline Offline
Newbie
*
Karma: 1
Posts: 15
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

es müsste auch mit dem Befehl Modulo (%) gehen

Beispiel aus: Examples -> Button State Change Detection

 // turns on the LED every four button pushes by
  // checking the modulo of the button push counter.
  // the modulo function gives you the remainder of
  // the division of two numbers:
  if (buttonPushCounter % 4 == 0) {
    digitalWrite(ledPin, HIGH);
  } else {
   digitalWrite(ledPin, LOW);
  }


Gruß
Harald
Logged

Weinsberg, Germany
Offline Offline
God Member
*****
Karma: 3
Posts: 773
A Coder's Tale
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hast Recht, ist einfacher!  smiley-red

Code:
if (buttonPushCounter % 4) {
  // buttonPushCounter/4 != 0
} else {
  // buttonPushCounter/4 == 0
}
Logged

Dresden / Germany
Offline Offline
Sr. Member
****
Karma: 4
Posts: 451
Entwicklungsklaus
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ui, das geht hier fix....

OOOhhh, das sieht gut aus... ich finde sowas gehört auch in die Referenz... egal....

ARG!!! Ich nehme alles zurück!!!!! Ist ja in der Referenz!!!
smiley-wink


...ich probiers gleich mal aus....

Danke!!!!

Lieber Gruß
Chris

PS: Würde denken, das ein Modulo von 2 auch bei 4 oder 6 feuert,
ein Modulo von 3 aber auch bei 6. Das würde sich dann doppeln...

mmh.... ausprobieren....
« Last Edit: February 01, 2011, 08:34:26 am by ChrisS » Logged

Sturmfabrik - mediale Dienstleistungen
www.sturmfabrik.de

Munich/Germany
Offline Offline
God Member
*****
Karma: 11
Posts: 643
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In Deiner ursprünglichen Frage ging es aber nur um die Unterscheidung zwischen geraden und ungeraden Zahlen. Und da reicht % 2.
Logged

_______
Manfred

Dresden / Germany
Offline Offline
Sr. Member
****
Karma: 4
Posts: 451
Entwicklungsklaus
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Danke, ich bin schon etwas weiter, und es funktioniert suuuuper! smiley

Lieber Gruß
ChrisS
Logged

Sturmfabrik - mediale Dienstleistungen
www.sturmfabrik.de

Pages: [1]   Go Up
Jump to: