Entwickler-Ecke
C# - Die Sprache - Modulo
FrickelEgon - Do 16.03.17 14:52
Titel: Modulo
Ich habe da ein Verständnis Problem, muss auch gleich dazu sagen das ich mit C# nicht arbeite.
Es geht um dieses Stück C# Code...
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| private uint GCD(uint a, uint b) { if (a == 0) return b; if (b == 0) return a;
if (a > b) return GCD(a % b, b); else return GCD(a, b % a); } |
Was ich nicht verstehe ist das Modulo was dort in klammern steht (a % b, b) bzw. (a, b % a).
Danke schon mal.
Moderiert von Christian S.: Code- durch C#-Tags ersetztModeriert von Christian S.: Topic aus Alle Sprachen - Alle Plattformen verschoben am Do 16.03.2017 um 13:58
Ralf Jansen - Do 16.03.17 14:57
Es ist ein rekursiver Methodenaufruf. Das Ergebnis der Modulo Operation ist dann einfach der Wert einer der beiden Parameter deines rekursiven Aufrufs der GCD Methode.
FrickelEgon - Do 16.03.17 15:26
Sorry, ich habe die frage nicht richtig gestellt. Mir ist das Ergebnis nicht klar, wie kommt das zustande? Wird wahrscheinlich was total simples sein, ich weiß nur nicht was.
Als Beispiel, a=6500, b=5000 Ergebnis vom Code ist 500. Also mir fehlt schlicht die Grundlage wie das Ergebnis zustande kommt. 6500 Modulo 5000 ergibt auf meinem Taschenrechner 1500, wieso kommt beim Code also 500 raus?
FrickelEgon - Do 16.03.17 15:38
Jetzt verstehe ich, tausend Dank!
Ich war vorher komplet auf dem Holzweg.
Danke, und glückwunch zum 4000ten Beitag. :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!