Querprodukt in C
-
Was ist eigentlich das Querprodukt von 0? (Und was ist eine „ganzheitliche“ Zahl?)
-
Das Querprodukt von 0 ist natürlich 0.
-
Und was gibt volkards Algorithmus für 0 aus?
-
Wisst ihr wie man eine Schleife für das iterierte Querprodukt einbauen kann? Ich scheiter hier kläglich...
Und volkards Algorithmus gibt 1 für das Querprodukt von 0 aus.
-
Spaddel schrieb:
Das Querprodukt von 0 ist natürlich 0.
Mist. Und ich habe noch gezweifelt, als ich da "while" getippt hatte.
-
Wobei die Frage bleibt, ob das Querprodukt für 0 überhaupt definiert ist. Je nach Definition gehts dabei nämlich um "positive number", "natürliche Zahl" (wobei nicht klar gestellt ist ob N oder N0) etc.
-
Und wie ist es bei Zahlen mit 0 drin definiert? Ergebnis sofort 0 oder ist man da großzügig wie bei Produktreihen und ignoriert endlich viele Nullen?
-
Laut http://de.wikipedia.org/wiki/Querprodukt ist das Ergebnis dann 0.
Und daher würde ich das Querprodukt von 0 auch als 0 definieren.
-
ich hab den code von volkard benutzt und abgesehen davon, dass die Quersumme von = 1 ausgibt hab ich noch bei ein paar zahlen, die ich einfach so eingegeben habe komische ergebnisse.
So ist z.B. die quersumme von 4.765.367.436 = 0 (hab ich natürlich ohne . eingegeben)
und die quersumme von 8.323.256.845 ist -4.148.928hat irgendwer eine idee, woran das liegen kann? vll. daran, dass die bibliothek nur von 36 tausend irgendwas bis - 36 tausend irgendwas geht?
-
Die von dir genannten Zahlen passen nicht in einen int rein. Lass sie dir direkt nach der Zuweisung mal anzeigen. Und achte demnächst auf die Warnungen, die dein Compiler dir gibt.
-
Michael E. schrieb:
Die von dir genannten Zahlen passen nicht in einen int rein. Lass sie dir direkt nach der Zuweisung mal anzeigen. Und achte demnächst auf die Warnungen, die dein Compiler dir gibt.
danke für das mit dem int. da hab ich gar nicht dran gedacht.
was für warnungen hätte mein compiler denn ausspucken sollen? er hat mir nämlich gar nichts gesagt.
-
Meiner sagt z.B.
1>main.cpp(1409): warning C4305: 'Initialisierung': Verkürzung von '__int64' in 'int'
1>main.cpp(1409): warning C4309: 'Initialisierung': Verkürzung eines konstanten WertesWie sieht denn deine Definition genau aus? Und was ist dein Compiler-Output? Welchen Compiler benutzt du? Ist schon ungewöhnlich, dass der nix sagt.
-
ich hab mingw...
was meinst du mit "wie sieht deine defnition aus?" wenn ich die o.g. zahlen im shell in scanf eingebe, spuckt er einfach die anderen o.g. zahlen aus. sonst steht da nichts...
-
Zeig mal deinen kompletten Code.
-
hab ich schon die Querprodukt herausfinden.
Und wie kann ich eigentlicht die Querprodukt wieder in dieser
for schleife einsetzen,also wieder rechnen,
um bis einzahliger Zahl zu erreichen?
-
looser schrieb:
hab ich schon die Querprodukt herausfinden.
Und wie kann ich eigentlicht die Querprodukt wieder in dieser
for schleife einsetzen,also wieder rechnen,
um bis einzahliger Zahl zu erreichen?do-while-Schleife drum und als Bedingung (Quersumme > 10) nehmen.
Und noch eine paar Zuweisungen.
-
Th69 schrieb:
Laut http://de.wikipedia.org/wiki/Querprodukt ist das Ergebnis dann 0.
Und daher würde ich das Querprodukt von 0 auch als 0 definieren.Das kann ich aus der Wikipedia-Seite so jetzt nicht rauslesen. Wo steht das?
-
SG1 schrieb:
Th69 schrieb:
Laut http://de.wikipedia.org/wiki/Querprodukt ist das Ergebnis dann 0.
Und daher würde ich das Querprodukt von 0 auch als 0 definieren.Das kann ich aus der Wikipedia-Seite so jetzt nicht rauslesen. Wo steht das?
Na ja, diesen Satz halte ich für recht eindeutig:
Zwischen diesen Zacken fällt q(n) immer wieder auf 0; nämlich immer dann, wenn in n mindestens eine Ziffer 0 ist.
Bei der Zahl 0 ist mindestens eine Ziffer 0.
-
Ich habe hier noch keine rekursive Version gesehen. Von daher...
int querprodukt(int z) { return z<10 ? z : querprodukt(z/10)*(z%10); }
-
hallo, kann mir einer ne lösung zeigen wie man in c das iterierte querprodukt programmiert?
mfg Maurice