Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
--- while Schleife (http://www.informatikerboard.de/board/thread.php?threadid=201)


Geschrieben von Celtic_Princess am 29.05.2007 um 11:45:

  while Schleife

Komme da bei einer Funktion nicht weiter:

Schreiben sie eine Funktion namens kgv, der sie zwei Zahlen übergeben, und die dann das kleinste gemeinsame Vielfache der beiden Zahlen zurückgibt.
Bsp: Das kgv von 11 und 13 ist 143.

So und nun die Funktion:

int kgv(int x, int y)

int a;
if(x>y)
a=x;
else
a=y;

while((a%x) oder (a%y))
a++;

return(a);

Das oder sollen diese zwei senkrechten Striche sein, die Taste funktioniert nur nicht.

Das Problem ist ich verstehe das oder bei while einfach nicht, denn ich hätte da && geschrieben, denn es soll ja beides durch die Zahl teilbar sein. Warum muss das denn oder heissen?



Geschrieben von Crotaphytus am 29.05.2007 um 15:35:

 

a%x gibt 0, wenn a durch x teilbar ist. Das heißt, die Bedingung ergibt true, wenn a nicht durch x oder nicht durch y teilbar ist. Was genau das gewünschte Verhalten ist.

Nur sonderlich schnell dürfte die Funktion nicht sein... Augenzwinkern


Forensoftware: Burning Board, entwickelt von WoltLab GmbH