Fakultaet berechnen.. eigentlich ganz easy...



  • r0nny schrieb:

    als erstes solltest du dir mal nen brauchbaren compiler holen

    msvc 6 ist broken und sollte nicht verwendet werden

    Was ist denn mit dem VS6 Compiler ? Ich benutzer die Enterprise Version und ich erzeuge kleinere und schnellere Compilate wie mit der Express Version von 2005.

    Immer wieder lese ich, dass dier Compiler Schrott sein soll, aber keiner konnte bisher sagen warum. Nur weil es neuere Versionen gibt, muss der alte nicht zwangsläufig schlecht sein.

    Mfg



  • Er unterstützt den C++-Standard nicht in vollem Umfang.
    Es gibt mehrere Bugs in der CRT-Implementation.
    Der Compiler hat ettliche Bugs.
    Er produziert bei weitem kein optimalen Code.

    Und nur weil du mit dem VS05 nicht umgehen kannst, da können wir nichts dafür. VS05 legt standardmäßig mehr Wert auf Sicherheit als auf Geschwindigkeit, du kannst das aber jederzeit in den Einstellungen ändern.



  • Ich hab wirklich << und >> vergessen.



  • wiss0r schrieb:

    Er unterstützt den C++-Standard nicht in vollem Umfang.
    Es gibt mehrere Bugs in der CRT-Implementation.
    Der Compiler hat ettliche Bugs.
    Er produziert bei weitem kein optimalen Code.

    Und nur weil du mit dem VS05 nicht umgehen kannst, da können wir nichts dafür. VS05 legt standardmäßig mehr Wert auf Sicherheit als auf Geschwindigkeit, du kannst das aber jederzeit in den Einstellungen ändern.

    Entschuldige, aber was fühlst Du Dich denn jetzt angesprochen ? Ich habe nur etwas angesprochen und Du kommst gleich aus Deinem Loch gekrochen.
    Was sind denn das für Bugs ? Ich höre das immer wieder, aber nichts konkretes.

    Jetzt noch was in eigener Sache. Die C++ Community ist die unfreundlichste die ich jemals erlebt habe. In anderen Foren (für VB z.B.) ist der Umgangston ein ganz anderer. So und nun viel Spass beim flamen.



  • naja - höhere trollquote - das suckt

    technisch hat er aber recht - nur sowas wie das ganze höflich sagen muss anscheinend doch gelernt sein



  • Sunnyboy2004 schrieb:

    und die fakultaet von 1 ist 1, und die von 0 ist komischer weise auch 1 ?!?! hmmzz..

    Genau die gleiche frage hab ich mich auch gestellt!?
    Warum ist 0! = 1
    Hab dann mal nen bischen gegoogelt und nur herausgefunden, dass das "mathematisch so definiert ist". Bin aber eigentlich mit der Lösung nicht so zufrieden? Kann mir das jemand mal biddö erklären? 🙂



  • Was gibt es an "es ist so definiert" nicht zu verstehen? Etwas anderes als 1 macht ja auch keinen Sinn.



  • doch 0! = 0 macht für mich wesentlich mehr sinn

    2! = 2*1*danachkommtnixmehr
    1! = 1*danachkommtnixmehr
    0! = danachkommtnixmehr

    das is irgendwie für mich logisch^^ Entweder gar keine Lösung oder 0, aber warum denn 1 😕

    lolz schrieb:

    Was gibt es an "es ist so definiert" nicht zu verstehen? Etwas anderes als 1 macht ja auch keinen Sinn.

    Einfach alles so hinzunehmen is nich so mein Ding^^ Aber 1 macht genausowenig Sinn wie alles andere auch



  • Ok, dann nehmen wir !0 = 0

    !5 = 5*!4
    !4 = 4*!3
    !3 = 3*!2
    !2 = 2*!1
    !1 = 1*!0
    !0 = 0
    => 5*4*3*2*1*0=0 damit wäre jede Fakultät 0, also macht !0 = 1 doch Sinn, oder nicht 🙂



  • lolz schrieb:

    Ok, dann nehmen wir !0 = 0

    !5 = 5*!4
    !4 = 4*!3
    !3 = 3*!2
    !2 = 2*!1
    !1 = 1*!0
    !0 = 0
    => 5*4*3*2*1*0=0 damit wäre jede Fakultät 0, also macht !0 = 1 doch Sinn, oder nicht 🙂

    Hmm, das klingt sehr logisch 😃
    vielen dank 😃



  • da hab ich ja wieder was angefangen.. hehe!

    nee echt cool, hier, habe auf jeden fall was gelernt heute 🙂

    aber das mit 0=1 raff ich trotzdem nich, hab heute den lehrer gefragt, kann er auch nich sagn is halt so... naja!

    danke danke 😉

    mfg



  • Michael Mittermeier schrieb:

    ...wie man in Bayern halt argumentiert: Weil's halt so is'!



  • Sunnyboy2004 schrieb:

    ...
    aber das mit 0=1 raff ich trotzdem nich...

    Also "0=1" hat niemand behauptet.

    0!=1 schon;
    (man darf natürlich das "!" nicht weglassen; aber das ist nichts Neues: Bei "1+1 = 2" darf man auch nicht einfach das "+ 1" weglassen und erwarten, dass die Aussage noch stimmt)

    Falls immer noch unklar:
    Weil man es leid war, immer "1*2*3*4*5*6" zu schreiben (und man in der Mathematik gerne auch mal was über "alle" aussagen möchte), hat man als Abkürzung einfach definiert: "Nennen wir das mal 'Fakultät', schreiben '!' und definieren:
    Allgemein gilt:
    (N+1)! = (N+1) * N!; für alle natürlichen Zahlen (0,1,2, ....)
    und 0! = 1;

    Letzteres ist notwendig, um den Anfang zu definieren (auch nicht neu: Wenn Dir jemand ein Sparbuch gibt, reicht Dir auch nicht aus, Zinssatz und Laufzeit zu kennen, sondern das Startkapital ist schon immmens wichtig).

    Gruß,

    Simon2.



  • Hab mir das ganze nochmal durch den Kopf gehen lassen.
    Für die Fakultät gilt ja
    n! = n *(n-1)!

    wenn ich also die Fakultät von null berechnen will wäre das aber
    0! = 0 *(-1)!

    Wäre totaler schwachsinn. deshalb ergänzt man die Formel ja:
    n! = n *(n-1)! n>0

    Aber wenn das gilt, darf man nicht so argumentieren wie das lolz gemacht hat.

    lolz schrieb:

    !5 = 5*!4
    !4 = 4*!3
    !3 = 3*!2
    !2 = 2*!1
    !1 = 1*!0
    !0 = 0

    Der letzte Schritt wäre also n=0, aber
    0==0
    und damit nicht größer als 0. Das heißt irgendwie geht die ganze Formel ja nich auf, weil bei jeder Fakultät irgendwann
    1! = 1*0! rauskommt
    Deshalb wird man wohl gesagt haben, dass 0! = 1 ist sonst stimmt die Formel nicht. Jetzt bleiben nun zwei möglichkeiten offen.

    1. Man legt einfach fest, dass 1! = 1 ist (ist mir logisch).
    2. Man legt einafch fest, dass 0! = 1 ist (ist mir immernoch unlogisch und scheint mir willkürlich definiert worden zusein).
    3. Man sagt, dass die Formel n! = n*(n-1)! falsch ist.

    Da ich ja eigentlich skeptisch bin, aber jetzt nich behaupten will dass die Formel die solange richtig war falsch ist, streiche ich einfach mal möglichkeit 3.
    Aber warum definiert man nicht einfach
    n! = n*(n*1) für n>=1
    und sagt, dass für negative, nicht ganze Zahlen und 0 die Fakultät nicht definiert ist. 😕

    Irgendwie kann ich mich mit !0 = 1 nicht abfinden, obwohl mir das eigentlich auch scheißegal ist und es ist sowieso nur ein Sonderfall, der eigentlich nirgends auftaucht!?
    Trotzdem ist mir meine Erklärung, dass es einfach keine Fakultät aus 0 gibt logischer! 🙂



  • Du hast recht, es ist "willkürlich" definiert worden, abgesehen davon, dass das willkürlich so nicht stimmt.
    Ich habe hier nicht falsch argumentiert, ich hab die allgemeine Definition von !0 = 1 in !0 = 0 geändert und dir die Fakultät von 5 niedergeschrieben.
    Allgemein gilt !0 = 1, wenn du aus welchem Grund auch immer !0 = 12 brauchst, dann kannst schreibst du deine Neudefinition der Fakultät einfach vor deine Rechnungen und jeder weiß was du tust, wenn er das liest.



  • Und was sagst du zu der Definition von 00=1?



  • lolz schrieb:

    Und was sagst du zu der Definition von 00=1?

    Hmm bei 0^0 gibt mein Taschenrechner erstmal lecker "ERROR 2" aus^^
    Hab heut aber irgendwie nich den Nerv über so Sachen nachzudenken. Finde es aber interessant ma sowas anzusprechen 🙂



  • Weedjo schrieb:

    ...
    Für die Fakultät gilt ja
    n! = n *(n-1)!
    ...

    Nö.

    Wenn Du die Fakultät definierst als:
    (n+1)! = (n+1) * n!
    Für alle n aus N (= Natürliche Zahlen) und dem Startwert "0! = 1", hast Du das Pseudoproblem, das Du konstruierst, gar nicht.
    Außerdem sehe ich nicht, wieso Du den einen Teil der Fakultätsdefinition akzeptierst, den anderen ("0!=1") aber nicht...

    Insgesamt scheinst Du aber Deine Rolle als "mathematisch Lernresistenter" zu genießen, so daß es hier sowieso keinen Zweck hat, weiterzumachen.

    Gruß,

    Simon2.



  • 0! = 1
    n! = n*(n-1)! für alle n > 0

    das ist ne Definition und die macht Sinn so. Man hätte auch definieren können

    0! = 0
    1! = 1
    n! = n*(n-1)! für alle n > 1

    aber dann wären einige Sätze nur sehr unbequem zu formulieren.



  • Weedjo schrieb:

    Hab dann mal nen bischen gegoogelt und nur herausgefunden, dass das "mathematisch so definiert ist". Bin aber eigentlich mit der Lösung nicht so zufrieden? Kann mir das jemand mal biddö erklären? 🙂

    Du kannst immer definieren was du willst, solange es nicht in sich widersprüchlich ist. Es wär nur schön, wenn es auch ansonsten auch irgendwie nützlich oder sinnvoll ist. 0! setzt man deshalb auf 1, weil die 1 das neutrale Element der Multiplikation ist, d.h. es ist immer x * 1 = x. So wie man mit 0 beginnt, wenn man eine Reihe von Zahlen aufsummiert -- und folglich 0 erhält, wenn es gar keine Zahlen zum aufsummieren gibt, fängt man bei Produkten eben mit 1 an. Gibt es dann keine Zahlen zum aufmultiplizieren, bleibt die 1 stehen.
    Ansonsten passt 0! = 1 auch ganz gut zu den üblichen Anwendungen, mir fällt grad Kombinatorik und die Taylorentwicklung ein. Würde man 0! = 0 definieren, müsste man überall mit Spezialfällen arbeiten.

    Bei 0 hoch 0 ist es nun nicht ganz so einfach, da gibt es meines Wissens zwei konkurrierende Definitionen, die beide in ihrem Gebiet sinnvoll sein können. Im Zweifelsfall muss man da immer vorher abklären, wie man das definiert.


Anmelden zum Antworten